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

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

Rom 23-09-08 22:08

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

נראה לי שהבנתי למה אתה מתכוון:

יש לך קוד HTML כזה:

קוד:

<input type="text" name="array[]" />
<input type="text" name="array[]" />
<input type="text" name="array[]" />

<input type="text" name="array2[]" />
<input type="text" name="array2[]" />
<input type="text" name="array2[]" />

ואתה רוצה להכניס למסד פעם אחת מידע עם הarray הראשון, והarray2 הראשון, פעם שניה עם הarray ה2 והarray2 השני?

אז תעשה דבר כזה:

PHP קוד:


for($i 0$i<3$i++)
echo 
$_POST["array"][$i]; 

או משהו באיזה הזה. כמובן שתשנה את הecho לפקודה של MYSQL.

kfir91 23-09-08 22:12

אין שום HTML שקשור זה הקוד של הטופס שהעלאתי בהודעה הקודמת .
זה שולח לדף שהראתי בהודעה הראשית וזה אמור להוסיף למסד

Rom 23-09-08 22:14

תראה את העריכה של ההודעה הקודמת..

DvirCohen 23-09-08 22:27

תקשיב. אתה יכול להתווכח עד מחר, אבל לולאת foreach חייבת לקבל מערך.
אלא אם כן $_POST['name'] הוא מערך בפני עצמו (והוא לא לפי השאילתה שלך), אין לך מה להמשיך להתווכח, כי מה שאתה עושה לא נכון.

kfir91 23-09-08 22:39

לא נכון אבל עובד :\

kfir91 24-09-08 14:24

ציטוט:

נכתב במקור על ידי Rom (פרסם 669039)
אשמח אם תשלח את החלק HTML שקשור לזה גם.
אולי אני אצליח להבין בבירור למה אתה מתכוון.

נראה לי שהבנתי למה אתה מתכוון:

יש לך קוד HTML כזה:

קוד:

<input type="text" name="array[]" />
<input type="text" name="array[]" />
<input type="text" name="array[]" />

<input type="text" name="array2[]" />
<input type="text" name="array2[]" />
<input type="text" name="array2[]" />

ואתה רוצה להכניס למסד פעם אחת מידע עם הarray הראשון, והarray2 הראשון, פעם שניה עם הarray ה2 והarray2 השני?

אז תעשה דבר כזה:

PHP קוד:


for($i 0$i<3$i++)
echo 
$_POST["array"][$i]; 

או משהו באיזה הזה. כמובן שתשנה את הecho לפקודה של MYSQL.

לא
אני רוצה להכניס רק פעם אחת למסד insert into אחד שבו הוא יכניס את המידע של ה array הראשון, השני , השלישי,הרביעי,החמישי וכו'...

Rom 24-09-08 16:58

אתה יודע מה זה array?

איזה מידע יש לך בתוך ה$_POST["name" אתה יודע?

Sagi 24-09-08 20:30

כפיר מה השגיאה שלך בדיוק?

Sagi 24-09-08 20:40

אני חושב שהבנתי המ אתה רוצה לעשות

דבר ראשון הטופס צריך להיות ככה
PHP קוד:

$query "SELECT * FROM `players` order by number";
$result mysql_query($query $db);
while (
$row=mysql_fetch_array($result)) {
echo 
"<option value=\"$row[id]\">$row[name]</option>";
}
echo 
"</select></td><td class=\"lefttdcheck\"><input type=\"checkbox\" name=\"goals[]\">שער <input type=\"checkbox\" name=\"assists[]\">בישול <input type=\"checkbox\" name=\"open[]\">פתח <input type=\"checkbox\" name=\"yellows[]\">צהוב <input type=\"checkbox\" name=\"reds[]\">אדום <input type=\"text\" name=\"grade[]\">ציון </td></tr>";



עכשיו לאחר השליחה תנסה ככה
PHP קוד:

$count=count($_POST[name]);
for(
$i=0;$count>=$i;$i++){
$name=$_POST[name][$i];
$goals=$_POST[goals][$i];
$assists=$_POST[assists][$i];
$open=$_POST[open][$i];
$yellows=$_POST[yellows][$i];
$reds=$_POST[reds][$i];
$grade=$_POST[grade][$i];
//insert into bla bla


מקווה שעזרתי

kfir91 24-09-08 21:58

עזרת שגיא תודה


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

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