Home » 2014 » Октомври » 7 » Урок №4 Свързване на база данни с PHP
11:19 PM
Урок №4 Свързване на база данни с PHP

Предимства на PHP:

MySQL е добре адаптиран за много езици за програмиране като например  PERL, C, C++, JAVA,PHP и други.. Но от всички тези езици за програмиране MySQL работи най-добре с PHP поради изключителните способности на PHP за уеб-обработка.. Именно поради тази причина ще ползваме PHP в повечето от уроците ни с някои малки изключения.. Това далеч не е единственото предимство на PHP от уроците по PHP вече знаете за функциита include,require,логическите оператори и други..Но за другите качества на PHP относно MySQL връзката с база данни ще говорим по нататък..


Какво трябва да знаете за връзката на база данни в PHP?

  1. <?php
  2. //Тук се съдържа информацията за вашата база данни
  3. $host = "localhost";   //Сървъра на който се намира (localhost
  4. по подразбиране)
  5. $dbpass = "dbpass";   //Паролата
  6. $dbuser = "dbuser";   //Потребителското име
  7. $dbname = "dbname";   //Името на базата данни 
  8. //Свързването  с mySQL
  9. mysql_connect("$host", "$dbuser", "$dbpass")
  10. or die("Грешка");
  11. mysql_select_db("$dbname")
  12. or die("Грешка");
  13. ?>

Както виждате кода е повече от прост и все пак ще обърнем внимание на полетата в които начинаещите програмисти често изпитват затруднения.

  • "localhost" - сървъра на който се намира базата с данни (localhost по подразбиране)
  • "dbpass" - Парола на базата данни
  • "dbuser" - Потребителско име (Ако е зададено такова)
  • "dbname" - Име на базата данни която искате да свържете с PHP

Извадка от кода : 

  1. mysql_connect("$host", "$dbuser", "$dbpass")
  2. or die("Грешка");
  3. mysql_select_db("$dbname")
  4. or die("Грешка");
  5. ?>

