למה הקוד לא עובד?

golanet

New member
למה הקוד לא עובד?

$result = mysql_query("SELECT * FROM **** WHER user=.'"$user."',"$link); if(! $result){ $sql = 'INSERT INTO `****` ( `id` , `user` , `pass` , `email` , `name` ) '; $sql .= 'VALUES ( \'\', $user, $pass, $email, $name );'; $sql .= ''; זה חלק מהוספת נתונים לטבלה וזה לא עובד, למההה??
 

golanet

New member
אופס אני אנסה לסדר

$result = mysql_query("SELECT * FROM **** WHER user=.'"$user."',"$link); if(! $result){ $sql = 'INSERT INTO `****` ( `id` , `user` , `pass` , `email` , `name` ) '; $sql .= 'VALUES ( \'\', $user, $pass, $email, $name );'; $sql .= '';​
 
ניסיון P:

$result = mysql_query("SELECT * FROM **** WHER user=$user,$link); if(! $result){ $sql = 'INSERT INTO `****` ( `id` , `user` , `pass` , `email` , `name`) '; $sql .= 'VALUES ( \'\', $user, $pass, $email, $name );'; $sql .= '';​
 

golanet

New member
זה עדיין לא מכניס נתונים לטבלה!!

זה עדיין לא מכניס נתונים לטבלה!! ניסיתי ולא הצלחתי!!
 

YuvalCo

New member
מן הסתם. . .

את השאילתא שאמורה להכניס נתונים אתה אפילו לא מריץ... אתה צריך לעשות אחריה
$result=mysql_query($sql);​
אחרת, איך אתה רוצה שזה יבצע את זה ?
 

YuvalCo

New member
דרך אגב,

אני ממש לא בטוח שזו הבעיה היחידה.. אני לא כותב את הקודים שלי ככה.. אני לא מבין למה לפרק את זה לחמש שורות (לא שזה מה שעושה את ההבדל, אבל בכ"ז.. לא יותר קל לכתוב את זה פשוט
$query="INSERT INTO `table` (`var1`,`var2`,`var3`) VALUES ('$var1','$var2','$var3')"; $result=mysql_query($query);​
וזהו ? למי תורמת כל החלוקה לשורות וכל הבלאגנים ?
 

MasterNir

New member
סתם שאלה ...

$query="INSERT INTO `table` (`var1`,`var2`,`var3`) VALUES ('$var1','$var2','$var3')"; $result=mysql_query($query);​
החלק שהדגשתי חובה ? כי ראיתי קבצי SQL שלא כתוב בהם את זה ....
 

Xiao Xiao

New member
תלוי בשימוש

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

YuvalCo

New member
המממממממ

שאלה טובה.. אני כותב אותו, אז לא ממש בדקתי מה קורה בלי זה, אבל נדמה לי שמכיוון שיש בד"כ שדה `id` (שמקדם את עצמו) בטבלה, כשאתה מדלג על הגדרת הסדר שבו אתה עומד להכניס את הנתונים, זה יציג שגיאה שהנתונים לא מתאימים לסוג המשתנה.. בגלל זה אני שם שם את המשתנים שאני רוצה (לבד מה id) ומגדיר מה שאני רוצה
.
 

YuvalCo

New member
איזו מהן ? ../images/Emo6.gif

אם במשהו שכתבתי פתרתי לך בעיה, אני בטוח שזו היתה מהקטנות שבבעיותיך
 

MasterNir

New member
ת'אמת ? לא ... זה דיי טקע אותי ...

אבל מצד שני ... בעיה גדולה שלי היא אפילו לא בעיה קטנה בשבילך ... וד"א ... עוד בעיה :
function addband($suspender, $ban_ip, $ban_start, $ban_end, $reason) { $query = "INSERT INTO ".$prefix."_banlist (suspender, ban_ip, ban_start, ban_end, reason) VALUES ('$suspender', '$ban_ip', '$ban_start', '$ban_end', '$reason')"; $result = mysql_query($query); ban() }​
מה לא נכון פה ? הוא אומר לי :
Parse error: parse error, unexpected '}' in C:\WebSite\programs\Apache\Apache2\htdocs\html\admin\modules\ban.php on line 83​
 

MasterNir

New member
רואים על מה ? אני מדבר כשאני אומר

רואים על מה אני מדבר כשאני אומר שאני מתחיל ??? אני ישנה ואני מקווה שזה יעבוד ... 10X
 

golanet

New member
עדיין לא עוזר!!

עדיין לא מוסיף כלום לעזא!!! זה הקוד שיצא לי מכל הבלגן של כולם:
$result = mysql_query("SELECT * FROM **** WHER user=$user",$link); if(! $result){ $query="INSERT INTO `****` (`id`,`user`,`pass`,`email`,`name`,`admin`) VALUES (\'\','$user','$pass','$email','$name','n')"; $result=mysql_query($query); mysql_close($link); print("נוספת בצלחה!");​
 

YuvalCo

New member
חחחחחחחחחחחחחחח

אמרו לו את זה כבר
. וזו לא הבעיה שלו..אני מניח שאת זה הוא תיקן, אחרי שהעירו לו על זה מקודם
הייתי מנסה לבדוק א. ששם הטבלה נכון. ב. שבחרת מסד נתונים.. אם לא, אתה יכול לכתוב
.."INSERT INTO your_db_name.your_table..."​
אם יש הודעת שגיאה, כמובן שחשוב שתצרף ! וגם כמובן תבדוק אם זה בכלל נכנס לתנאי ! (אם זה לא נכנס ל if.. אז מיותר לגמרי לציין שזה לא יעבוד..)
 

GPhoenixX

New member
אוקי אני כמעט בטוח שאני יודע מה הבע

יה* אתה לא יכול להשוות משהו בטבלה למשתנה $user סתם ככה (אלא אם הוא integer) כיון שאז זה מחפש להשוות את הערך של המשתנה $user כטור בטבלה. מה שאתה צריך זה לשים אותו בגרשיים (גרד יחיד * 2) ^^ ככה : '$user'
 

golanet

New member
עדיין לא עובד!!!! אוףףףף!!!

לא יואמן! עדיין לא עובד??? זה מעביר אותי בIF אל הפקודה שלו else הנה הקוד:
$result = mysql_query("SELECT * FROM **** WHERE user='$user'",$link); if(! $result){ $query="INSERT INTO `****` (`id`,`user`,`pass`,`email`,`name`,`admin`) VALUES (\'\','$user','$pass','$email','$name','n')"; $result=mysql_query($query); mysql_close($link); print("נרשמת בהצלחה!"); } else { print("אומנם מילאת את כל הפרטים, אך כנראה שנוצרה בעיה והמשתמש שלך כבר נמצא במערכת אצלנו, אנא בחר אחר, תודה <BR><BR>"); write_form(); };​
 
למעלה