13-04-2005, 07:54
|
מנהל פורומי "תכנות ובניית אתרים" ו"חומרה ורשתות"
|
|
חבר מתאריך: 25.10.01
הודעות: 42,775
|
|
מה שמוזר זה למה אתה מניח שאנחנו מבינים למה אתה מתכוון אם אתה לא מסביר :)
"אם אני שולף אחד אחד" -> שולף מה? אתה לא שולף כאן שום דבר... אתה שולח שאילתא, ובודק כמה נתונים חזרו בה - אבל אתה לא משתמש בנתונים עצמם. טיפ לעתיד: עדיף להשתמש ב SELECT COUNT, כדי שה DB יספור כמה תוצאות יש, ויחזיר רק מספר בודד, במקום את כל המידע שיש בטבלה. אבל זה תעשה אחרי שהדבר הנוכחי יעבוד לך.
האם יש הודעת שגיאה? חייבת להיות הודעת שגיאה כלשהיא. או על שגיאה בשאילתת ה SQL (ואז מה MySQL אמר, תודות לתוספת שלי), או שיש שגיאה ש"לא בחרת שום אפשרות" (מה שאמור לקרות תמיד, כי לא אתחלת מעולם את המשתנה choice$ (אלא אם כן יש לך register_globals = on, ואז חבל על כל בעיות האבטחה. בכל מקרה מומלץ להמיר את זה ל ["GET["choice_$).
אם אין אף הודעת שגיאה, זה אומר שלא הייתה התאמה ל IP ול ID. האם ה ID הוא int בתוך טבלת ה MySQL? אם כן, נסה לשנות את:
קוד PHP:
$selected_id = mysql_escape_string($_GET['id']);
ל:
קוד PHP:
$selected_id = (int) $_GET['id'];
ובשאילתא:
קוד PHP:
$query = mysql_query("SELECT * FROM poll_votes WHERE ip = '{$_SERVER["REMOTE_ADDR"]}' AND id = $selected_id") or die("Problem sending query to MySQL. MySQL Said: ".mysql_error());
|