שלום,
יש לי בעיה מוזרה בקשר למערכים... אז הקוד הוא ככה ואחרי ההסבר:
PHP קוד:
<html>
<body>
<form method="Post">
<input type="hidden" value="בדיקה">
<input type='checkbox' name='bla[]' value='asd'>
<input type='checkbox' name='bla[]' value='asd2'>
<input type="submit" name="asd" value="Send">
</form>
<?php
if($_POST['asd']){
if( is_array($_POST['bla']) ){
echo "yes<BR>";
foreach($_POST['bla'] as $value)
echo "$value<BR>";
}
else
echo "no";
}
?>
</body>
</html>
אוקיי, אז עשיתי 2 תיבות של CheckBox , ונתתי להם ערך. הערך של הראשון הוא "asd" והערך של הCheckBox השני הוא "asd2". נתתי להם שם זהה, והוספתי את התווים "[]", כך PHP יוצר מערך שבמקרה שלנו זה בשם "bla" . אז "asd" יכנס למערך בשם bla והוא יוצב במקום [0]bla והערך השני שהוא "asd2" יוצב במקום [1]bla .
לאחר מכן עשיתי תנאי שיבדוק האם bla הוא מערך, והוא אמור להיות מערך אם שמנו לו ערכים, אם לא הוא לא יהיה. אז אם bla הוא מערך, זאת אומרת שסימנו CheckBox מסויים. אז אם הוא מערך עשיתי שיכתוב "yes" ואחרי ידפיס לי את כל אחד מהרכיבים שיש במערך bla . אם bla הוא לא מערך אז עשיתי שידפיס לי "no" . בקוד הזה הכל טוב, הוא מדפיס לי yes כשסימנתי וno כשלא.
עכשיו... הכל פה טוב ויפה, אבל מה קורה כשיש את הקוד הבא:
PHP קוד:
<html>
<body>
<form method="Post">
<input type="hidden" value="בדיקה">
<input type='submit' name='asd' value='Send'>
</form>
<?php
echo "<input type='checkbox' name='bla[]' value='asd'>";
echo "<input type='checkbox' name='bla[]' value='asd2'>";
if($_POST['asd']){
if( is_array($_POST['bla']) ){
echo "yes<BR>";
foreach($_POST['bla'] as $value)
echo "$value<BR>";
}
else
echo "no";
}
?>
</body>
</html>
זה אותו קוד רק שמתי את הCheckBoxים בקוד PHP, עכשיו הבעיה היא פה שזה תמיד מדפיס לי "no" נראה לי שהבעיה היא בדרך בה אני מתייחס למערך הזה , אולי בקוד PHP זה אחרת, כי אם הייתי שם גם את הכפתור לחיצה(Submit) בקוד PHP ובודק את אותו התנאי, זה לא היה עושה לי כלום(בדקתי), כי זה לא התייחס אליו כנראה נכון... יש דרך אחרת להתייחס לזה אם זה מקוד PHP? או שאם זה לא זה, מה היא הבעיה פה?
תודה לעוזרים