1. Skip to Menu
  2. Skip to Content
  3. Skip to Footer

Лекція 2 - Вивід даних на PHP та MySQL

Встановити з'єднання з сервером MySQL - mysql_connect()
Вибір бази даних - mysql_select_db ()
Закриття з'єднання з сервером MySQL - mysql_close()
Звертання із запитами до баз даних - mysql_query ()
Вивід кирилиці
Таблиця для виводу у веб-сторінку
Код програми виводу у веб-сторінку
Код допоміжного файлу підключеня бази даних shopLog.php
Результат

 

Встановити з'єднання з сервером MySQL - mysql_connect()

Загальна послідовність дій при взаємодії з сервером MySQL виглядає так:
Встановити з'єднання з сервером MySQL. Якщо спроба завершується невдачею, вивести відповідне повідомлення і завершити процес.
Вибрати базу даних сервера MySQL. Якщо спроба вибору завершується невдачею, вивести відповідне повідомлення і завершити процес. Допускається одночасне відкриття декількох баз даних для обробки запитів.
Обробити запити до обраної бази.
Після завершення обробки запитів закрити з'єднання з сервером баз даних.
Функція mysql_connect() встановлює зв'язок з сервером MySQL. Синтаксис функції mysql_connect ():

 

  
int mysql_connect ([string хост [: порт] [:/ шлях / / до / сокету]
              [, string ім'я користувача] [, string пароль])

У параметрі хост передається ім'я хостового комп'ютера, вказане в таблицях привілеїв сервера MySQL. Звичайно, воно ж використовується для перенаправлення запитів на web-сервер, на якому працює MySQL, оскільки до сервера MySQL можна підключатися у віддаленому режимі. Поряд з ім'ям хоста можуть зазначатися необов'язкові параметри - номер порту, а також шлях до сокета (для локального хоста). Параметри ім'я_користувача і пароль повинні відповідати імені користувача і паролю, заданим в таблицях привілеїв MySQL. Зверніть увагу: всі параметри є необов'язковими, оскільки таблиці привілеїв можна налаштувати таким чином, щоб вони допускали з'єднання без перевірки. Якщо параметр хост не заданий, mysql_connect () намагається встановити зв'язок з локальним хостом.
Приклад відкриття з'єднання з MySQL:

  	
@mysql_connect(" local host", "web", "4tf9zzzf")
                    or die("Could not connect to MySQL server!");

В даному прикладі localhost - ім'я комп'ютера, web - ім'я користувача, а 4tf9zzzf - пароль. Знак @ перед викликом функції mysql_connect () пригнічує всі повідомлення про помилки, що видаються при невдалій спробі підключення, - вони замінюються повідомленням, зазначеним при виклику die (). Зверніть увагу: значення, що повертається при виклику rnysql_connect (), в даному прикладі не використовується. Якщо в програмі використовується лише одне з'єднання з сервером MySQL, це цілком нормально. Але якщо програма встановлює з'єднання з декількома серверами MySQL на різних хостах, слід зберегти ідентифікатор з'єднання, що повертається при виклику mysql_connect (), щоб адресувати наступні команди до потрібного сервера MySQL. Наприклад:

$ link1 = @ mysql_connect ("www.somehost.com", "web", "abcde") 
                                       or die ("Could not connect to MySQL server! ");
$ linkl = @ mysql_connect ("www.someotherhost.com", "usr", "secret")
                                        or die ("Could not connect to MySQL server! "); 

Ідентифікатори $ link1 і $ link2 передаються при наступних зверненнях до баз даних із запитами.

Синтаксис функції mysql_select_db ():

int mysql_select_db (string імя_бази_данних [, int ідентіфікатор_з’єднання])

Параметр імя_бази_данних визначає обрану базу даних, ідентифікатор якої повертається функцією mysql_select_db (). Параметр ідентіфікатор_ з’єднання необов'язковий лише при одному відкритому з'єднанні з сервером MySQL. За наявності декількох відкритих з'єднань цей параметр повинен вказуватися.
Приклад вибору бази даних функцією mysql_select_db ():

@ Mysql_connect ("localhost", "web". "4tf9zzzf")
                      or die ("Could not connect to MySQL server!");
@ Mysql_select_db ("company")
                      or die ("Could not select company database!");

Якщо в програмі вибирається тільки одна база даних, зберігати її ідентифікатор не обов'язково. Однак при виборі декількох баз даних ідентифікатори зберігаються, щоб можна було послатися на потрібну базу при обробці запиту. Якщо ідентифікатор не вказаний, використовується остання вибрана база даних.

Закриття з'єднання з сервером MySQL - mysql_close()

Після завершення роботи з сервером MySQL з'єднання необхідно закрити. Функція mysql_close() закриває з'єднання, яке визначається необов'язковим параметром. Якщо параметр не заданий, функція mysql_close () закриває останнє відкрите з'єднання. Синтаксис функції mysql_close ():

int mysql_close ([int ідентіфікатор_ з’єднання])
  

Звертання із запитами до баз даних - mysql_query ()

Функція mysql_query () забезпечує інтерфейс звертання із запитами до баз даних. Синтаксис функції mysql_query ():

int mysql_query (string запит [, int ідентіфікатор_ з’єднання])

Параметр запит містить текст запиту на мові SQL. Запит передається або з'єднанню, обумовленому необов'язковим параметром ідентіфікатор_ з’єднання, або, за відсутності параметра, останньому відкритому з'єднанню.

Вивід кирилиці

Перевірити за допомогою phpMyAdmin що всі таблиці в базі даних встановлені в utf8_unicode_ci
У PHP коді після з'єднання з базою даних mysql_connect ('server', 'username', 'pass') | | die; потрібно вказати mysql_query ('SET NAMES utf8');
Переконатися, що перед виведенням інформації в PHP скрипті встановлено header ("Content-Type: text / html; charset = UTF-8");
Переконатися, що метатег встановлений в правильному кодуванні:
< meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

Таблиця для виводу у веб-сторінку

 

Таблиця Shop

Лекція 2 - Вивід даних на PHP та MySQL

Код програми виводу у веб-сторінку

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<?php
header("Content-Type: text/html; charset=UTF-8");
require_once 'shopLog.php';
$title="Інформація про товари";
echo "<center> Відомість: <b>".$title."</b></center><br>";

$db_server = mysql_connect($db_hostname , $db_username, $db_password);
mysql_query('SET NAMES utf8');
//echo "Програма дає connect!<br>";
 if (!$db_server) 
        die("Неможливо підключитися до MySQL:  "  . mysql_error());
mysql_select_db($db_database, $db_server ) 
              or die ('Can\'t use $db_database : ' . mysql_error());
//echo "Програма дає database!";

$query = "SELECT * FROM shop";
$result = mysql_query($query);
if (!$result) 
        die ("Збій при доступі до бази даних:  "  . mysq1_error());
$x = 0;
print "<center>";

print "<table border=\"1\" >\n";
print "<tr>\n<th>Product ID</th><th>Product
                  Name</th><th>Product Price</th>\n</tr>\n";
while ($row = mysql_fetch_array($result)) :
print "<tr>\n";
print "<td>".$row["id"].
      "</td>\n<td><center>".$row["name"].
          "</center></td>\n<td>" .$row["price"]. "</td>\n";
print "</tr>\n";  
endwhile; 

print "</table>";
print "</center>";
mysql_close( ); 
?>
</body>
</html>

Код допоміжного файлу підключеня бази даних shopLog.php

<?php // login.php 
$db_hostname = "localhost"; 
$db_database = "example"; 
$db_username = "root";
$db_password = ""; 
?>

Результат

Лекція 2 - Вивід даних на PHP та MySQL

За матеріалами джерела:
РHP и базы данных.//http://php.ua/bookphp/11.html

Меню

  •  Facebook 

Обрати мову

Хто на сайті

На сайті 166 гостей та відсутні користувачі