PHP sonrası onay kutusu sorunu

3 Cevap php

i kutularını kullanan bir form var.

<input type="checkbox" name="check[]" value="notsure"> Not Sure, Please help me determine <br /> <input type="checkbox" name="check[]" value="keyboard"> Keyboard <br /> <input type="checkbox" name="check[]" value="touchscreen"> Touch Screen Monitors <br /> <input type="checkbox" name="check[]" value="scales">Scales <br /> <input type="checkbox" name="check[]" value="wireless">Wireless Devices <br />

Ve burada bir dış php dosyasında bu formu işlemek kodudur.

$addequip = implode(', ', $_POST['check']);

Aşağıda bu hatayı almaya devam;


<b>Warning</b>:  implode() [<a href='function.implode'>function.implode</a>]: Invalid arguments passed in <b>.../process.php</b> on line <b>53</b><br />
OK

3 Cevap

Lütfen onay kutularını herhangi işaretli mi? PHP'nin $_POST dizisi yalnızca işaretlediyseniz edilmiş onay kutularını olacak

Lütfen uyarı kullanımını susturmak için bu:

$addequip = implode(', ', empty($_POST['check']) ? array() : $_POST['check'] );

Merhaba ben bu yüzden başka bir hesaptan gönderme hesabıma giriş yapamadık bu soru haberi özgün kullanıcı değilim. Çalışırken birkaç saat sonra ben nasılsa kısmen çalışması yapmayı başardı. Aşağıda modifiye formu html ve onay kutuları için işlem kodu

<input type="checkbox" name="check" value="Touchscreen"> Touchscreen<br>
<input type="checkbox" name="check" value="Keyboard"> Keyboard<br>
<input type="checkbox" name="check" value="Scales"> Scales<br>

Ben bu kadar işe yarayacağını [] kaldırmak zorunda kaldı. Onları görmek istiyorum için de aşağıda tüm sonrası yöntemdir. Her diğer alan ile mükemmel çalışıyor.

<form id="contact_form" action="process.php" method="POST" onSubmit="return processForm()">

Ve aşağıda kutularını işlemek için php kodu. Nedense i $ _POST ['onay'] sadece dizi dönecekti olmadan bir dizi senaryoyu söylemek zorundayız. Diğer tüm yöntemler döner geçersiz argüman geçti hatası önerdi.

$chckbox = array($_POST['check']);
    		    if(is_array($chckbox))
    			{
    			  foreach($chckbox as $addequip) {
    			  $chckbox .="$addequip\n";
    			  }
    			}

Yani bu kod çalışıyor ama bile olursa olsun bilet kaç işaretli sadece 1 onay kutusunun değerini döndürür.