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

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

Panda 24-07-08 16:00

עזרה עם קוד ב-PHP.
 
שלום לכולם.

היום התחלתי לבנות מערכת, וזה כל הזמן אומר שקיימת שגיאה בשאילתה.

PHP קוד:

      $caption $_POST['date'];

      
$text "<br /><br /><font color='#256cac'><b><u>Download all today's music on RapidShare</u></b></font><br /><a href='".$rapid."'>".$rapid."</a><br /><font color='#256cac'>----------------------------------------------------------</font><br /><br /><br />";
      
$text $text.$open.$_POST['song1_n'].$middle.$_POST['song1_l'].$middle2.$_POST['song1_l'].$middle3;
      
$text $text.$open.$_POST['song2_n'].$middle.$_POST['song2_l'].$middle2.$_POST['song2_l'].$middle3;
      
$text $text.$open.$_POST['song3_n'].$middle.$_POST['song3_l'].$middle2.$_POST['song3_l'].$middle3;
      
$text $text.$open.$_POST['song4_n'].$middle.$_POST['song4_l'].$middle2.$_POST['song4_l'].$middle3;
      
$text $text.$open.$_POST['song5_n'].$middle.$_POST['song5_l'].$middle2.$_POST['song5_l'].$middle3;
      
$text $text.$open.$_POST['song6_n'].$middle.$_POST['song6_l'].$middle2.$_POST['song6_l'].$middle3;

$query mysql_query("INSERT INTO music_news (caption,content) VALUES ('$caption','$text')"$db_conn) or die (mysql_error()); 

בדקתי את זה והבעיה שאני מכניס למסד היא בתוכן שיש במשתנה text.

מישהו יכול לעזור בבקשה?
עומר.

daMn 24-07-08 16:10

מה השגיאה שהוא מציג?
ד"א אגב, אתה מודע לזה שכל שורה של $text דורסת את הקודמת אלא אם תשרשר.

Gal Shafrir 24-07-08 16:19

PHP קוד:

$query mysql_query("INSERT INTO music_news (`caption`,`content`) VALUES ('$caption','$text')"$db_conn) or die (mysql_error()); 

תנסה ככה יש מצב שcontent מילה שמורה, אני לא בטוח.

Panda 24-07-08 17:07

ציטוט:

נכתב במקור על ידי daMn (פרסם 653260)
מה השגיאה שהוא מציג?
ד"א אגב, אתה מודע לזה שכל שורה של $text דורסת את הקודמת אלא אם תשרשר.

זה לא דורס.

ותודה גל אבל לצערי זה לא עובד. =\

DvirCohen 24-07-08 17:46

ציטוט:

נכתב במקור על ידי daMn (פרסם 653260)
מה השגיאה שהוא מציג?
ד"א אגב, אתה מודע לזה שכל שורה של $text דורסת את הקודמת אלא אם תשרשר.

זה לא דורס כי בכל פעם שהוא מזין ערך חדש הוא מחיל בו גם את המשתנה $text..

זה כמו שהוא יעשה

PHP קוד:

$name "dvir";
$name "hello $name"

לבעיה שלך
יהיה יותר פשוט לפתור את זה אם תראה מה השגיאה

Panda 24-07-08 18:14

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

Daniel 24-07-08 19:58

אוקיי, אני אסביר לך על "הערות" עצמן בקוד, ומה הבעייה.
במקום
PHP קוד:

$text $text.$open.................. 

תעשה
PHP קוד:

$text .= $open 

י עוד כמה, אבל מאוחר יותר, בכל מקרה, תעשה mysql_real_escape_string על 2 המשתנים

genetrix 24-07-08 20:17

PHP קוד:

$query mysql_query("INSERT INTO music_news (caption,content) VALUES ('$caption','$text')"$db_conn) or die (mysql_error()); 

תעשה את זה ככה :

PHP קוד:

$caption $_POST['date'];

      
$text "<br /><br /><font color='#256cac'><b><u>Download all today's music on RapidShare</u></b></font><br /><a href='".$rapid."'>".$rapid."</a><br /><font color='#256cac'>----------------------------------------------------------</font><br /><br /><br />";
      
$text. = $text.$open.$_POST['song1_n'].$middle.$_POST['song1_l'].$middle2.$_POST['song1_l'].$middle3;
      
$text. = $text.$open.$_POST['song2_n'].$middle.$_POST['song2_l'].$middle2.$_POST['song2_l'].$middle3;
      
$text .= $text.$open.$_POST['song3_n'].$middle.$_POST['song3_l'].$middle2.$_POST['song3_l'].$middle3;
      
$text .= $text.$open.$_POST['song4_n'].$middle.$_POST['song4_l'].$middle2.$_POST['song4_l'].$middle3;
      
$text .= $text.$open.$_POST['song5_n'].$middle.$_POST['song5_l'].$middle2.$_POST['song5_l'].$middle3;
      
$text .= $text.$open.$_POST['song6_n'].$middle.$_POST['song6_l'].$middle2.$_POST['song6_l'].$middle3;

$query mysql_query("INSERT INTO music_news SET caption='".$caption."', content='".$text."'"$db_conn) or die (mysql_error()); 


genetrix 24-07-08 20:46

עוד הערה קטנה , אתה חייב להישתמש ב mysql_escape_vars() לפני שמכניס קוד ל MYSQL

Gal Shafrir 24-07-08 20:50

ציטוט:

נכתב במקור על ידי genetrix (פרסם 653345)
עוד הערה קטנה , אתה חייב להישתמש ב mysql_escape_vars() לפני שמכניס קוד ל MYSQL

אין פונקצייה כזאת, אתה אולי התכוונת לmysql_real_escape_string.

תיקח את השורה של השאילתה ופשוט תדפיס אותה:
PHP קוד:

print $query "INSERT INTO music_news (caption,content) VALUES ('$caption','$text')"

ככה תוכל לראות איזה משתנה בדיוק ריק, בטח יהיו ''.


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

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