PHP isset funktioniert nicht mit checkbox
Ich habe ein Formular, wo die Menschen brauchen, um Informationen zu übermitteln. Dieser Teil des Codes funktioniert nicht, wie ich es will und ich weiß nicht warum..
if (!isset($_POST['maandag']) && !isset($_POST['dinsdag']) && !isset($_POST['geenvoork']))
{
echo "Je bent vergeten in te vullen wanneer je aanwezig bent.";
}
Beiträge die Arbeit in den rest des Formulars aus, und richtig sind. Was ich will, ist zu überprüfen, ob diese 3 Checkboxen sind nicht aktiviert. Was mache ich falsch?
Warum spielst du nicht eine radiogroup?
Sie sollten überprüfen, um zu sehen, ob Sie leer sind, nicht festgelegt. Sie sollten immer gesetzt werden, aber wenn Sie nicht markiert sind, werden Sie leer sein.
es sieht gut aus..
Nein, wenn eine checkbox nicht aktiviert ist, ist es nicht in der
Nein, die checkbox senden nichts, wenn es nicht überprüft
Sie sollten überprüfen, um zu sehen, ob Sie leer sind, nicht festgelegt. Sie sollten immer gesetzt werden, aber wenn Sie nicht markiert sind, werden Sie leer sein.
es sieht gut aus..
Nein, wenn eine checkbox nicht aktiviert ist, ist es nicht in der
$_POST
array überhaupt.Nein, die checkbox senden nichts, wenn es nicht überprüft
InformationsquelleAutor Deep Frozen | 2011-08-15
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie in Ihrem Formular, dann werden Sie festgelegt werden. Sie wahrscheinlich wollen, um zu überprüfen, wenn Sie falsch sind. Hier ist, was ist es für eins ist, können Sie kombinieren die anderen:
Zweitens der code da ist, bedeutet, dass Sie nur die Meldung, wenn keine der Checkboxen gesetzt sind. Ich bin mir nicht sicher, aber wenn Sie versuchen, werfen eine Fehlermeldung, die Sie nicht wollen, dass es, wenn einer von Ihnen nicht gesetzt sind? In diesem Fall müssen Sie
||
(oder) nicht&&
(und).Es sollte in der Lage sein zu überprüfen, ob alle 3 Checkboxen sind nicht aktiviert. Wenn Sie nicht aktiviert ist, zeigen Sie die Nachricht. wenn 1 oder mehr überprüft werden, nicht zeigen. Eh, das hat funktioniert: if (!isset($_POST['maandag']) && !$_POST['maandag'] && !isset($_POST['dinsdag']) && !$_POST['dinsdag'] && !isset($_POST['geenvoork']) && !$_POST['geenvoork'])
das ist einfach nur hässlich.
es kann hässlich sein, aber es funktioniert 😉 ich werde versuchen, zu optimieren, einen anderen Tag.. Hauptsache ist jetzt, dass es funktioniert 😀
InformationsquelleAutor Cfreak
Können Sie versuchen, eine
print_r($_POST)
und sehen, was die Werte der Felder sind. Was könnte Ihnen helfen, festzustellen, was Los ist mit Ihrer Einreichung/Feld-Werte.InformationsquelleAutor Jose Vega
ich, was ur Codierung machen erschweren.,,
versuchen wie
senden Sie den Wert und erhalten das Ergebnis
InformationsquelleAutor K6t
Stellen Sie den richtigen Wert für Sie die checkbox in HTML.
Ihre aktuelle akzeptierte Lösung nur erschwert den PHP-code.
InformationsquelleAutor Karoly Horvath
Ich habe gerade eine Prüfung bei einer checkbox, die ich verwende, und hier sind die Werte:
Im Falle, wenn der Eingang aktiviert ist, wird der folgende ergibt:
Im Falle, wenn der Eingang NICHT aktiviert ist:
Daher schlage ich vor, mit empty() Funktion, gleichzeitig überprüfung, ob die variable nicht existiert oder deren Wert gleich FALSE.
Ich denke, es ist immer noch relevant, wie die Lösung und die Funktion selbst ist nicht veraltet. Außerdem könnte jemand es nützlich finden, nicht zu wiederholen Sie den gleichen test noch einmal. Ich verwende fast immer google zu finden, die Lösungen und dann schauen Sie durch die ersten paar Antworten...
InformationsquelleAutor Cr_U
Als prisonor gesagt, Sie müssen zu überprüfen, ob es leer ist(), obwohl, wenn es nicht auf all das könnte Ihnen einen Hinweis.
Wenn Ihr erfordern würde:
Edit: ich dummerle, Ihr Recht, es nicht etwas zurückzugeben. Überprüfen Sie Ihre post mit print_r wie unten geschrieben, klingt wie die beste option.
empty() ist nicht zuverlässig. wenn der Wert der checkbox auf der browser Seite ist '0', empty() true. Jeder Wert in PHP, die umgewandelt werden kann eine leere Zeichenfolge zählt als
empty()
.InformationsquelleAutor Julian
Eigentlich funktionieren sollte...
Könnten Sie jederzeit Ihre checkbox-Wert und insbesondere zu überprüfen, dass dieser Wert wird zurückgegeben:
InformationsquelleAutor Robin Winslow