אתה נמצא כאן יסודות השפה  >>  שימוש ב-MySQL  >>  התחברות ל-MySQL

התחברות ל-MySQL

ב-PHP יש פונקציה מיוחדת שמתחברת לשרת של MySQL. פונקציה זו היא mysql_connect(), והיא פועלת כך:

<?php
  $mysql_link=mysql_connect('host','username','password')
/*התחברות לבסיס הנתונים MySQL:
host: שם השרת של MySQL.
username: שם המשתמש.
password: ססמת המשתמש.
*/
 or die("ERROR: cannot connect to MySQL server.");
  echo "connected successfully to MySQL server.";
  mysql_close($mysql_link);
/*סגירת המשאב לבסיס הנתונים MySQL.*/

?>

אנחנו מנסים להתחבר לשרת ה-MySQL שנמצא בשרת 'host' עם שם המשתמש 'username' והסיסמה 'password' (שם המשתמש והססמא לא תמיד נחוצים, תלוי בהרשאות של MySQL. במקרה כזה מתחברים לשרת ה-MySQL ללא ציון של שם משתמש וססמא - פשוט שולחים מחרוזות ריקות). אם ניסיון ההתחברות נכשל אז die() מסיים את התוכנית, ומדפיס את הודעת השגיאה הרשומה בו. אם החיבור הצליח, אז אנו ממשיכים הלאה ומדפיסים את ההודעה כי החיבור הצליח. לבסוף אנו סוגרים את הקישור ע"י הפונקציה mysql_close() שסוגרת את הקישור שהיא מקבלת.

הערך המוחזר מהפונקציה mysql_connect() במקרה של הצלחה בנסיון ההתחברות הוא נתון מסוג משאב, המשמש מעין צינור חיבור בין התוכנית ב-PHP לשרת ה-MySQL. במקרה של כשלון יוחזר, כמובן, הערך FALSE.


תגובות בנושא

יצירת בסיס הנתונים 03-11-01 01:01
 [ללא שם]
#33

אולי תוכל לתת דוגמא ליצירת בסיס נתונים.
כיצד הופכים את כל הטבלאות שיוצרים ע"י create table לבסיס נתונים וכיצד מעלים אותם לרשת?
זזאת על מנת שכשנפתח קשר לmysql יהי לנו בסיס נתונים בו נוכל לבחור...

username & password 08-12-02 19:01
 ZeRo
#383

מאיפה אני אמור לדעת מה הPASSWORD וUSERNAME שלי?

תגובה: username & password 08-12-02 19:02
 אלי חן (מנהל)
#384

אם אתה רוצה להתחבר לשרת MySQL שהתקנת על המחשב האישי שלך, אז בתור ברירת מחדל אין username ואין password. כלומר, אתה שולח מחרוזות ריקות במקום username ו-password. ניתן להוסיף משתמשים ולקבוע ססמאות ל-MySQL ואז לעשות בהם שימוש (אבל אין בזה ממש צורך במחשב הביתי).

כאשר אתה רוצה להתחבר לשרת ה-MySQL הנמצא על שרת מרוחק, אז בדר"כ עליך להשתמש בשם משתמש וססמא כמו שמנהל השרת נתן לך. הרבה פעמים ה-username וה-password ל-MySQL על השרת המרוחק הם בדיוק ה-username וה-password שניתן לך כדי להתחבר לשרת (ב-FTP או TELNET). אם בכל זאת אינך יודע מהם אז שלח בקשה למנהל השרת שיתן לך אותם.

douazulay@bezeqint.net 31-10-02 21:01
 דוד אזולאי
#514

שלום אני משתמש בתוכנת easyPHP 1.7 הכי חדשה אבל אני לא מצליח להתחבר לMySql אני כבר השתגעתי מי שיוכל לעזור לי אני ממש אבל ממש יודה לו זה ממש תוקע אותי לא יכול להתקדם אנה עזרו לי.

