php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2008

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 05.11.2007, 17:49  
Erfahrener Benutzer
 
Benutzerbild von SvenLittkowski
 
Registriert seit: 05.09.2004
Beiträge: 578
SvenLittkowski zeigte ein beschämendes Verhalten in der Vergangenheit
Standard Checkbox: Status (Checked) erkennen

Hallo.

Ich habe mir bereits den Inhalt vom Link http://www.php-faq.de/q/q-formular-checkbox.html durchgelesen, brauche aber dennoch Hilfe.

Zielsetzung:

Mittels PHP will ich nach dem POST-Ereignis diejenigen Checkboxen checked haben, die zuvor vom Benutzer gecheckt wurden.

Problem:

Bis jetzt sind die Checkboxen nach dem POST willkuerlich gecheckt, aber nicht abhaengig ob der Benutzer sie vorher gecheckt hatte...

So sieht es in meinem Code aus:

PHP-Code:
 $MyWelding=$_POST["MyWelding"];

<input type="checkbox" name="MyWelding[0]" value="STIG"<?PHP if($MyWelding[0]) { echo(" checked"); } ?>> STIG
<input type="checkbox" name="MyWelding[1]" value="MIG"<?PHP if($MyWelding[1]) { echo(" checked"); } ?>> MIG
<input type="checkbox" name="MyWelding[2]" value="FCAW"<?PHP if($MyWelding[2]) { echo(" checked"); } ?>> FCAW
<input type="checkbox" name="MyWelding[3]" value="TIG"<?PHP if($MyWelding[3]) { echo(" checked"); } ?>> TIG (GTAW)
<input type="checkbox" name="MyWelding[4]" value="Helio Arc"<?PHP if($MyWelding[4]) { echo(" checked"); } ?>> Helio Arc
__________________

Vielen Dank für Eure Zeit, Absicht, Mühe und für Eure Ideen. Grüße,
Sven
SvenLittkowski ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 05.11.2007, 18:03  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.989
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Üblicherweise werden im HTML Teil keine Indizies für die checkboxes vergeben. Sieh Dir bitte nochmal den 2. Fall des geposteten Beispiels an.
nikosch ist offline  
Alt 05.11.2007, 18:30  
Erfahrener Benutzer
 
Benutzerbild von SvenLittkowski
 
Registriert seit: 05.09.2004
Beiträge: 578
SvenLittkowski zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

Hi Nikosch,

danke erstmal fuer Deine Absicht, mir zu helfen.

