Professional Documents
Culture Documents
Advanced Web Technologies - Chapter2 - 230112 - 224950
Advanced Web Technologies - Chapter2 - 230112 - 224950
ﺘﻘﺪﻣ ﺔ
ﺗﻘﻨﻴﺎ ت اﻟﻮﻳ ﺐ اﻟﻤ
اﻟﻔﺼﻞ 2:
ﺑﻴﺎﻧﺎ ت PHPﺗﺼﺎل ﻗﺎﻋﺪة
ا
ﺘﻮراه ﻓ ﻲ
ﺘﻮر.ﻳﺤﻴﻰ إﺳﻤﺎﻋﻴﻞ اﻷﺷﻤﻮري دﻛ
دﻛ
ﺘﺮوﻧ ﻲ2021-2022 :
ﺒﺮﻳﺪ اﻹﻟﻜ
ﺗﻌﺪﻳﻦ اﻟﻮﻳ ﺐ اﻟ
Gdyahya@gmail.com
Machine Translated by Google
ﻣﺎ ﻫ ﻲ ؟MySQL
ﺘﺨﺪم ﻋﲆ اﻟﻮﻳ ﺐ • MySQLﻫﻮ ﻧﻈﺎم ﻗﺎﻋﺪة
ُﺴﺑﻴﺎﻧﺎ تﻳ • MySQLﻫﻮ ﻧﻈﺎم ﻗﺎﻋﺪة
ﺒﻴﺮة
ﺒﻴﻘﺎ ت اﻟﺼﻐﻴﺮة واﻟﻜ
ﺘﻄﺜﺎﻟ ﻲ ﻟﻜﻞ ﻣﻦ اﻟ
ﺑﻴﺎﻧﺎ تﻳﻌﻤﻞ ﻋﲆ ﺧﺎدم • MySQLﻣ
ﺷﺮﻛ ﺔ أوراﻛﻞ
2
Machine Translated by Google
ﺒﻴﻘﺎ ت
Wikipedia).ﻣﻴﺰة أﺧﺮى راﺋﻌ ﺔ ﻓ ﻲ MySQLﻫ ﻲ أﻧﻪﻳﻤﻜﻦﺗﺼﻐﻴﺮ ﻫﺎ ﻟﺪﻋﻢﺗﻄ
3
Machine Translated by Google
ﺒﻴﺎﻧﺎ ت
PHPوﻗﺎﻋﺪة اﻟ
• ﺘﺮﻧ ﺖ
ﺒﻜ ﺔ اﻹﻧ
ﻣﻊ ﻋﲆ ﺷ
ﺒﻴﺎﻧﺎ ت
ﻟﻘﺎﻋﺪةﻲ اﻟ
ﻋﺎدة
ﺴﻜﻞ ﻳﻌﻤﻞ
ﺑ
ﻣﻴ
ﺗﺶﺑ ﻲأ
ﺒﻴﻘﺎ ت
ﺘﻄاﻟ
• ﺘﺨﺪم
ﺘ ﻲﺗ ﺴ
ﺘﻨﺪة إﱃ اﻟﻮﻳ ﺐ اﻟ
ﺒﻴﻘﺎ ت اﻟﻤ ﺴ
ﺘﻄWampServerاﻟ
ﺒﻴﻘﺎ ت —
ﺘﻄاﻟ
ﺒﻴﻘﺎ ت ﺻﻐﻴﺮة.
ﺒ ﺖ VBScript ،وﻣﺎ إﱃ ذﻟﻚ( ،ﺗﻄ
ﺒ ﺖ ،أﻛﺸﻦﺳﻜﺮﻳ
)ﺟﺎﻓﺎﺳﻜﺮﻳ
ﺒﻴﺎﻧﺎ ت:
ﺑﺮة /اﻟ
ﺜﺎ
ﺒﻘ ﺔ اﻟﻤ
MySQLﻓ ﻲ ﻃ
MySQL
ﺜﻞ
ﻣ ﺜﻮر
اﻟﻌاﻟ
)phpMyAdmin
ﺘﻲ ﺬي -ﺘﻚ
ﺜﻞ اﻟ
ﺘﻄﺎﻋ
ﻋﻤﻼء )ﻣ
ﺑﺎﺳ-
ﺘﻔﻴﺪون ﻣﻨﻪ(
ﺒﻮك وﻣﺎ إﱃ ذﻟﻚ ،ﻓﺠﻤﻴﻌﻬﻢﻳ ﺴ
أﻣﺎزون وﻓﻴ ﺴ
Machine Translated by Google
ﺒﻴﺎﻧﺎ ت :
ﺑﺮة /اﻟ
ﺜﺎ
ﺒﻘ ﺔ اﻟﻤ
MySQLﻓ ﻲ ﻃ
ﺘﺠﺎرﻳ ﺔ أو ﻣﻨﺨﻔﻀ ﺔ
ﺒﻴﺎﻧﺎ ت اﻟ
ﺑﻞ ﻗﻮاﻋﺪ اﻟ
oﻣﻌﺎﻳﻴﺮ ﻋﺎﻟﻴ ﺔ اﻷداء ﺟﻴﺪة ﺟﺪًا ﻣﻘﺎ
ﺘﻌﻠﻢ
ﺘﻜﻮﻳﻦ واﻟ
ﺘﻮح اﻟﻤﺼﺪر oﺳﻬﻠ ﺔ اﻟ
ﺑﻤﻮﺟ ﺐﺗﺮﺧﻴﺺ ﻣﻔ ﺑﺪونﺗﻜﻠﻔ ﺔ ﺘﻜﻠﻔ ﺔ و
اﻟ
ﺘﻮاﻓﻘ ﺔ ﻣﻊ SQL oPortableﺳﻬﻠ ﺔ اﻹﻋﺪاد وﻣ
phpMyAdmin
ﺑﻠﻐ ﺔ PHPﺘﻮ ب
oﻋﻤﻴﻞ MySQLﻣﻜ
ﺘﺼﻔﺢﻳﻤﻜﻨﻚ:
ﺒﺮ ﻣ
oﻋ
ﺒﻴﺎﻧﺎ ت
oإدارة ﻗﻮاﻋﺪ اﻟ
ﺘﺨﺪﻣ ﻲ MySQL
oإدارة ﻣ ﺴ
ﺒﻴﺎﻧﺎ ت
ﺒﻴﺎﻧﺎ ت ،ﺗﺼﻔﺢ اﻟ
oإﻧﺸﺎء اﻟﺠﺪاول ،إﺿﺎﻓ ﺔ /ﺗﻌﺪﻳﻞ /ﺣﺬف اﻟ
ﺘﻌﻼﻣﺎ ت )(SQL
oإرﺳﺎل اﻻﺳ
ﺘﺼﺪﻳﺮ
ﺘﻴﺮاد واﻟ
oﺟﺪاول اﻻﺳ
o phpMyAdmin @ localhost: http: // localhost / phpmyadmin
Machine Translated by Google
واﺟﻬ ﺔ phpMyAdmin:
ﺗﻌﻠﻴﻤﺎ ت phpmyadmin
ﻣ ﺴﺎﻋﺪة MySQL
ﺒﻞ
ﺣﺎﻟ ﺔ دﻳ ﺴﻴ ﺘﺨﺪﻣﻴﻦ
ادارة اﻟﻤ ﺴ
ﺜﻘ ﺔ
ﺒﻧﺎﻓﺬة SQLاﻟﻤﻨ
ﺋﻴ ﺴﻴ ﺔ
اﻟﺼﻔﺤ ﺔ اﻟﺮ
ﺘﻴﺮاد
ﺑﻴﺎﻧﺎ ت اﻻﺳ
ﺒﻞ
ﺗﺼﺪﻳﺮ دﻳ ﺴﻴ
ﺑﻴﺎﻧﺎ تﻗﻮاﻋﺪ
Machine Translated by Google
ﺒﻴﺎﻧﺎ ت
اﻟﺨﻄﻮا ت اﻷﺳﺎﺳﻴ ﺔ ﻟﻤﻌﺎﻟﺠ ﺔ ﻗﺎﻋﺪة اﻟ
ﺒ ﺖ ﻋﻠﻴﻪ MySQL
ﺜﺑﺎﻟﺨﺎدم اﻟﻤﻀﻴﻒ اﻟﻤﺗﺼﺎل
1.اﻻ
ﺑﺈرﺟﺎعﺳﺠﻞﺘﻴﺎرﻳًﺎ( ﻗﻢ
ﺒﺎرة SQLو )اﺧ
ﺘﻨﻔﻴﺬ ﻋ
ﺑ4.ﻗﻢ
ﺟﻠ ﺲ
ﺘﺨﺪام php
ﺑﺎﺳﺒﻴﺎﻧﺎ ت ﻣﻦ ﻣﺠﻤﻮﻋ ﺔ اﻟ ﺴﺠﻼ ت
ﺘﺨﺮاج اﻟ
5.اﺳ
ﺛﻴﻖ
ﺗﺼﺎل و
6.ا
Machine Translated by Google
ﺑﺨﺎدم MySQL
ﺑـ PHPﺗﺼﻞ
ا
ﺑﺨﺎدم MySql:ﺗﺼﺎل
ﺛﻼ ث ﺧﻄﻮا ت ﻟﻼ
•
ﺗﺼﺎﻻ ً
ﺑﺨﺎدم MySQL ﺘﺢ ا
•اﻓ
ﺗﺼﺎل
•إﻏﻼق اﻻ
Machine Translated by Google
ﺑـ MySQL
ﺑـ PHPﺗﺼﻞ
ا
ﺑﻴﺎﻧﺎ ت MySQL•ﻳﻤﻜﻦ أنﺗﻌﻤﻞ PHP 5واﻹﺻﺪارا ت اﻷﺣﺪ ث ﻣﻊ ﻗﺎﻋﺪة
ﺘﺨﺪام:
اﺳ
ﺘﺪاد MySQL.
ﺑﻘ ﺔ ﻣﻦ PHPاﻣ
ﺘﺨﺪﻣ ﺖ اﻹﺻﺪارا ت اﻟ ﺴﺎ
•اﺳ
13
Machine Translated by Google
ﺑﺔ
ﺑﺤﺎﺟ ﺔ إﱃ إﺟﺎﺘﺨﺪام MySQLiأو • ؟PDOإذا ﻛﻨ ﺖ
ﻫﻞﻳﺠ ﺐ ﻋﻠ ﻲ اﺳ
ﺑﻤﺰاﻳﺎ ﻫﺎ• :
ﺘﻊ ﻛﻞ ﻣﻦ MySQLiو PDO ﺘﻤ ﺗﺘﻜﻮن "أﻳًﺎ ﻣﺎﺗﺮﻳﺪ"• .
ﻗﺼﻴﺮة ،ﻓ ﺴ
ﺑﻴﻨﻤﺎﺗﻌﻤﻞ MySQLi ﺘﻠ ًﻔﺎ ﻟﻘﻮاﻋﺪ اﻟ
ﺒﻴﺎﻧﺎ ت ، ﻧﻈﺎﻣﺎ ﻣﺨ
ً ﺘﻌﻤﻞ PDOﻋﲆ 12 ﺳ
ﺒﺪﻳﻞ ﻣﺸﺮوﻋﻚ ﺑﻴﺎﻧﺎ ت • MySQL.ﻟﺬﻟﻚ ،إذا ﻛﺎن ﻋﻠﻴﻚﺗﻓﻘﻂ ﻣﻊ ﻗﻮاﻋﺪ
ﺗﺠﻌﻞ اﻟﻌﻤﻠﻴ ﺔﺳﻬﻠ ﺔ .ﻣﺎ ﻋﻠﻴﻚﺳﻮى
ﺑﻴﺎﻧﺎ ت أﺧﺮى ،ﻓﺈن PDO ﺘﺨﺪام ﻗﺎﻋﺪة
ﻻﺳ
ﺘﺎج إﱃ ﺘﺤ ﺘﺨﺪام MySQLi ،ﺳ ﺑﺎﺳ ﺘﻔ ﺴﺎرا ت. ﺑﻌﺾ اﻻﺳ ﺗﺼﺎل و ﺗﻐﻴﻴﺮﺳﻠ ﺴﻠ ﺔ اﻻ
ﺘﻌﻼﻣﺎ ت اﻟﻤﻀﻤﻨ ﺔ• .ﻛﻼ ﻫﻤﺎ ﻣﻮﺟﻬﺎن ﻟﻠﻜﺎﺋﻨﺎ ت ، ﺑﺎﻟﻜﺎﻣﻞ -اﻻﺳ ﺑ ﺔ اﻟﻜﻮدﺘﺎ
إﻋﺎدة ﻛ
ﺗﻘﺪم أ ً
ﻳﻀﺎ إﺟﺮاءا ت إﺟﺮاﺋﻴ ﺔ ﻟﻜﻦ MySQLi
API.
ﺒﻴﺎﻧﺎ ت اﻟﻤﻌﺪة ﻣﻦ ﺣﻘﻦ SQL ،و ﻫ ﻲ ﻣﻬﻤ ﺔ ﺟﺪًاﻷﻣﺎن
ﺒﻴﺎﻧﺎ ت اﻟﻤﻌﺪة.ﺗﺤﻤ ﻲ اﻟ
•ﻛﻼ ﻫﻤﺎﻳﺪﻋﻢ اﻟ
ﺒﻴﻘﺎ ت اﻟﻮﻳ ﺐ.
ﺗﻄ
14
Machine Translated by Google
PDO ﺑﺮاﻣﺞﺗﺸﻐﻴﻞ
ﺑﺮﻳﺪ
ﻛﻮPDO_CUBRID
PDO_FIREBIRD ﺑﻴﺮد
ﻓﺎﻳﺮ
PDO_MYSQL ﺗﺼﺎل
واﺟﻬ ﺔ اIBM Informix Dynamic
PDO_OCI أوراﻛﻞ
PDO_4D د4
15
Machine Translated by Google
ﺗﺼﺎﻻ ً
ﺑﺨﺎدم MySQL ﺘﺢ ا
اﻓ
ﺘﺢ
ﺒﻴﺎﻧﺎ ت ،ﻳﺠ ﺐ أن ﻧﻔ
ﺒﻴﺎﻧﺎ ت ﻓ ﻲ ﻗﺎﻋﺪة اﻟ
ﺘﻤﻜﻦ ﻣﻦ اﻟﻮﺻﻮل إﱃ اﻟ
ﺒﻞ أن ﻧ
•ﻗ
ﺑﺨﺎدم MySQL.ﺗﺼﺎل
ا
ﻣﻌﺎﻣﻞ ﺘﻴﺎري.
ﺘﻴﺎري .إﻣﺎ اﺳﻢ ﻣﻀﻴﻒ أو ﻋﻨﻮان IPاﺧ
اﻟﻮﺻﻒ اﺧ
ﻣﻀﻴﻒ ﺒﻴﺎﻧﺎ ت
ﺘﻴﺎري .ﻗﺎﻋﺪة اﻟ
ﺘﺨﺪام اﺧ
ﺑﺎﺳﺘ ﺴﺠﻴﻞ اﻟﺪﺧﻮل
ﺘﻴﺎري .ﻛﻠﻤ ﺔ اﻟﻤﺮور ﻟ
ﺘﺨﺪم MySQLاﺧ
اﺳﻢ ﻣ ﺴ
ﺘﺨﺪم
اﺳﻢ ااﻟﻤ ﺴ ﺘﻌﻼﻣﺎ ت
ﺘﺨﺪاﻣﻬﺎ ﻋﻨﺪ إﺟﺮاء اﻻﺳ
ﺘﻢ اﺳ
ﺘ ﻲﺳﻴ
ﺘﺮاﺿﻴ ﺔ اﻟ
اﻻﻓ
ﻛﻠﻤﻪ اﻟ ﺴﺮ
dbname
Machine Translated by Google
()) ؛.":ﺗﺼﺎل
!()"ﻓﺸﻞ اﻻ$ conn) {die ﺗﺼﺎل إذا
ﺗﺤﻘﻖ ﻣﻦ اﻻ
//
mysqli_connect_error
17
Machine Translated by Google
18
(PDO) ﺜﺎل
ﻣ
Machine Translated by Google
19
Machine Translated by Google
ﺗﺼﺎل
ﺑﺈﻏﻼق اﻗﻢ
ﺗﺼﺎلﺗﻠﻘﺎﺋ ًﻴﺎ
ﺘﻢ إﻏﻼق اﻻ
•ﺳﻴ
ﺗﺼﺎل
ﻹﻏﻼق اﻻ.ﺘﻬ ﻲ اﻟﻨﺺ
ﻋﻨﺪﻣﺎﻳﻨ
21
Machine Translated by Google
ﺒﻴﺎﻧﺎ ت ﻓ ﻲ MySQL.
ﺟﺪول ﻗﺎﻋﺪة اﻟ
ﺘﻨﻔﻴﺬ اﻷﻣﺮ.
)( mysqli_queryوﻇﻴﻔ ﺔ ﻟ
conn-> query ($ sql)) { echo ﺑﻴﺎﻧﺎ ت"إﻧﺸﺎء ﻗﺎﻋﺪة$ sql = ﺑﻴﺎﻧﺎ تإﻧﺸﺎء ﻗﺎﻋﺪة//
23
Machine Translated by Google
if (mysqli_query ($ conn، $ sql)) { echo ﺑﻴﺎﻧﺎ ت"إﻧﺸﺎء ﻗﺎﻋﺪة$ sql = ﺑﻴﺎﻧﺎ تإﻧﺸﺎء ﻗﺎﻋﺪة//
"myDBPDO":
"" "اﻟﺠﺬر" ؛ ﻛﻠﻤ ﺔ ﻣﺮور دوﻻر ؛$ = ﺘﺨﺪم
؟<اﺳﻢ اﻟﻤ ﺴphp $ servername = "localhost"؛
= new PDO ("mysql: host = $ servername"، $ username، $ password)=ﺟﺮ ب ؛
create_DB_PDO3.php
{$ conn
$ sql = ﺜﻨﺎء
ﺘإﱃ اﻻﺳPDO ﺗﻌﻴﻴﻦ وﺿﻊ ﺧﻄﺄ
//
(PDO :: ATTR_ERRMODE، PDO :: ERRMODE_EXCEPTION) ؛
> exec ($ sql) ﺑﻴﺎﻧﺎ ت ؛"إﻧﺸﺎء ﻗﺎﻋﺪة$ conn-> setAttribute
nullﺑﻨﺠﺎح >؟ ؛ﺒﻴﺎﻧﺎ ت
ﺗﻢ إﻧﺸﺎء ﻗﺎﻋﺪة اﻟ
" ﺻﺪىmyDBPDO" ؛$ conn-
$ e) {echo $ sql. "<br>". $ e-> getMessage () } ؛conn =
<br>" } ؛catch (PDOException
25
Machine Translated by Google
26
Machine Translated by Google
ﺑﺈﻧﺸﺎء ﺟﺪولﻗﻢ
ﺘﻨ ﺴﻴﻖ
ﺑﺒﺎرة CREATE TABLEﻹﻧﺸﺎء ﺟﺪول
ﺘﺨﺪام ﻋ
ﺘﻢ اﺳ
•ﻳ
MySQL.
ﺑﻴﺎن CREATE TABLEإﱃ•ﻳﺠ ﺐ أن ﻧﻀﻴﻒ
ﺘﻨﻔﻴﺬ اﻷﻣﺮ.
)( mysqli_queryوﻇﻴﻔ ﺔ ﻟ
Machine Translated by Google
ﺘﻠﻘﺎﺋﻴ ﺔ
ﺗﻴﺢ اﻷﺳﺎﺳﻴ ﺔ وﺣﻘﻮل اﻟﺰﻳﺎدة اﻟ
اﻟﻤﻔﺎ
ﺘﻄﻠ ﺐ
ﺒﻴﺎﻧﺎ تﻳ ً
ﻓﺎرﻏﺎﻷن ﻣﺸﻐﻞ ﻗﺎﻋﺪة اﻟ ﺘﺎح اﻷﺳﺎﺳ ﻲ
ﻻﻳﻤﻜﻦ أنﻳﻜﻮن ﺣﻘﻞ اﻟﻤﻔ
ﺘﺨﺪاﻣﻪ ﻣﻊ
ﺘﻢ اﺳ
ﺒﺎ ﻣﺎﻳ
ﺒﺎرة ﻋﻦ رﻗﻢ ﻣﻌﺮف ،وﻏﺎﻟ ً
ﺘﺎح اﻷﺳﺎﺳ ﻲ ﻋ
ﺒﺎ ﻣﺎﻳﻜﻮن ﺣﻘﻞ اﻟﻤﻔ
ﻏﺎﻟ ً
ﺗﻠﻘﺎﺋ ًﻴﺎ
إﻋﺪاد AUTO_INCREMENT. AUTO_INCREMENT
ً
ﻓﺎرﻏﺎ ،ﻳﺠ ﺐ أن ﻧﻀﻴﻒ NOT ﺘﺎح اﻷﺳﺎﺳ ﻲ ﻻﻳﻤﻜﻦ أنﻳﻜﻮن
ﺗﺄﻛﺪ ﻣﻦ أن ﺣﻘﻞ اﻟﻤﻔ
اﻹﻋﺪاد NULLﻟﻠﻤﻴﺪان:
Machine Translated by Google
ﺘ ﺴﺠﻴﻞ":
ﺗﺎرﻳﺦ اﻟ
ﺘﺮوﻧ ﻲ" و "
ﺒﺮﻳﺪ اﻹﻟﻜ
"اﻻﺳﻢ اﻷول" و "اﻻﺳﻢ اﻷﺧﻴﺮ" و "اﻟ
إﻧﺸﺎء MyGuestsاﻟﺠﺪول (
reg_date TIMESTAMP
)
Machine Translated by Google
32
Machine Translated by Google
($ conn) >؟ ؛
mysqli_close
33
Machine Translated by Google
34
Machine Translated by Google
PDO $ e) ﺜﻨﺎء
ﺘ)اﺳcatch
"<br>". $ e-> getMessage () } ﺻﺪى } ؛
$ sql.
= null >؟ ؛
$ conn
35
Machine Translated by Google
MySQL ﺒﻴﺎﻧﺎ ت ﻓ ﻲ
أدﺧﻞ اﻟ
PDO وMySQLi ﺘﺨﺪام
اﺳ
36
Machine Translated by Google
ﺒﻴﺎﻧﺎ ت ﻓ ﻲ MySQL
PHPأدﺧﻞ اﻟ
ﺒﺎﻋﻬﺎ:
ﺗﺘ ﻲﻳﺠ ﺐ ا
ﺑﻨﺎء اﻟﺠﻤﻠ ﺔ اﻟﺑﻌﺾ ﻗﻮاﻋﺪ•ﻓﻴﻤﺎﻳﻠ ﻲ
ﺑﻠﻐ ﺔ PHP
ﺘﻌﻼم SQL
ﺒﺎس اﺳ
ﺘ-ﻳﺠ ﺐ اﻗ
ﺘﻌﻼم SQL
ﺑﻴﻦ ﻗﻴﻢ اﻟ ﺴﻠ ﺴﻠ ﺔ داﺧﻞ اﺳﺒﺎس
ﺘ-ﻳﺠ ﺐ وﺿﻊ ﻋﻼﻣﺎ ت اﻗ
-ﻳﺠ ﺐ ﻋﺪم ذﻛﺮ اﻟﻘﻴﻢ اﻟﺮﻗﻤﻴ ﺔ
-ﻳﺠ ﺐ ﻋﺪم ذﻛﺮ ﻛﻠﻤ ﺔ NULL
ﺒﺎرة INSERT INTOﻟﻺﺿﺎﻓ ﺔ
ﺘﺨﺪام ﻋ
ﺘﻢ اﺳ
•ﻳ
37
Machine Translated by Google
ﺒﻴﺎﻧﺎ ت
ﺒﻴﺎﻧﺎ ت ﻓ ﻲ ﺟﺪول ﻗﺎﻋﺪة اﻟ
أدﺧﻞ اﻟ
ﻧﻤﺎذج:
40
Machine Translated by Google
41
Machine Translated by Google
ﺘﺨﺪاﻣﻪ ﻟﻺﺿﺎﻓ ﺔ
ﻳﻤﻜﻦ اﺳHTML ﺑﺈﻧﺸﺎء ﻧﻤﻮذج•ﺳﻨﻘﻮم اﻵن
."ﺳﺠﻼ ت ﺟﺪﻳﺪة ﻟﺠﺪول "اﻷﺷﺨﺎص
"text" name = "lastname"> :<اﺳﻢ اﻟﻌﺎﺋﻠ ﺔinput type = "text" name = "firstname">
= "age"> <input type = "submit"> </form> </body> </html> :<اﻟﻌﻤﺮinput type =
<input type = "text" name
Machine Translated by Google
ﺘﻨ ﺴﻴﻖ
ﺑﺘﺨﺪم ﻋﲆ زر اﻹرﺳﺎل ﻓ ﻲ ﻧﻤﻮذج HTML
•ﻋﻨﺪﻣﺎﻳﻨﻘﺮ اﻟﻤ ﺴ
ﺘﺮﺟﺎع ﻣﻠﻔﺎ ت
ﺑﺎﺳﺒﻴﺎﻧﺎ ت وﻳﻘﻮم
ﺑﻘﺎﻋﺪة اﻟ
ﺘﺼﻞ ﻣﻠﻒ ""insert.php
•ﻳ
ﺘﻨﻔﻴﺬ INSERT
ﺑﺑﻌﺪ ذﻟﻚ ،ﺗﻘﻮم داﻟ ﺔ )( mysqli_query
•
ﺟﺪول "اﻷﺷﺨﺎص".
Machine Translated by Google
insert.php
php \ $ con = mysqli_connect ("example.com"، "peter"، "abc123"، "my_db") ؛//
() ، } ﺑـﺗﺼﺎل
("ﻓﺸﻞ اﻻmysqli_connect_errno ()) {echo ﺗﺼﺎل إذا
ﺗﺤﻘﻖ ﻣﻦ اﻻ
<؟
MySQL:". mysqli_connect_error
('$ _POST [firstname]'، '$ _ POST [lastname]'، '$ _ POST [age]') "؛
45
Machine Translated by Google
ﺜﻠ ﺔ
ﺘﺎﻟﻴ ﺔﺗ ﺴﺎوي اﻷﻣ
ﺜﻠ ﺔ اﻟ
اﻷﻣ
ﻧﻜﺮر أ ً
ﻳﻀﺎ آﺧﺮ ﻣﻌﺮفﺗﻢ إدﺧﺎﻟﻪ:
46
Machine Translated by Google
" ؛if ($ conn-> query ($ sql) === TRUE) {$ last_id = $ conn-> insert_id ؛echo "
آﺧﺮ ﻣﻌﺮف.ﺑﻨﺠﺎحﺳﺠﻞ ﺟﺪﻳﺪﺗﻢ إﻧﺸﺎؤ ﻫﺎVALUES ('John'، 'Doe'، 'john@example.com')
{ echo " Error: " . $ sql. " <br> " . $ conn-> error }؛$ conn-> close () >؟ ؛:ﺗﻢ إدﺧﺎﻟﻪ ﻫﻮ
" . $ last_id } ؛else
47
Machine Translated by Google
48
Machine Translated by Google
49
Machine Translated by Google
ﺒﻴﺎﻧﺎ ت ﻣﻦ أ
ﺣﺪد اﻟ
50
Machine Translated by Google
ﺒﻴﺎﻧﺎ ت
ﺒﻴﺎﻧﺎ ت ﻣﻦ ﺟﺪول ﻗﺎﻋﺪة اﻟ
ﺣﺪد اﻟ
ﺒﻴﺎﻧﺎ ت
ﺘﺤﺪﻳﺪ اﻟ
ﺒﺎرة SELECTﻟ
ﺘﺨﺪام ﻋ
ﺘﻢ اﺳ
•ﻳ
ﺑﻴﺎﻧﺎ ت.ﻣﻦ ﻗﺎﻋﺪة
ﺘﺨﺪﻣﻬﺎ
ﺒﺎرة أﻋﻼه ،ﻳﺠ ﺐ أن ﻧ ﺴ
ﺗﻨﻔﺬ اﻟﻌ
•ﻟﺠﻌﻞ PHP
ﺗﺼﺎل MySQL.
ﺘﻌﻼم أو أﻣﺮ ﻻ
اﺳ
Machine Translated by Google
" :اﺳﻢ-
54
Machine Translated by Google
55
Machine Translated by Google
56
Machine Translated by Google
= “root” ؛$ password = "" ؛$ dbname = "myDB" ؛// ﺘﺨﺪام ﺑﺎﺳ ﺒﻴﺎﻧﺎ ت
ﺣﺪد اﻟ
إﻧﺸﺎءMySQLi Procedural < ؟php $ servername = "localhost" ؛$ username
select_data_Prdu_MyGuest.php
$ username، $ password، $ dbname) ؛if (! $ conn) { die { _ _ _ _ _ _ _ // ﺗﺼﺎل ا
" " ﺑﻴﻨﻤﺎﺑﻴﺎﻧﺎ ت اﻹﺧﺮاج ﻟﻜﻞ ﺻﻒ
$ conn = mysqli_connect ($ servername،
($ row = mysqli_fetch_assoc ($ result)) { . $ row ["firstname"].
:ﺳﻢ
" . $ row ["id"]. " :"ﻣﻌﺮف اﻻ- "
ﺻﺪى
.
"0 results" }؛mysqli_close ($ conn)>؟؛
row ["lastname"]. "<br>" } } ؛else { echo
$ 57
Machine Translated by Google
ﺑﻨﺪ WHERE
ﺒﻴﺎﻧﺎ ت
ﺘﺤﺪﻳﺪ اﻟ
ﺒﺎرة SELECTﻟ
ﺘﺨﺪام ﻋ
ﺘﻢ اﺳ
•ﻳ
ﻣﻦ table_name
أﻳﻦ ﻗﻴﻤ ﺔ ﻋﺎﻣﻞ اﺳﻢ اﻟﻌﻤﻮد
Machine Translated by Google
WHERE ﺑﻨﺪ
< ؟php
>؟
Machine Translated by Google
ﺋﻴ ﺴﻴ ﺔ
ﺗﻴ ﺐ ﺣ ﺴ ﺐ اﻟﻜﻠﻤ ﺔ اﻟﺮ
ﺘﺮاﻟ
ﻣﻦ table_name
ﺗﻨﺎزﻟ ﻲ
ﺗﻴ ﺐ ﺣ ﺴ ﺐ اﺳﻢ )أﺳﻤﺎء( اﻟﻌﻤﻮد | ASC
ﺗﺮ
ﺗﻴ ﺐﺗﺼﺎﻋﺪي ﺣ ﺴ ﺐ
ﺘﺮﺑﺑﻔﺮز اﻟ ﺴﺠﻼ ت
ﺗﻘﻮم اﻟﻜﻠﻤ ﺔ اﻷﺳﺎﺳﻴ ﺔ ORDER BY
•
ﺘﺮاﺿ ﻲ.
إﻓ
ﺘﺨﺪام
ﺗﻴ ﺐﺗﻨﺎزﻟ ﻲ ،ﻳﻤﻜﻨﻚ اﺳ
ﺘﺮﺑ•إذا ﻛﻨ ﺖﺗﺮﻏ ﺐ ﻓ ﻲ ﻓﺮز اﻟ ﺴﺠﻼ ت
ﺋﻴ ﺴﻴ ﺔ
ﺗﻴ ﺐ ﺣ ﺴ ﺐ اﻟﻜﻠﻤ ﺔ اﻟﺮ
ﺘﺮاﻟ
< ؟php $ con = mysqli_connect ("example.com"، "peter"، "abc123"، "my_db") ؛//
ORDER BY age")ﺑـ ؛ﺗﺼﺎل ("ﻓﺸﻞ اﻻmysqli_connect_errno ()) { echo ﺗﺼﺎل إذا ﺗﺤﻘﻖ ﻣﻦ اﻻ
mysqli_connect_error () ، } $ result = mysqli_query ($ con، "SELECT * FROM People
MySQL:".
ﺋﻴ ﺴﻴ ﺔ
ﺗﻴ ﺐ ﺣ ﺴ ﺐ اﻟﻜﻠﻤ ﺔ اﻟﺮ
ﺘﺮاﻟ
ﺜﺮ ﻣﻦ ﻋﻤﻮد.
ﺑﺄﻛ •ﻣﻦ اﻟﻤﻤﻜﻦ أ ً
ﻳﻀﺎ اﻟﻄﻠ ﺐ
ﺜﺎﻧ ﻲ
ﺜﺮ ﻣﻦ ﻋﻤﻮد واﺣﺪ ،اﻟ
ﺑﺄﻛﻋﻨﺪ اﻟﻄﻠ ﺐ
ﻣ ﺴﺎو:
Machine Translated by Google
MySQL ﺒﻴﺎﻧﺎ ت ﻓ ﻲ
ﺗﺤﺪﻳ ﺚ اﻟ
وMySQLi ﺘﺨﺪام ﺑﺎﺳ اﻟﺠﺪول
PDO
63
Machine Translated by Google
ﺗﺤﺪﻳ ﺚ table_name
ﺗﻌﻴﻴﻦ اﻟﻌﻤﻮد = 1اﻟﻘﻴﻤ ﺔ ،اﻟﻌﻤﻮد = 2اﻟﻘﻴﻤ ﺔ 2 ، ...
ﺣﻴ ﺚ some_column = some_value
ﺘﻨ ﺴﻴﻖ
ﺑﺘﺤﺪﻳ ﺚ اﻟ ﺴﺠﻼ ت اﻟﻤﻮﺟﻮدة
ﺒﺎرة UPDATEﻟ
ﺘﺨﺪام ﻋ
ﺘﻢ اﺳ
•ﻳ
ﻃﺎوﻟ ﺔ.
ﺒﻐ ﻲ
ﺘ ﻲﻳﻨ
ﺒﺎرة WHEREاﻟ ﺴﺠﻞ أو اﻟ ﺴﺠﻼ ت اﻟ
ﺗﺤﺪد ﻋ
ﻣﺤﺪ ث!
Machine Translated by Google
65
Machine Translated by Google
66
Machine Translated by Google
67
Machine Translated by Google
ﺘﺨﺪام PDO
ﺑﺎﺳ
ﺒﻴﺎﻧﺎ ت ﻓ ﻲ ﺟﺪول MySQL
ﺗﺤﺪﻳ ﺚ اﻟ
ﺗﻢ
ﺘﺤﺪﻳ ﺚ ﻧﺠﺢ ﻓ ﻲ "echo $ stmt-> rowCount ().
ﺘﻘﻮل إن اﻟ
//ﺻﺪى رﺳﺎﻟ ﺔ ﻟ
ﺑﻨﺠﺎح" ؛ {ﺗﺤﺪﻳ ﺚ اﻟ ﺴﺠﻼ ت
>؟ ؛ = null
$ conn
68
Machine Translated by Google
69
Machine Translated by Google
ﺒﻴﺎﻧﺎ ت
ﺒﻴﺎﻧﺎ ت ﻓ ﻲ ﻗﺎﻋﺪة اﻟ
ﺣﺬف اﻟ
اﺣﺬف ﻣﻦ table_name
ﺣﻴ ﺚ some_column = some_value
ﺒﻴﺎﻧﺎ ت.
ﺟﺪول ﻗﺎﻋﺪة اﻟ
ﺒﻐ ﻲ
ﺘ ﻲﻳﻨ
ﺒﺎرة WHEREاﻟ ﺴﺠﻞ أو اﻟ ﺴﺠﻼ ت اﻟ
ﺗﺤﺪد ﻋ
ﺗﻢ اﻟﺤﺬف!
Machine Translated by Google
71
Machine Translated by Google
73
Machine Translated by Google
ﺗﻤﺎرﻳﻦ ﻋﻤﻠﻴ ﺔ
74
Machine Translated by Google
75
Machine Translated by Google
76
Machine Translated by Google
77
Machine Translated by Google
<h1
ﺋﻤ ﺔ ﻣﻌﻠﻮﻣﺎ ت اﻟﻄﻼ ب ﻓ ﻲ ﺟﺎﻣﻌ ﺔ اﻟﻴﻤﻦ style = "color: # F0F0F0">
ﻗﺎList_data_main.php <body>
<ﻹﺿﺎﻓ ﺔ ﻃﻼ ب/ h1> <p> <a class = "nodec" href="Form_Insertdata.php">
lasttname </th> <th range = "col"> E_mail </th> <th range = "col"> ﺟﺪد
= "col"> Id </th> < th range = "col"> firstname </th> <th range = "col">
= "50٪" border = "1" style = "color: # F0F0F0"> <tbody> <tr> <th range
= "col"> <اﻟﻌﻤﺮ/ th > <th range = "col"> <ﻛﻠﻤ ﺔ اﻟﻤﺮور/p> <hr /> <table width
<th range = "col"> ﺗﺤﺪﻳ ﺚ
</ th> <th range = "col"> ﺒﻴﺎﻧﺎ ت
<اﻟ/ th> <th range
</tr> < <ﻋﺸﺮ/ <ﺣﺬف/ th>
78
Machine Translated by Google
79
Machine Translated by Google
80
Machine Translated by Google
ﺘﻌﺪدة ﻓ ﻲ
أدﺧﻞﺳﺠﻼ ت ﻣ
PD وMySQLi ﺘﺨﺪام
ﺑﺎﺳ
MySQL
81
Machine Translated by Google
PHPأدﺧﻞ ﻋﺪةﺳﺠﻼ ت ﻓ ﻲ
MySQL
ﺘﺨﺪام
ﺑﺎﺳﺘﻌﺪدة
•ﻳﺠ ﺐﺗﻨﻔﻴﺬ ﺟﻤﻞ SQLاﻟﻤ
ﺟﺪول "MyGuests":
82
MySQLi) ﺜﺎل )ﻣﻮﺟﻪ ﻧﺤﻮ ﻛﺎﺋﻨﺎ ت
ﻣ
Machine Translated by Google
('John'، 'Doe'، 'john@example.com') ؛" ؛$ sql. =" INSERT INTO MyGuests اﻟﻘﻴﻢ
(ﺘﺮوﻧ ﻲ
ﺒﺮﻳﺪ اﻹﻟﻜ
اﻟ، اﺳﻢ اﻟﻌﺎﺋﻠ ﺔ، )اﻻﺳﻢ اﻷول
VALUES ('Mary'، 'Moe'، 'mary@example.com') ؛" ؛$ sql. =" INSERT INTO MyGuests
(ﺘﺮوﻧ ﻲ
ﺒﺮﻳﺪ اﻹﻟﻜ
اﻟ، اﺳﻢ اﻟﻌﺎﺋﻠ ﺔ، )اﻻﺳﻢ اﻷول
'julie@example.com') " ؛if ($ conn-> multi_query ($ sql) === TRUE) { echo"
Error: "$ conn-> close ()ﺑﻨﺠﺎح >؟؛ﺗﻢ إﻧﺸﺎءﺳﺠﻼ ت ﺟﺪﻳﺪة
VALUES ('Julie'، 'Dooley'،
" ؛. $ sql." <br> ". $ conn-> error }}؛else {echo"
83
MySQLi) ﺜﺎل )إﺟﺮاءا ت
ﻣ
Machine Translated by Google
'()اﻻﺳﻢJohn'، 'Doe'، 'john@example.com') ؛" ؛$ sql. =" INSERT INTO MyGuests اﻟﻘﻴﻢ
(ﺘﺮوﻧ ﻲ
ﺒﺮﻳﺪ اﻹﻟﻜ
اﻟ، اﺳﻢ اﻟﻌﺎﺋﻠ ﺔ، اﻷول
VALUES ('Mary'، 'Moe'، 'mary@example.com') ؛" ؛$ sql. =" INSERT INTO MyGuests
(ﺘﺮوﻧ ﻲ
ﺒﺮﻳﺪ اﻹﻟﻜ
اﻟ، اﺳﻢ اﻟﻌﺎﺋﻠ ﺔ، )اﻻﺳﻢ اﻷول
('Julie'، 'Dooley'، 'julie@example.com') " ؛if (mysqli_multi_query ($ conn، $ sql)) {
VALUES
" msliclose $ connﺑﻨﺠﺎح" ؛ { آﺧﺮ >؟ ؛ﺻﺪى "إﻧﺸﺎءﺳﺠﻼ ت ﺟﺪﻳﺪة
{ . $ sql. "<br>". mysqli_error ($ conn) } ؛echo "Error:
84
(PDO) ﺜﺎل
ﻣ
Machine Translated by Google
"" ؛$ dbname = "myDBPDO" "اﻟﺠﺬر" ؛ ﻛﻠﻤ ﺔ ﻣﺮور دوﻻر ؛$ = ﺘﺨﺪم
؟<اﺳﻢ اﻟﻤ ﺴphp $ servername = "localhost"؛
insert_multi_data_PDO.php
= new PDO ("mysql: host = $ servername ؛dbname = $ dbname"، $ username، $ password) ؛// =ﺟﺮ ب
(PDO :: ATTR_ERRMODE، PDO :: ERRMODE_EXCEPTION) ؛// ﺜﻨﺎء
ﺘإﱃ اﻻﺳPDO ﺗﻌﻴﻴﻦ وﺿﻊ ﺧﻄﺄ
{ $ conn
INTO MyGuests ﺑﻨﺎاﻟﺨﺎﺻ ﺔSQL ﺒﺎرا ت
ﻋ$ conn-> beginTransaction () ؛// ﺑﺪء اﻟﻤﻌﺎﻣﻠ ﺔ
$ conn-> setAttribute
(ﺘﺮوﻧ ﻲ
ﺒﺮﻳﺪ اﻹﻟﻜ
اﻟ، اﺳﻢ اﻟﻌﺎﺋﻠ ﺔ، )اﻻﺳﻢ اﻷول$ conn-> exec ("INSERT
، )اﻻﺳﻢ اﻷولVALUES ('John'، 'Doe'، 'john@example.com') ") ؛$ conn-> exec (" INSERT INTO MyGuests
(ﺘﺮوﻧ ﻲ
ﺒﺮﻳﺪ اﻹﻟﻜ
اﻟ، اﺳﻢ اﻟﻌﺎﺋﻠ ﺔ
، )اﻻﺳﻢ اﻷولVALUES ('Mary'، 'Moe'، 'mary@example.com') ") ؛$ conn-> exec (" INSERT INTO MyGuests
(ﺘﺮوﻧ ﻲ
ﺒﺮﻳﺪ اﻹﻟﻜ
اﻟ، اﺳﻢ اﻟﻌﺎﺋﻠ ﺔ
VALUES ('Julie'، 'Dooley'، 'julie@example.com') ")؛
85
(PDO) ﺜﺎل
ﻣ
Machine Translated by Google
insert_multi_data_PDO.php
ﺗﻨﻔﻴﺬ اﻟﺼﻔﻘ ﺔ
//
PDO $ e) ﺜﻨﺎء
ﺘ)اﺳcatch
$ conn-> rollback ()ﺘﺮاﺟﻊ ﻋﻦ اﻟﻤﻌﺎﻣﻠ ﺔ إذا ﻓﺸﻞ ﺷ ﻲء ﻣﺎ ؛
{اﻟ//
$ e-> getMessage () } ؛conn = null >؟ ؛.":ﺻﺪى "ﺧﻄﺄ
86
Machine Translated by Google
87
ﺒﻴﺎﻧﺎ ت اﻟﻤﻌﺪة واﻟﻤﻘﻴﺪة
اﻟ
Machine Translated by Google
اﻟﻤﻌﻠﻤﺎ ت
ﺑﻪ(
ﺘﻨﻔﻴﺬ ﻧﻔ ﺲ )أو ﻣﺎ ﺷﺎ
ﺘﺨﺪم ﻟ
ﺒﻴﺎن اﻟﻤﻌﺪ ﻫﻮ ﻣﻴﺰةﺗ ﺴ
ﺒﺎرا ت اﻟﻤﻌﺪة ﻣﻔﻴﺪة ﺟﺪًا ﺿﺪ ﺣﻘﻦ • SQL.اﻟ
•اﻟﻌ
ﺘﺎﻟ ﻲ:
ﺑﺸﻜﻞ أﺳﺎﺳ ﻲ ﻋﲆ اﻟﻨﺤﻮ اﻟﺒﻴﺎﻧﺎ ت اﻟﻤﻌﺪة
ﺗﻌﻤﻞ اﻟ
•
ﺘﻢﺗﺮك ﻗﻴﻢ ﻣﻌﻴﻨ ﺔ ﻏﻴﺮ ﻣﺤﺪدة ،ﺗ ﺴﻤﻰ اﻟﻤﻌﻠﻤﺎ ت
ﺒﻴﺎﻧﺎ ت.ﻳ
ﺑﻴﺎن SQLوإرﺳﺎﻟﻪ إﱃ ﻗﺎﻋﺪة اﻟﺘﻢ إﻧﺸﺎء ﻗﺎﻟ ﺐ
ﺗﺤﻀﻴﺮ:ﻳ
-
ﺜﺎل :أدﺧﻞ ﻓ ﻲ )؟،؟،؟( MyGuests VALUES
ﺗ ﺴﻤﻰ ").؟"ﻣ
)
ﺘﻴﺠ ﺔﺗﺨﺰﻳﻦ اﻟﻨ ﺘﻌﻼم ﻋﲆ ﻗﺎﻟ ﺐ ﺟﻤﻠ ﺔ SQL ،و ﺗﻨﻔﻴﺬﺗﺤ ﺴﻴﻦ اﻻﺳ ﺗﺮﺟﻤ ﺔ و
ﺘﻮزﻳﻊ و
ﺑﺒﻴﺎﻧﺎ تﺗﻘﻮم ﻗﺎﻋﺪة اﻟ
-
ﺒﻴﺎﻧﺎ تﺗﻘﻮم ﻗﺎﻋﺪة اﻟ
ﺑﺎﻟﻤﻌﻠﻤﺎ ت ،وﺑﻂ اﻟﻘﻴﻢ
ﺑﺮﺒﻴﻖﺘﻄﺘﻨﻔﻴﺬ :ﻓ ﻲ وﻗ ﺖ ﻻﺣﻖ ،ﻳﻘﻮم اﻟدونﺗﻨﻔﻴﺬ ﻫﺎ -اﻟ
ﺘﻠﻔ ﺔ
ﺑﻘﻴﻢ ﻣﺨﺒﻴﺎن ﻋﺪة ﻣﺮا ت ﻛﻤﺎﻳﺮﻳﺪ
ﺒﻴﻖﺗﻨﻔﻴﺬ اﻟ
ﺘﻄﺒﺎرة.ﻳﻤﻜﻦ ﻟﻠ
ﺘﻨﻔﻴﺬ اﻟﻌ
ﺑ
88
ﺒﻴﺎﻧﺎ ت اﻟﻤﻌﺪة واﻟﻤﻘﻴﺪة
اﻟ
Machine Translated by Google
اﻟﻤﻌﻠﻤﺎ ت
ﺒﺎﺷﺮة ،
ﺘﻨﻔﻴﺬ ﺟﻤﻞ SQLﻣ
ﺑ•ﻣﻘﺎرﻧ ﺔ
ﺋﻴ ﺴﻴ ﺔ:
ﺛﻼ ث ﻣﺰاﻳﺎ رﺒﻴﺎﻧﺎ ت اﻟﻤﻌﺪة ﻟﻬﺎ
اﻟ
ﺘﺤﻀﻴﺮ ﻋﲆ
ﺘﺤﻠﻴﻞ ﺣﻴ ﺚ أن اﻟ
ﺒﻴﺎﻧﺎ ت اﻟﻤﻌﺪةﺗﻘﻠﻞ ﻣﻦ وﻗ ﺖ اﻟ
-اﻟ
ﻣﺮا ت(
ﺑﺄﻛﻤﻠﻪﺘﻌﻼم
ﻓﻘﻂ اﻟﻤﻌﻠﻤﺎ ت ﻓ ﻲ ﻛﻞ ﻣﺮة ،وﻟﻴ ﺲ اﻻﺳ
ﺘﻠﻒ ،
ﺗﻮﻛﻮل ﻣﺨ
ﺑﺮوﺘﺨﺪام
ﺑﺎﺳﺘﻢ إرﺳﺎﻟﻬﺎ ﻻﺣ ًﻘﺎ
ﺘ ﻲﻳ
ﻗﻴﻢ اﻟﻤﻌﻠﻤﺎ ت ،واﻟ
VALUES (؟،؟، ؛)" )؟$ stmt-> bind_param (" sss "، $ lastname، $ email)؛
90
Machine Translated by Google
91
Machine Translated by Google
92
Machine Translated by Google
ﺒﺎر ﻫﺎ
ﺘﻌﻼم SQLوإﺧ
ﺑﺎﺳﺑﻂ اﻟﻤﻌﻠﻤﺎ ت
ﺑﺮﺗﻘﻮم ﻫﺬه اﻟﻮﻇﻴﻔ ﺔ
ﺒﻴﺎﻧﺎ ت اﻟﻤﻌﺪة ﻓ ﻲ • MySQLi
اﻟ
ﺑﻌ ﺔ أﻧﻮاع:
•ﻗﺪﺗﻜﻮن اﻟﻮﺳﻴﻄ ﺔ واﺣﺪة ﻣﻦ أر
ﺘﻘﻠﻴﻞ
ﺑﺘﻮﻗﻊ ،ﻧﻘﻮم
ﺒﻴﺎﻧﺎ ت اﻟﻤ
ﺑﻨﻮع اﻟ
ﺒﺎر mysql
ﺑﺈﺧ
•
ﺣﻘﻦ SQL.
ﺧﻄﺮ 93
(PDO) ﺜﺎل
ﻣ
Machine Translated by Google
:ًﺘﻠﻔ ﺔ ﻗﻠﻴ ﻼ
ﻣﺨPDO ﻃﺮﻳﻘ ﺔ
Prepared_Statements_PDO.php
= "myDBPDO" "اﻟﺠﺬر" ؛ ﻛﻠﻤ ﺔ ﻣﺮور دوﻻر ؛$ = ﺘﺨﺪم
؟<اﺳﻢ اﻟﻤ ﺴphp $ servername = "localhost"؛
host = $ servername ؛dbname = $ dbname"، $ username، $ password) ؛// ؛ "" =ﺟﺮ ب$ dbname
PDO :: ERRMODE_EXCEPTION) ﺜﻨﺎء ؛
ﺘإﱃ اﻻﺳPDO ﺗﻌﻴﻴﻦ وﺿﻊ ﺧﻄﺄ
{ $ conn = new PDO ("mysql:
$ conn-> setAttribute (PDO :: ATTR_ERRMODE،
94
(PDO) ﺜﺎل
ﻣ
Machine Translated by Google
> ﺘﺮوﻧ ﻲ
ﺒﺮﻳﺪ اﻹﻟﻜ
اﻟ$ lastname = "Moe" ؛
ﺗﻨﻔﻴﺬ
$ = "mary@example.com" ؛$ stmt-
() ؛
95
ﺑﻴﺎﻧﺎ ت MySQLﺒﻴﺎﻧﺎ ت ﻣﻦ ﻗﺎﻋﺪة
ﺗﺤﺪﻳﺪﺗﺤﺪﻳﺪا ت اﻟ
Machine Translated by Google
ﺘﺤﺪﻳﺪ ﻋﺪد
ﺘﺨﺪم ﻟ
ُﺴﺷﺮﻃﺎ ﻣﺤﺪودًاﻳ
ً ﺗﻮﻓﺮ MySQL
اﻟ ﺴﺠﻼ ت اﻟﻤﺮاد إرﺟﺎﻋﻬﺎ.
ﺘﺮض أﻧﻨﺎ ﻧﺮﻏ ﺐ ﻓ ﻲﺗﺤﺪﻳﺪ ﺟﻤﻴﻊ اﻟ ﺴﺠﻼ ت ﻣﻦ 1إﱃ )30ﺿﻤﻨﺎً( ﻣﻦ ﺟﺪولﻳ ﺴﻤﻰ "اﻟﻄﻠ
ﺒﺎ ت". اﻓ
ﺘﺎﻟ ﻲ:
ﺑﺎﻟﺸﻜﻞ اﻟﺑﻌﺪ ذﻟﻚ
ﺘﻌﻼم SQL
ﺒﺪو اﺳ
ﺳﻴ
ً
ﺳﺠﻼ.ﺘﻌﻼم SQLأﻋﻼه ،ﺳﻴﻌﻴﺪ أول 30
ﺗﺸﻐﻴﻞ اﺳ
ﺘﺨﺪام OFFSET.
ﺑﺎﺳﺘﻌﺎﻣﻞ ﻣﻊ ﻫﺬا: ﻳﻮﻓﺮ Mysqlأ ً
ﻳﻀﺎ ﻃﺮﻳﻘ ﺔ ﻟﻠ
ﺘﻴﺠ ﺔ:
ﺘﺤﻘﻴﻖ ﻧﻔ ﺲ اﻟﻨ
ﺘﺨﺪام ﺻﻴﻐ ﺔ أﻗﺼﺮ ﻟ ﻳﻤﻜﻨﻚ أ ً
ﻳﻀﺎ اﺳ