הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   בעיה בחיבור למסד. (https://hosts.co.il/forums/showthread.php?t=69009)

Jonathan Zeierman 31-10-08 18:08

בעיה בחיבור למסד.
 
שלום לכולם,
אז ככה יש לי בעיה בחיבור למסד בשרת של גודדי.
הקוד הוא אותו קוד שמורץ אצלי בשרתים, הקוד אצלי עובד מצויין ומתחבר למסד.
אבל אצלהם הוא לא מתחבר, פניתי אליהם לתמיכה נאמר לי שהבעיה הוא בקוד שלי ולא בשרת שלהם אבל זה מה שמוזר, זהו הקוד:
PHP קוד:

                 $connection mysql_connect("$host","$dbuser","$dbpass")//details to connection to DB
                     
or die ("Couldn't connect to server");

                 
$query "CREATE DATABASE IF NOT EXISTS $dbuser";//create a DB if not exists
                 
$result mysql_query($query)
                      or die(
"Query failed: " mysql_error());

                 
$db mysql_select_db("$dbuser"$connection)//select a db
                     
or die ("Couldn't select database"); 

ובשרת של גודדי הוא מציג לי שגיאה כזו:
קוד:

Warning: mysql_connect(): Lost connection to MySQL server during query
האם הבעיה היא באמת בקוד שלי?

vadimg88 31-10-08 18:20

נסה ככה:

קוד:


                $connection = mysql_connect("$host","$dbuser","$dbpass")//details to connection to DB
                    or die ("Couldn't connect to server");

                $db = mysql_select_db("$dbuser", $connection)//select a db
                    or die ("Couldn't select database"); 


                $query = "CREATE DATABASE IF NOT EXISTS $dbuser";//create a DB if not exists
                $result = mysql_query($query, $connection )
                      or die("Query failed: " . mysql_error());

עריכה שמתי לב שאתה רוצה ליצור מסד אם הוא לא קיים. אז הקוד למעלה לא מוצג בסדר נכון תשתמש בשלך רק תוסיף connection$ כפרמטר שני ל mysql_query

Jonathan Zeierman 31-10-08 18:28

החלטתי לעזוב את פתיחת הטבלה במקרה שאין והנה הקוד ועדיין אותה שגיאה:
PHP קוד:

                 $connection mysql_connect("$host","$dbuser","$dbpass")//details to connection to DB
                     
or die ("Couldn't connect to server");

                 
$db mysql_select_db("$dbuser"$connection)//select a db
                     
or die ("Couldn't select database"); 


vadimg88 31-10-08 18:32

בדרך כלל זה קורה כשהקבצים יושבים במקום אחד והמסד בשרת אחר. נסה להריץ את הבא על המסד שלך:

קוד:

GRANT ALL ON database_name.* TO someuser@111.222.333.444 IDENTIFIED BY 'password';
לשנות את הפרמטרים בהתאם.

Jonathan Zeierman 31-10-08 21:15

אני לא חושב שהבנתי אותך,
PHP קוד:

<?php
include("config.php");
GRANT ALL ON $dbuser.* TO $dbuser@$host IDENTIFIED BY '$dbpass';
                 
$connection mysql_connect("$host","$dbuser","$dbpass")//details to connection to DB
                     
or die ("Couldn't connect to server");

                 
$db mysql_select_db("$dbuser"$connection)//select a db
                     
or die ("Couldn't select database");
?>


vadimg88 31-10-08 21:26

לא תריץ את זה ב PHPMYADMIN או משהו או בסקריפט בנפרד, אתה צריך לעשות את זה רק פעם אחת.

Jonathan Zeierman 31-10-08 21:36

שגיאה בשליחת SQL, כמובן ששיניתי את הפרטים:
PHP קוד:

שאילתת SQL:

GRANT ALL ON user . * TO user@$hostIDENTIFIED BY 'pass'

MySQL אמרתיעוד
#1044 - Access denied for user 'user'@'%' to database 'user' 


vadimg88 31-10-08 21:40

רווח לאחר ה host$ וה host$ הוא לא localhost נכון?

Jonathan Zeierman 01-11-08 09:06

ה- HOST הוא לא LOCAL, אגב לא עובד עם רווח.

vadimg88 01-11-08 12:45

ניסיתי בקוד שלך לשים localhost במקום ה host של godaddy?

לא ממש יודע אם זה קשור או לא אבל נסה גם להגדיל את ההגדרה של max_execution_time בקובץ php.ini

נסה להפעיל את mysql.trace_mode ב php.ini


כל הזמנים הם GMT +2. הזמן כעת הוא 00:38.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