כישלון בהתחברות ל-MySQL 31-10-02 22:00
 אלי חן (מנהל)
#519

לא קשה להתחבר ל-MySQL דרך PHP.. צריך רק לדעת את שם השרת (אם זה שרת מקומי, אז בדר"כ אפשר לפנות אליו בתור localhost).. וגם צריך את שם המשתמש והססמא שלך.. והחיבור הוא קל עם הפונקציה mysql_connect.. וזהו!
אם לא מצליח לך.. קודם תבדוק אם אתה מצליח להתחבר ל-MySQL דרך ה-client שלו (לא דרך סקריפט ב-PHP).. ואז תעביר את הנתונים המתאימים לפונקציה ב-PHP וזה אמור לעבוד לך..

לא מבין 31-10-02 23:02
 דוד אזולאי
#525

אני ממש חדש בתחום אז סליחה על הבורות, אך אני אמרור לדעת את שם המשתמש והסיסמה שלי(שרת על המחשב האישי שלי) וגם כשאתה אומר להתחבר לMYSQL דרך client מה זאת אומרת. אני מריץ אותו דרך הmysql_connect וזה זורק אותי ישר אל הפונקציה die אם תוכל לעזור לי להתחבר אל MYSQL אני ממש יודה לך

מה זה השגיאה הזו 01-11-02 00:01
 דוד אזולאי
#534

אני מקבל שגיאה כאשר אני מריצץ דרך חלון דוס השגיאה הי כך:
ERROR 1045: Access denied for user: 'ODBClocalhost' <using password: NO>

קונפיגורציה של MySQL בווינדוס 01-11-02 05:01
 אלי חן (מנהל)
#537

אחרי שמתקינים את MySQL על ווינדוס, אז יש צורך להפעיל את היישום winmysqladmin.exe (הנמצאית בספריית bin תחת הספריה בה הותקנה MySQL). שם תתבקשו להכניס שם משתמש וססמא, והיישום יבנה לכם את קובץ ה-ini של MySQL.

אני גם לא מצליח להתחבר לשרת על המחשב שלי 02-11-02 05:01
 נדב
#604

הגדרתי את השם משתמש והסיסמא בmysql ועדיין זה אומר לי שאין גישה =
ועוד משהו..שאני שם mysql_connect בעמוד כלשהוא ואיתו עוד פקודה לא משנה איזו זה אומר שהיא לא טובה..שאני מוחק את הmysql_connect זה פועל רגיל..

לא מצליח להתחבר! 02-12-03 06:01
 יולו
#711

אני לא בטוח מה ה host,username וה- password
ניסיתי מה שנראה לי וכל הזמן הוא אומר לי
ERRO: cannot connect to MySQL server.
איך אני יכול לבדוק את כל הפרטים כדי שיעבוד לי? תודה יולו.

לא מצליח להתחבר! 02-12-03 07:01
 אלי חן (מנהל)
#714

אי-אפשר סתם לנסות להתחבר למשהו.. צריך לדעת לאן מתחברים ואיך.
כדי להתחבר ל-MySQL, אתה צריך שעל ה-host יהיה מותקן MySQL. אם אתה משתמש ב-localhost בחיבור, אז צריך ש-MySQL יהיה מותקן על המחשב שלך.
אם MySQL מותקן אצלך, אז אתה קובע את שם המשתמש והססמא, אבל הרבה פעמים קורה שעל localhost משאירים את זה ריק. אם MySQL נמצא על שרת אחר, אז תבקש את שם המשתמש והססמא מהאדמין של אותו שרת.

mysql_connect does not exist 09-12-03 04:00
 רביד
#1101

אני עובד בxp עם php5.0.1 ואני מקבל הודעת שגיאה שהפונקציה mysql_connect לא קיימת.
מה הבעייה?
ניסיתי לחפש בפורומים ולא מצאתי מידע שעוזר לי
שאני רושם php -h אין שום בעייה

PHP5 + MySQL 09-12-03 18:02
 אלי חן (מנהל)
#1132

החל מגרסה 5, תמיכה ב-MySQL אינו בנוי בתוך השפה כברירת מחדל (לא built-in). זאת משום שיש ספריה חדשה לטיפול ב-MySQL והיא mysqli_* שעובדת עם MySQL4.1 ומעלה, והיא מהירה יותר מ-mysql_* המיושן (הספריה החדשה היא built-in).
כדי לאפשר את התמיכה בפונקציות mysql_*, יש לעשות:
1. ביוניקס/לינוקס: להוסיף --with-mysql בשורת הקונפיגורציה של PHP.
2. בווינדוס: להוסיף את השורה extension=php_mysql.dll בקובץ ה-INI. (הורידו את ה-;).

localhost 10-12-03 03:01
 ברוך
#1163

היי,
יש לי user name וגם pass ואני מזין אותם כנדרש.
ייתכן שהlocalhost שלי הוא בעל שם אחר.
אך אני יכול לבדוק זואת.

התחברות ל- mySQL 31-10-03 02:01
 רוני
#1178

התקנתי מקומית mysql על חלונות וה- service רץ. אבל אני מריץ את הקוד של grade_connect.php וכל קוד אחר שקיים באתר, אך העמוד לא מציג כלום (כלומר לא הודעת שגיאה ולא שום דבר אחר). מה צריך לעשות כדי שהקודים עם הדטבייס יעבדו ?

localhost 31-10-03 17:01
 אלי חן (מנהל)
#1203

כאשר לא מציינים host או כותבים localhost, אז PHP מנסה להתחבר ל-MySQL על השרת המקומי. ייתכן ו-MySQL אינו מותקן על השרת המקומי שלך.

הודעת שגיאה 31-10-03 17:01
 אלי חן (מנהל)
#1207

תבדוק את הודעות השגיאה ב-error_log שלך.
ב-PHP5 ברירת המחדל היא לא להדפיס שגיאות למסך, אלא לשמור אותם בלוג שגיאות, שבדר"כ נמצא בספרית ההתקנה של PHP.

התחברות... 02-11-03 01:01
 ליאורה
#1289

היי,
הרצתי את הקובץ מספרייה ה - Bin, נתתי שם וסיסמא, ועדיין כשאני מריצה את הפונקציה הוא כותב לי את הודעת השגיאה הבאה:
Warning: mysql_connect(): Access denied for user 'lilev'@'localhost' (using password: YES) in D:ProjectsLearningApacheDocsMyUserTlb.php on line 3
ERROR: cannot connect to MySQL server

אני מריצה את הפונקציה בצורה זו:
$mysql_link=mysql_connect('localhost','*****' ,'*****')
כמובן במקום ה - *** אני מכניסה שם וסיסמא.
אשמח לעזרה!!!
תודה
ליאורה

התחברות ל MS SQL 02-11-03 09:01
 זיו
#1309

שלום רב,
אני עובד עם שרת SQL Server של Microsoft... מהי שורת הפקודה להתחברות לשרת זה...?

פונקציות ה *_mysql 03-11-03 01:01
 איתי קאור
#1341

באיזה קובץ INI צריך להוסיף את
extension=php_mysql.dll

לא מכיר mysql_connect() 01-12-04 13:00
 אסף
#1387

קיבלתי:
Fatal error: Call to undefined function mysql_connect() in C:Program FilesApache GroupApache2htdocstestcon.php on line 2

על הדוגמא שלמעלה.
מה נסגר?

בעיה בתהחברות 02-12-04 03:02
 [ללא שם]
#1417

שלום

אני מנסה להתחבר למיסקל שלי והבעיה היא שאומרל לי שזה לא מותקן על השרת המקומי(localhost) מישהו יודע על איזה שרת אחר זה אמור להיות במקום localhost או איך בודקים?

host 31-10-05 17:02
 ליאור רגב
#2626

איך אני יודע מה ה-'host' שלי??

undefined function mysql_connect 02-11-05 09:00
 רונן יריב
#2641

שלום
יש לי XP עם IIS, התקנתי php 5.1.6 ו-MySQL 5.0.
דפים של php עובדים יופי, אבל כשאני מנסה להשתמש ב-mysql_connect()
אני מקבל הודעה שהפונקציה לא מוכרת.
קובץ php.ini שלי נמצא בספריה WINDOWS, ה-php מותקן ב-c: וספריית extentions נמצאת ב- c:phpext .
בקובץ ה-php.ini יש שורה extention=php_mysql.dll (הורדתי את ה-";" )
ומוגדר המשתנה extension_dir = “c:phpext” .
ניסיתי להעתיק את php_mysql.dll לתיקיית WINOWS וגם ל- c: .
שום דבר לא עזר.

יש למישהו עצה?

תודה
רונן

תגובה ל- #1132 02-11-05 09:01
 רונן יריב
#2642

אלי,
נתקלתי בבעיה בהתחברות וניסיתי לפעול עפ"י הנחיותיך, אך זה לא הספיק.
מסתבר שצריך ב-windows להוסיף ל-system environment variable בשם path את ספריית ה-php (למשל אצלי c:php).

ושוב תודה על המדריכים המפורטים , הברורים והנוחים כל כך לשימוש!

מצאתי את הבעיה לכל מי שלא עובד לו. 01-12-07 05:00
 אלי פיש
#2738

מצאתי את הבעיה לכל מי שעשה את מה שכתוב במדריך ולא הצליח לו.
הבעיה היא שלא הגדרנו את הפורט שדרכו נתחבר לשרת מהPHP..
לכן אחרי שכתבתנו את הHOST של MySQL כמו שכתוב למעלה במדריך צריך להוסיף נקודותיים ואז את הפורט שהגדרנו בהתקנה של MySQL:
$mysql_link=mysql_connect('localhost:10061','root','password') or die ("ERROR: cannot connect to MySQL server.");
echo "Connected successfully to MySQL server.";
mysql_close($mysql_link);

בעיית התקשרות 01-12-07 18:01
 אסנת דדון
#2745

למרות שהשתמשתי בקוד המוצע אין אני יכולה להתחבר ל-mysql. גם שמתי את מספר הפורט, כפי שהציע אחד הקוראים, וזה לא עובד. אני עובדת כרגע עם wamp. מי יכול לעזור?

בבשקה בבקשה עזרה!!! 08-12-08 07:00
 דני דין
#2807

טוב אני די חדש בכל הנושא אז להתחשב..

יש לי שרת עם מאגר נתונים (SQL) אני רוצה להתחבר אליו משרת אחר עם PHP אז אני לא כלכך הצלחתי עם הקוד בבקשה עזרה זה מאוד מאוד מאוד חשוב לי
בקישור הזה אני מתחבר למאגר נתונים:
http://*-*-*-*.local-host.co.il/phpmyadmin/
נגיד השם משתמש AAA
והסיסמה 123456

שאני בשרת עם המאגר אני רושם ככה:
mysql_connect("localhost","AAA","123465*");
אבל אני לא יודע מה לרשום שאני מתחבר משרת אחר
בבקשה בבקשה בבקשה עזרההה
בתודה מראש
דני :)

בעיה בהתחברות ל mysql 05-12-09 17:00
 נעמי בל
#2830

כשאני מתחברת ל mysql הוא אמנם מתחבר, אך שולח לי הודעה כזו-
Notice: Use of undefined constant localhost - assumed 'localhost' in C:wampwwwtesttry2.php on line 2

התחברות לmysql 05-12-09 17:00
 נעמי בל
#2831

תודה לאלי פיש זה אכן הועיל לי


לדף הקודםכללי -הקודם
לתחילת הדףלתחילת הדף
הבא- בחירת בסיס נתוניםלדף הבא