Помогни ни да направим Uroci.net по - богат! Добави урок

PHP - част 10 (Използване на MySQL)

PHP » PHP
fix3d   трудност:    видян: 19739


Свързване с базата данни
Основната идея на един WEB сайт базиран на база данни е, че информацията, която се визуализира в Web сайта, се съхранява на сървър за база данни. Тази информация след това се извлича динамично от сървъра и се показва в Web страницата. Тези динамични Web страници после могат да се разглеждат със всеки браузър.

Потребителите въвеждат адреса на Web страницата във техните браузъри. Тази информация се изпраща към Web сървъра, която я представя на сървъра за база данни под формата на заявка. Сървъра за база данни връща резултата отново към Web сървъра, който форматира информацията в HTML формат и я визуализира в браузъра.

Преди обаче да можете да осъществите връзка между база данни на MySQL и Web страница, трябва да се научите как да се свързвате с MySQL. PHP представя вградени функции за извършване на тази връзка. Функцията се нарича mysql_connect().

Функцията mysql_connect() се използва за осъществяване на връзка с база данни на MySQL. Тази функция също така приема определени параметри, които определят кой може да се свърже с базата данни и коя е базата. Функцията връща резултат, който указва, дали връзката е била осъществена. Тази стойност се съхранява в променлива, позната под името идентификатор на връзката. Този идентификатор се използва вътрешно от PHP за проверка дали връзката е била осъществена. Ако се извършат множество връзки към една база данни чрез функцията mysql_connect(), само първото извикване на функцията осъществява физическа връзка.

Синтаксисът на функцията е следния:

$connect = mysql_connect(<адрес>, <идентификатор на потребител>, <парола>);

Функцията приема три параметъра. Те имат следното значение:

Адрес Параметърът адрес съдържа IP адреса или името на хоста, на който е инсталиран сървърът. Можете да зададете като адрес localhost, ако MySQl се намира на същия компютър, на който е Web сървъра.
Идентификатор на потребител Този параметър съдържа потребителското име на потребител, който има право на достъп до базата данни. Този идентидикатор трябва да съществува на сървара MySQL и трябва да има подходящите права.
Парола Този параметър задава паролата, съответстваща на идентификатора на портебителя. Паролата се използва за да осигури, че само оторизирани личности ще имат достъп до базата. КОгато този параметър не е зададен, се приема че паролата е празна.
#Connect Променливата $connect е идентификаторът на връзката. Тази променлива съдържа стойност True, ако връзката е осъществена

<?php
$connection = mysql_connect ("localhost", "root", "")
or die ("Не може да се осъществи връзка със сървара");

echo "Идентификацията е Успешна";
?>

В горния код се осъществява връзка към сървъра MySQL, като се използва идентификаторът root. Адресът е localhost, защото Web сървърът и MySQL се намират на един компютър. Потвърждение за това, че връзката е била осъществена успешно, се съхранява в променливата $connection.


Създаване на база данни в MySQL

Функцията mysql_create_db() се използва за създаване на база данни в MySQl.
Тя има следния синтаксис:

$createtable = mysql_create_db($dbname);

Променливата $dbname съдържа името на базата данни, която трябва да се създаде, а променливата $createtable съдържа резултатът от опита за създаване на база.

Следващият код създава база с името Mytestbd:
<?php

$connection = mysql_connect ("localhost", "root", "")
or die ("Не може да се осъществи връзка със сървара");

$createdb = mysql_create_db("Mytestbd")
or die ("Не може да се създаде база данни");

echo "Базата данни е създадена успешно";

?>


В горноя код се осъществява връзка с MySQL чрез функцията mysql_connect(). След това се задава базата данни Mytestbd на сървара MySQL с помоща на функцията mysql_create_db(). Потвърждение за това дали базада е създадена успешно се съхранява в променливата $createdb.


Избиране на база данни

След като сте създали база данни с PHP, или ако базата вече съществува в MySQL, можете да добавите таблици и да внъкнете запис в базата данни. Преди да започнете работа с нея, трябва да я изберете или да осъществите достъп до нея. PHP предоставя функцията mysql_select_db() за избиране на база в MySQL
Функцията има следния синтаксис:

$connect = mysql_select_db($dbname);

В горния код името на базата данни се предава като аргумент на функцията. Функцията връща стойност в променливата $connect, потвърждаваща дали базата данни е създадена успещно. Ако стойността е True, то базата е била успешно избрана. Някой от случайте, в който е върната стойност False, са:
Базата данни не съществува на сървъра
Базата данни е заключена от друг разработчик. Ако множество потребители се опитват да осъществят достъп до една база данни и ако някой от тях вече заключи сотъпа до нея, тогава другите потребители ще получат съобщение за грешка.

<?php

$connection = mysql_connect ("localhost", "root", "")
or die ("Не може да се осъществи връзка със сървара");

$result = mysql_select_db("Mytestbd")
or die ("Не може да се изберете базата данни");

echo "Базата данни е избрана успешно";

?>



Създаване на таблица в база данни

При базата данни, за разлика от текстовия файл, трябва да създадете първо таблица, в която да вмъквате запис. Не може да се записва в базата данни, ако няма нито една таблица. Чрез следния код ще създадете таблица Maildata ( Адресанти ). После ще вмъкнете запис в нея.

<?php

$connection = mysql_connect ("localhost", "root", "")
or die ("Не може да се осъществи връзка със сървара");

$result = mysql_select_db("Myailinglist")
or die ("Не може да се изберете базата данни");

$sqlquery = "create table if not exist Maildata (
Name varchar (50) Not NULL,
Email varchar (50) Not NULL Primary key,
Secondaryemail varchar (50) Not NULL
");


$queryresult = mysql_query($sqlquery)
or die ("Заявката не може да се изпълни");

echo "Таблицата Maildata в базата данни Mailinglist е създадена успешно.";

?>


След свързването с MySQL, се осъществява достъп до базата данни Mailinlist, в горния код се създава таблица с име Maildata чрез функцията create table(). Таблицата има три полета: Name, Email, Secondaryemail. Типът на всички полета е varchar и ви позволява да съхраните до 50 символа във всяко поле. Нито едно от полетата не може да бъде празно, и първичният ключ в таблицата е полето Email. Това означава, че полетата ще съдържат уникални стойности. Поради тази причина двама човека, имащи едни и същи email адреси не могат да се включат в базата едновременно. Индикацията за това дали заявката е била успешна се съхранява в променливата $queryresult.


Страници: 1 2 3 »

Коментари (1)

alexiliev на 26.07 2008 в 16:42ч.
Грешка

MySQL отговори:

Can't connect to MySQL server on 'localhost' (10061)

помощ, какво да правя?

Регистрирайте се, за да добавите коментар


Калдейта ЕООД - © 2003-2010. Всички права запазени.
Препоръчваме: Национален Бизнес | Bomba.bg | IT Новини | Диплома.бг | TRAVEL туризъм | Реферати | AmAm.bg | Иде.ли | Курсови работи | Фото Форум | Spodeli.net | Фото-Култ | Atol.bg | Elmaz.com | MobileBulgaria.com | Казанлък.Com