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

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

Light-Era.Net || Ronen 19-06-06 12:51

[שאלה] הבאת מספר לא מוגבל של שדות לFORM
 
קטע מהקוד:

PHP קוד:

$count 1;
  echo <<<eof
  <FORM method="POST" action="mail.php?act=send">
  <table border=0 align="center" dir="rtl"><tr>
<td align=center>הוסף לשליחה</td>
<td align=center>קוד מזהה</td>  
<td align=center>שם הלקוח</td>
</tr>
eof;
  include (
"connect.php");
  
$query mysql_query("SELECT * FROM customers");
   
mysql_query("SET NAMES 'hebrew'");
  while (
$row mysql_fetch_array($query))
  {
echo <<<eof
<tr>
<td align=center><input type="checkbox" name="id$count" value=".$row
['email']."></td>
<td align=center>".$row
['id']."</td>
<td align=center>".$row
['fname']."</td>
</tr>
eof;
$count++;
  }

 echo <<<eof
<table><br /><center><INPUT type=\"submit\" value=\"עבור לטופס\" class=\"chartablebutton2\">&nbsp;
<INPUT type=\"reset\" value=\"אפס\"  class=\"chartablebutton2\"></center>
eof; 

יש "אין-סוף" checkboxים ואני צריך לקבל את הVALUE של כולם.
איך אני עושה את זה?

Itay 19-06-06 13:00

נותן להם שמות בסגנון של מערך.. נגיד
name="Nam[1]"
name="Nam[2]"
...

ואז עושה משהו כזה כדי לקבל את כל הערכים:
foreach($_POST['Nam'] as $key => $value)
$Nam = $Nam.", ".$value;

זה יעשה לך רשימה של כל הערכים מופרדים בפסיקים

בניה 19-06-06 13:05

ב"ה

אתה יכול גם לתת להם שם ככה:
קוד:

<input type="checkbox" name="id[]" value=".$row['email'].">
ואז זה יתן לך את התוצאות בתוך המערך .
קוד:

$_GET['id']

Light-Era.Net || Ronen 19-06-06 13:11

וואלה.
עשיתי עם האידי.
אבל חשבתי שזה לא יפעל.
עכשיו כשאני חושב על זה עד הסוף הבעיה נפתרת. :):):)

----------------------
עריכה, לא ממש.
ציטוט:

נכתב במקור על ידי בניה
ב"ה

אתה יכול גם לתת להם שם ככה:
קוד:

<input type="checkbox" name="id[]" value=".$row['email'].">
ואז זה יתן לך את התוצאות בתוך המערך .
קוד:

$_GET['id']

איך אני יריץ בדיקה לכולם, כאילו באיזה לופ אצטרך להשתמש ?

Itay 19-06-06 13:19

תקרא את מה שרשמתי לך..

Light-Era.Net || Ronen 19-06-06 13:34

אפשר לעשות שבמקום שזה יהיה מופרד בפסיק יהיה מופרד בנקודה פסיק (; ).
כי אני עושה שליחה לכל המיילים האלה(כמו משתמשים) אז אני צריך את כולם במשתנה אחד מופרד בנקודה פסיקים..

-------------עריכה-------------


הבנתי איך לשים, שאלה אחרונה מה המשתנה $key ו$value עושים ?

Itay 19-06-06 13:39

אתה יכול לעשות עם זה מה שבא לך.. תראה
PHP קוד:

     $Nam $Nam.", ".$value

זה מכניס לתוך המשתנה $Nam את הערך הקודם של $Nam, ומוסיף לו שם פסיק ואת הערך החדש
אתה יכול במקום השורה שמכניסה ערך חדש ל-$Nam לעשות מה שבא לך.. אתה יכול להפריד שם במקום הפסיק בנקודה פסיק, לרשום שורת שליחת MAIL חדשה או כל דבר אחר שתרצה..
הלולאת foreach הזאת פשוט מפרידה לך את הערכים שהתקבלו במערך $_POST['Nam']

עריכה:
$value - הערך שרשום לך בתיבת checkbox בתוך המאפיין value
$key - המספר של התא במערך (כמו שאמרתי לך, כשאתה רושם נגיד name="Nam[2]" אז $key יהיה 2)

Light-Era.Net || Ronen 19-06-06 14:21

תודה רבה


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

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