php.de

Zurück   php.de > Webentwicklung > JavaScript, Ajax und mehr

JavaScript, Ajax und mehr dynamisches Scripten und Interaktion auf Clientebene

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 08.02.2011, 12:18  
Moderator
 
Benutzerbild von Chriz
 
Registriert seit: 11.05.2008
Beiträge: 6.266
Chriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer Anblick
Standard

Hallo,

wenn du auf jeden Fall willst, dass eine nicht-angeklickte Checkbox auch übertragen wird, solltest du vor die Checkbox ein Hidden-Feld gleichen Namens setzen, das den Defaultwert hält. Das wird dann sozusagen als Fallback verwendet.

Bei Radiofeldern musst du, um eine korrekte Gruppierung zu erreichen eben einen Schlüssel verwenden. Statt "MembershipType[]" eben "MembershipType[0]". Wenn du neue Blöcke erstellst, musst du diesen Index (0) eben anpassen und erhöhen! Das ist letztlich etwas JavaScript-Stringverarbeitung.
__________________
"Nuschel ich?" - "Was?"
Chriz ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 08.02.2011, 12:25  
Erfahrener Benutzer
 
Registriert seit: 15.10.2005
Beiträge: 231
Dilandau kann nur auf Besserung hoffen
Standard

Das mit dem Fallback funktioniert hier nicht:
Code:
Real: <input type="hidden" name="reals[]" /><input type="checkbox" name="reals[]" />
Es werden wenn die checkbox aktiviert ist, beide felder übertragen, also das hidden und die eigentliche checkbox.
Code:
ids%5B%5D=0&names%5B%5D=Andreas+G.+Szabo&abbrevs%5B%5D=AGS&namesinces%5B%5D=1975&nametills%5B%5D=&reals%5B%5D=&reals%5B%5D=on&publics%5B%5D=on
Wenn ich den Wert für MembershipType erhöhe und dann eine Zeile der Mitgliedschaften wieder raus lösche, gibts inkonsistenzen.

ps: könnte ich gelöschte zeilen mit ihren nummern 'drin' lassen (nur das html der zeile löschen) und dan auf der php-seite mit isset() testen, ob zu einem index ein eintrag existiert?
__________________
mobilis in mobili

Geändert von Dilandau (08.02.2011 um 13:39 Uhr).
Dilandau ist offline   Mit Zitat antworten
Alt 08.02.2011, 13:49  
Moderator
 
Benutzerbild von Chriz
 
Registriert seit: 11.05.2008
Beiträge: 6.266
Chriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von Dilandau Beitrag anzeigen
Das mit dem Fallback funktioniert hier nicht:
Code:
Real: <input type="hidden" name="reals[]" /><input type="checkbox" name="reals[]" />
Es werden wenn die checkbox aktiviert ist, beide felder übertragen, also das hidden und die eigentliche checkbox.
Code:
ids%5B%5D=0&names%5B%5D=Andreas+G.+Szabo&abbrevs%5B%5D=AGS&namesinces%5B%5D=1975&nametills%5B%5D=&reals%5B%5D=&reals%5B%5D=on&publics%5B%5D=on
Noch einmal:
Die eckige Klammernsyntax erlaubt die Gruppierung, wird in PHP also als Array zur Verfügung stehen. Wie in PHP auch, wird für [] jeweils automatisch ein neuer Index-Wert erzeugt. Wenn du das gerade vermeiden willst, bei Radio oder beim Checkboxfallback, musst du explizit den Index setzen. Wie habe ich ja bereits für Radioboxen erklärt. Es ist wichtig, dass du das verstehst.


Zitat:
Zitat von Dilandau Beitrag anzeigen
Wenn ich den Wert für MembershipType erhöhe und dann eine Zeile der Mitgliedschaften wieder raus lösche, gibts inkonsistenzen.
Nein, Inkonsistenzen eigentlich nicht, aber ja: Lücken. Aber das macht nichts, da du den Index nur als Gruppierungshilfe verwendest. Wenn du den Array dann über eine foreach()-Schleife durchläufst, kann dir das egal sein, denn dann überspringst du die Lücken ja automatisch. Deshalb solltest du auf eine for()-Schleife verzichten, die läuft dann sonst in die Lücken rein.
__________________
"Nuschel ich?" - "Was?"
Chriz ist offline   Mit Zitat antworten
Alt 08.02.2011, 14:10  
Erfahrener Benutzer
 
Registriert seit: 15.10.2005
Beiträge: 231
Dilandau kann nur auf Besserung hoffen
Standard

Ah jetzt hab ichs begriffen! Danke.

zumindest bis hier. Wenn es noch fragen gibt später, melde ich mich hier zurück.
__________________
mobilis in mobili
Dilandau ist offline   Mit Zitat antworten
Antwort


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] Vorgehensweise Kontrolle von Abhängigkeiten coola PHP Einsteiger 9 21.01.2011 11:20
Vorgehensweise für Auswahlformular von 10 aus 1000 oder mehr Datensätzen? Dilandau Datenbanken 9 20.01.2011 16:47
php design - vorgehensweise kaptainIglo PHP Einsteiger 10 24.12.2010 15:30
Vorgehensweise bei der Umsetzung eines Projektes e.tech Software-Design 10 13.08.2010 14:01
[Erledigt] Vorgehensweise bei Cronjops mcfly232 PHP Tipps 2010 2 24.07.2010 23:59
Kleineres Projekt Datenbankabfrage Tipps für vorgehensweise Beatzler PHP Tipps 2009 2 24.08.2009 15:06
vorgehensweise datenabgleich tomson Datenbanken 1 07.09.2006 11:58
[Erledigt] Vorgehensweise neue Seite HTML, Usability und Barrierefreiheit 1 09.03.2006 10:44
[Erledigt] Vorgehensweise bei großen Datenmengen PHP-Fortgeschrittene 11 16.08.2005 00:19

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
wie funktioniert dilandau, checkbox [], dilandau wie funktioniert, php eingabefeld drinlassen

Alle Zeitangaben in WEZ +2. Es ist jetzt 09:13 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