Ich schaue mir das gepostete Beispiel (http://www.php-faq.de/q/q-formular-checkbox.html) an, aber ich sehe in beiden Faellen die Verwendung von Indexklammern (im ersten Fall mit Index-Nummern, im zweiten Fall ohne). Dort wird gesagt, das erst der Name mit Index diesen Wert als Array erzeugt und damit als Array von PHP eingelesen werden kann. Hast Du das auch gelesen?
Ehrlich gesagt, bin ich nun unsicherer als zuvor.

Um die Sache abzukuerzen, kannst Du mit ein 2-Checkboxen-Beispiel geben, wo ich mittels PHP herausfinden kann, ob die eine und/oder die andere Checkbox zuvor (vor dem POST) gecheckt wurde?

Oder ansonsten umschreibe halt, was ich falsch mache. Ich habe ja ueberhaupt nichts dagegen, die Loesung eigenstaendig zu finden. Nur die Zeit will ich halt immer gerne abkuerzen. Nikosch, vielen Dank.
__________________

Vielen Dank für Eure Zeit, Absicht, Mühe und für Eure Ideen. Grüße,
Sven
SvenLittkowski ist offline  
Alt 05.11.2007, 19:00  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.989
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Sorry, mein Fehler. Hatte vergessen, dass so die Indizies neu vergeben werden.

So funktionierts bei mir im FF
PHP-Code:
<input type="checkbox" name="MyWelding[3]" value="TIG"<?PHP if(false===empty ($MyWelding[3])) { echo(" checked"); } ?>> TIG (GTAW)
In deinem Beispiel oben fehlen (wahrscheinlich fürs Posting) schließende php Begrenzer, form Tags und dementsprechend auch method="POST".
Eine Alternative wäre evtl. auch, 'TIG' usw. einfach als Index-Key zu verwenden. Ebenso kann das _POST Array mit in_array() auf einen bestimmten Inhalt geprüft werden.

Ach ja, noch zwei Anmerkungen.
- besser ist es, checked="checked" zu verwenden
- Du könntest in einer Schleife ein Array erstellen und Dir so die einzelnen Vergleiche in jedem Element sparen.
PHP-Code:
<?
foreach ($MyWelding as $key => $value)
  {
  
$checked[$key] = empty ($value) ? '' 'checked="checked"';
  }

...

?><input type="checkbox" name="MyWelding[3]" <?= $checked[3?>...>
.
nikosch ist offline  
Alt 10.11.2007, 18:58  
Erfahrener Benutzer
 
Benutzerbild von SvenLittkowski
 
Registriert seit: 05.09.2004
Beiträge: 578
SvenLittkowski zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

Nikosch,

super, vielen Dank! Mir ist die Syntax bislang unbekannt gewesen, die Du in allen drei Beispielen verwendest. Aber ich werde lernen. Ja, und Dein Code funktioniert! Ich benutze die allererste Variante (kleines Code-Fenster).
__________________

Vielen Dank für Eure Zeit, Absicht, Mühe und für Eure Ideen. Grüße,
Sven
SvenLittkowski ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Wenn Checkbox checked, dann gibt es ein weiteres Pflichtfeld. pixelprinzessin PHP Tipps 2008 46 28.07.2008 14:11
Checkbox auswerten Exituz23 PHP Tipps 2008 1 03.04.2008 18:31
Aktivieren einer Checkbox aktiviert viele andere Checkboxen buggybugga HTML, Usability und Barrierefreiheit 3 12.03.2007 16:23
Checkbox Text daneben andrew22 HTML, Usability und Barrierefreiheit 7 22.02.2007 16:44
Checkbox jacos PHP Tipps 2006 5 01.04.2006 10:19
[JS] Checkbox setzt andere checkboxen auf checked phpfortgeschrittener HTML, Usability und Barrierefreiheit 2 13.03.2006 17:30
Alle Checkbox per Klick selectieren? becks123 HTML, Usability und Barrierefreiheit 3 25.12.2005 00:26
[Erledigt] Checkbox wert weitergeben PHP Tipps 2007 8 09.12.2005 14:30
Menü mit Unterpunkten supertramp Beitragsarchiv 7 18.10.2005 22:40
[Erledigt] Checkbox via Button steuern HTML, Usability und Barrierefreiheit 2 17.10.2005 09:53
PHP klappmenü PHP Tipps 2005-2 1 15.10.2005 00:31
checkbox .. mehrere werte auslesen bei gleichem namen PHP Tipps 2005-2 9 12.10.2005 15:24
Wie kann ich eine checked Checkbox in die DB eintragen??? LA-Finest PHP Tipps 2005-2 3 06.06.2005 13:36
[Erledigt] Checkbox - Übergabe mehrerer Werte patr1k HTML, Usability und Barrierefreiheit 6 16.03.2005 11:25
Überprüfen ob die Checkbox checked ist? Paulo HTML, Usability und Barrierefreiheit 1 22.11.2004 13:18

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php checked, checked php, php checkbox status, checked> php, php is checked, if checkbox checked php, http://www.php.de/php-tipps-2008/45059-checkbox-status-checked-erkennen.html, ischecked php, checkbox status php, php checked(), is checked php, checked in php, php checkbox gechecked, php checked vorbelegen, php wenn checkbox gecheckt, php status checkbox, php checkbox gecheckt?, php checkbox gecheckt, php if checkbox, checkbox php beispiel

Alle Zeitangaben in WEZ +2. Es ist jetzt 19:10 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.