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

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

Tyler 23-08-13 22:56

איך זה הגיוני איך?? שגיאת SQL שיש בשרת אחד, אבל בשני אין!
 
היי חבר'ה, אני מאוד בלחץ.

אז ככה אחסנתי עד עכשיו על שרת מסוים את האתר שלי. מסיבות כאלה ואחרות עברתי מהשרת לשרת אחסון אחר (HOSTAGTOR)
בשרת הראשון הכל פעל מעולה, בעיקר מערכת ההתחברות שמחוברת למסד דרך MYSQL.
את כל הטבלאות הוצאתי מהPHPMYADMIN בעזרת EXPORT ואז העלתי את אותו המסד לשרת השני של הHOSTAGTOR, לא בעיה נכון?
זה מה שחשבתי

ברגע שהעלתי מחדש את האתר לשרת השני ועדכנתי את כל פרטי המסד החדשים, פתאום פאנל ההתחברות שמחובר למסד כבר לא מתפקד.

הוא מוציא לי אותה שגיאה כל פעם

קוד:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in
ואז את המספר שורה בקובץ..

זה השורה שהוא כל הזמן מתייחס אליה:
קוד:

$mokito = mysql_fetch_array($mokito);
וזאת השורה שיש לפניה:
קוד:

$mokito = mysql_query("SELECT * FROM `sites` ORDER BY ID DESC");
עכשיו זה לא הקובץ היחיד שיש בו את השגיאה הזאת, בעצם כל הקבצים שמתקשרים למסד אם זה קובץ הרשמה או קובץ התחברות או כל קובץ שמתקשר איכשהו למסד יש בו את אותה השגיאה הזאת.

לדוגמא בקובץ אחר יש את אותה השורה עם משתנה אחר:

קוד:

$moki = mysql_query("SELECT * FROM `family` WHERE username='$username'");
$moka = mysql_fetch_array($moki);


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

איך זה הגיוני? לא שיניתי אפילו שורה אחת בקוד!! פשוט העלתי את אותם הקבצים, העלתי את אותו המסד, עדכנתי את הקובץ של הSQL שמחבר בין האתר למסד וזהו..

הנה הקובץ שמחבר בין האתר למסד:
קוד:

<?php
mysql_connect ('localhost','mokito_2014','mok1234ito') or die("ERROR: cannot connect to MySQL server.");;
mysql_select_db('mokito_2014');
?>

אני מאוחסן על Hostagtor כרגע אם זה משנה.


בבקשה תעזרו, תודה!

נ.ב קראתי גם לDATABASE וגם לUSER בDATABASE באותו השם (mokito_2014) ככה שאין שום סיכוי שיש תקלה בקובץ של הMYSQL_CONNECT..

מה דעתכם?


עדכון:

כרגע ניסיתי להעלות את אותם הקבצים של ההרשמה, ההתחברות וכו' לאחסון חינמי עם SQL. העלתי אליו את המסד עדכנתי את כל הפרטים. ונחשו מה? עובד מושלם!

אז מה הבעיה פה?? הבעיה היא בשרת של HOSTAGTOR?

Tomer 24-08-13 03:29

אני משער שהחיבור למסד הנתונים לא מתבצע באמצעות localhost (חיבור לוקלי) אלא באמצעות חיבור מרוחק - בדוק מה ה hostname של שרת ה MySQL ונסה להתחבר אליו.

Tyler 24-08-13 17:42

ציטוט:

נכתב במקור על ידי Tomer (פרסם 881159)
אני משער שהחיבור למסד הנתונים לא מתבצע באמצעות localhost (חיבור לוקלי) אלא באמצעות חיבור מרוחק - בדוק מה ה hostname של שרת ה MySQL ונסה להתחבר אליו.

יש בCPNAEL שלהם "remote mysql" אבל אף פעם לא הבנתי מה זה.. איך אני אמור לבצע את מה שאמרת? הרי בכל שרת ואחסון החיבור מתבצע באמצעות חיבור לוקאלי, וגם בHOSTAGTOR אני כמעט בטוח שהוא מתבצע ככה (קראתי בפורומי תמיכה שלהם).

Tomer 24-08-13 18:00

לא מדובר על ה- Remote MySQL.

יכול להיות שהם משתמשים ב localhost, בדוק את העניין.

Tyler 24-08-13 18:27

ציטוט:

נכתב במקור על ידי Tomer (פרסם 881179)
לא מדובר על ה- Remote MySQL.

יכול להיות שהם משתמשים ב localhost, בדוק את העניין.

זה מה שהם ענו למישהו ששאל איך לחבר את המסד לאתר על האחסון שלהם

ציטוט:



Akshay Rajput
What hostname should i mention in wp-config.php?
Posted: January 30, 2010

HostGator
localhost

וכמו שאתה רואה בקובץ של הMYSQL כן חיברתי את הDB דרך LOCALHOST.
מה שכן, ראיתי בפוסט אחר שהם כתבו, שבREMOTE SQL אני אמור להשתמש בIP של השרת. מה אתה אומר?

Tomer 24-08-13 18:35

Remote MySQL רלוונטי רק במידה ואתה מתחבר למסד הנתונים מרחוק (כלומר, משרת אחר). אם אתה טוען שהשרת MySQL הוא מקומי, האפשרות הזו לא רלוונטית.

השגיאה שאתה מקבל מדברת על בעיה בקבלת הנתונים- יכול להיות שהמסד לא הועבר בשלמותו לשרת ב Hostgator? נסה לייבא מחדש את הנתונים.

MaorD 24-08-13 20:19

בדקת אם מדובר באותו מסד?
יכול להיות שנניח באחד יהיה MSSql ובשני יהיה MySql ובגלל זה לא הכל עובד אותו דבר בדיוק..

Tyler 24-08-13 21:27

ציטוט:

נכתב במקור על ידי MaorD (פרסם 881186)
בדקת אם מדובר באותו מסד?
יכול להיות שנניח באחד יהיה MSSql ובשני יהיה MySql ובגלל זה לא הכל עובד אותו דבר בדיוק..

כן מדובר באותו המסד ב100%.
אני מתחיל לחשוב שאולי השגיאה היא בחיבור לשרתים שלהם, אולי הHOST שלהם הוא לא LOCALHOST.. אין לי מושג מה להגיד

OMG 25-08-13 10:01

ציטוט:

נכתב במקור על ידי Tyler (פרסם 881191)
כן מדובר באותו המסד ב100%.
אני מתחיל לחשוב שאולי השגיאה היא בחיבור לשרתים שלהם, אולי הHOST שלהם הוא לא LOCALHOST.. אין לי מושג מה להגיד

1. שלב ראשון תבדוק את החיבור בלבד, בנוסף תנסה במקום localhost להגדיר את האייפי של השרת שאליו אתה אמור להתחבר.
2. תבדוק ב PHPMyAdmin שגירסאות ה PHP והMySQL זהות לסביבה שבה פיתחת.


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

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