Това са вече познатите ви от уроците ни по php логически оператори тук те задават условие, че 3 елемента трябва да присъстват с ("$host","$dbuser",$dbpass") и с "or die("Грешка");" те задават, че ако условието тоест наличието на тези 3 елемента не бъде спазето, скрипта да бъде прекратен със съобщение грешка.

Добавяне на информация в базата данни

  1. <?php
  2. //Тук се съдържа информацията за вашата база данни
  3. $host = "localhost";   //Сървъра на който се намира (localhost
  4. по подразбиране)
  5. $dbuser = "dbuser";   //Потребителското име
  6. $dbpass = "dbpass";   //Паролата
  7. $dbname = "dbname";   //Името на базата данни 
  8. //Свързването  с mySQL
  9. mysql_connect("$host", "$dbuser", "$dbpass")
  10. or die("Грешка");
  11. mysql_select_db("$dbname")
  12. or die("Грешка");
  13. //Добавянето
  14. $query = mysql_query("INSERT INTO таблица (поле1, поле2, поле3) VALUES ('нещо1', 'нещо2', 'нещо3')");
  15. $num = mysql_affected_rows($query); 
  16. if ($num) { 
  17. //Ако всичко е успешно извежда:
  18. echo "Успешно въведохте данните."; 
  19. }else { 
  20. //Ако въвеждането не е успешно  извежда:
  21. echo "Грешка! Въвеждането не е успешно."; 
  22. ?>

Обърнете внимание на частта от кода в червено нека поясним какво представлява това..

  • (поле1, поле2, поле3) са имената на полетата в които ще въвеждате информация.
  • ('нещо1', 'нещо2', 'нещо3') стойностите които въвеждате в съотверните полета.
  • mysql_affected_rows() с това проверяваме колко реда са въведени в таблицата

Извличане на информация от базата данни (Извлича всички редове от таблицата). 

  1. <?php
  2. //Тук се съдържа информацията за вашата база данни
  3. $host = "localhost";   //Сървъра на който се намира (localhost по подразбиране)
  4. $dbuser = "dbuser";   //Потребителското име
  5. $dbpass = "dbpass";   //Паролата
  6. $dbname = "dbname";   //Името на базата данни 
  7. //Свързването  с mySQL
  8. mysql_connect("$host", "$dbuser", "$dbpass")
  9. or die("Грешка");
  10. mysql_select_db("$dbname")
  11. or die("Грешка");
  12. //Изпълнение на заявката
  13. $query = mysql_query("SELECT * FROM таблица"); 
  14. //Изписване на информацията
  15. while($row = mysql_fetch_array($query)){ 
  16. echo " $row['поле1'] - $row['поле2'] - $row['поле3'] "; 
  17. }
  18. ?>

За извличане на един ред от таблицата

  1. $query = mysql_query("SELECT * FROM таблица WHERE поле1 = 'нещо1' "); 

Промяна на информацията от базата данни 

  1. <?php
  2. //Тук се съдържа информацията за вашата база данни
  3. $host = "localhost";   //Сървъра на който се намира (localhost по подразбиране)
  4. $dbuser = "dbuser";   //Потребителското име
  5. $dbpass = "dbpass";   //Паролата
  6. $dbname = "dbname";   //Името на базата данни 
  7. //Свързването  с mySQL
  8. mysql_connect("$host", "$dbuser", "$dbpass")
  9. or die("Грешка");
  10. mysql_select_db("$dbname")
  11. or die("Грешка");
  12. //Обновяването
  13. $query = mysql_query("UPDATE таблица SET поле1 = 'нещо1', поле2 = 'нещо2', поле3 = 'нещо3' ");
  14. $num = mysql_affected_rows($query); 
  15. if ($num) { 
  16. //Ако всичко е успешно извежда
  17. echo "Промяната премина успешно."; 
  18. } else { 
  19. //Ако е Не успешно извежда
  20. echo "Промяната не е успешна."; 
  21. }
  22. ?>

Изтриване на информацията от базата данни 

  1. <?php
  2. //Тук се съдържа информацията за вашата база данни
  3. $host = "localhost";   //Сървъра на който се намира (localhost по подразбиране)
  4. $dbuser = "dbuser";   //Потребителското име
  5. $dbpass = "dbpass";   //Паролата
  6. $dbname = "dbname";   //Името на базата данни 
  7. //Свързването  с mySQL
  8. mysql_connect("$host", "$dbuser", "$dbpass")
  9. or die("Грешка");
  10. mysql_select_db("$dbname")
  11. or die("Грешка");
  12. $query = mysql_query("DELETE FROM `таблица` WHERE поле1 = 'нещо1' ");
  13. $num = mysql_affected_rows($query); 
  14. if ($num) { 
  15. //Успешно изтриване
  16. echo "Изтриването премина успешно"; 
  17. } else { 
  18. //Не успешно изтриване
  19. echo "Изтриването е не успешно!"; 
  20. }
  21. ?>

За да не пишете всеки път Конекциите към базата данни можете да ги заредите със следният код в началото на всяка страница:

Пример с файл config.php 

  1. <?php
  2. //Тук се съдържа информацията за вашата база данни
  3. $host = "localhost";   //Сървъра на който се намира (localhost по подразбиране)
  4. $dbuser = "dbuser";   //Потребителското име
  5. $dbpass = "dbpass";   //Паролата
  6. $dbname = "dbname";   //Името на базата данни 
  7. //Свързването  с mySQL
  8. mysql_connect("$host", "$dbuser", "$dbpass")
  9. or die("Грешка");
  10. mysql_select_db("$dbname")
  11. or die("Грешка");
  12. ?>

Ето и как се извиква config.php  

  1. include("config.php"); // Ако config.php е в същата директория

ако config e в директорията mywebsite/config/config.php

  1. include("config/config.php"); // Тук config.php е в директория config

Пример:

  1. <?php
  2. include("config/config.php");
  3. //Добавянето
  4. $query = mysql_query("INSERT INTO таблица (поле1, поле2, поле3) VALUES ('нещо1', 'нещо2', 'нещо3')");
  5. $num = mysql_affected_rows($query); 
  6. if ($num) { 
  7. //Ако всичко е успешно извежда:
  8. echo "Успешно въведохте данните."; 
  9. }else { 
  10. //Ако въвеждането не е успешно  извежда:
  11. echo "Грешка! Въвеждането не е успешно."; 
  12. }
  13. ?>

 

Категория: MySQL | Преглеждания: 966 | Довавено от: knif3r | Оценка: 5.0 | Гласували :2

Ако урокът ви е харесал можете да го споделите с вашите приятели във фейсбук :
Всички коментари: 0
avatar
Социални Мрежи

PC-Tools.inc | Copyright © 2014-2015
DMCA.com Protection Status Mozilla Firefox+4.0 Chrome+13.2 Opera+5.6 IE+7.9 Safari+2.0