php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger

PHP Einsteiger PHP Problemlösungen für Spracheinsteiger
Archive: 2004, 2004/2, 2005, 2005/2, 2006, 2007, 2008, 2009, 2010,

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 10.01.2012, 12:14  
Neuer Benutzer
 
Registriert seit: 10.01.2012
Beiträge: 9
PHP-Kenntnisse:
Anfänger
painboarder befindet sich auf einem aufstrebenden Ast
Standard Hilfe mit Checkbox

Hallo Leute,

ich habe in meinem html Formular 3 Tabellen mit jeweil einer Checkbox.
Am Ende meines Formulares habe ich einen Button.
Es können mehrere Haken gesetzt werden in den CB und danach sollte der Button gedrückt werden um ein Feedback an eine email schicken zu können.
Dort sollte dann der Name der Tabelle stehen und 1 ob der Haken gesetzt wurde oder 0 ob er nicht gesetzt wurde.
Ich habe jetzt aber keine Ahnung wie ich mein php Formular danach ausrichten soll damit es funktioniert!

ich hoffe ihr könnt/wollt mir tipps geben

mfg painboarder
painboarder ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 10.01.2012, 12:23  
Benutzer
 
Registriert seit: 15.05.2009
Beiträge: 64
StefanRHRO befindet sich auf einem aufstrebenden Ast
Standard

Tabellen und Formulare gehören mal gar nicht zusammen (zumindest in HTML), aber das ist nen anderes Thema...

Zu deiner Frage. Es bietet sich an vor die Checkbox ein Hidden Feld mit dem selben Namen der Checkbox zu setzen. Zum Beispiel so:

Code:
<form method="post" action="datei2.php">
<input type="hidden" name="checkbox1" value="0"/>
<input type="checkbox" name="checkbox1" value="1"/> <input type="submit" />
</form>
Jetzt kannst du nach dem Absenden in datei2.php folgendermaßen auf die "Daten" zugreifen:

PHP-Code:
echo $_POST['checkbox1'// ist 1 wenn Checkbox markiert, sonst 0 
Weil PHP den Inhalt der markierten Checkbox nur kennt, wenn sie markiert ist, macht es Sinn das Hidden Feld davor zu schalten um auf jeden Fall einen Wert für die "Checkbox" zu haben, auch wenn sie nicht markiert wurde.
StefanRHRO ist offline   Mit Zitat antworten
Alt 10.01.2012, 15:41  
Erfahrener Benutzer
 
Benutzerbild von tr0y
 
Registriert seit: 26.07.2010
Beiträge: 4.874
PHP-Kenntnisse:
Fortgeschritten
tr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblick
tr0y eine Nachricht über MSN schicken
Standard

Felder die nicht gesetzt sind identifiziert man anhand ihrer Existenz oder Nicht-Existenz innerhalb von PHP, dafür muss man nicht das Form(ular) mit Sinnlosen Hidden-Feldern zumüllen..
__________________
Lasse mir ohne Anwendung von Gewalt Dinge schenken, Amazon weiß darüber bald mehr.
tr0y ist offline   Mit Zitat antworten
Alt 10.01.2012, 17:22  
Benutzer
 
Registriert seit: 15.05.2009
Beiträge: 64
StefanRHRO befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von tr0y Beitrag anzeigen
Felder die nicht gesetzt sind identifiziert man anhand ihrer Existenz oder Nicht-Existenz innerhalb von PHP, dafür muss man nicht das Form(ular) mit Sinnlosen Hidden-Feldern zumüllen..
Gut denn erklär mir doch jetzt mal die Sinnlosigkeit, bevor du einfach irgendeine Behauptung in den Raum wirfst...
StefanRHRO ist offline   Mit Zitat antworten
Alt 10.01.2012, 17:24  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
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

z.B., dass Du für die Validierung der eintreffenden Daten ohnehin den Vergleich mit gültigen Feldern suchen musst. Folglich Du Daten doppelst.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Alt 10.01.2012, 17:35  
Benutzer
 
Registriert seit: 15.05.2009
Beiträge: 64
StefanRHRO befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von nikosch Beitrag anzeigen
z.B., dass Du für die Validierung der eintreffenden Daten ohnehin den Vergleich mit gültigen Feldern suchen musst. Folglich Du Daten doppelst.
Wo doppel ich denn bitte was? Checkboxen werden in der Regel dazu genutzt um einen Wert als true oder false zu (alles andere empfinde ich als Unsinn) zu deklarieren.

PHP-Code:
if((bool)$_POST['meinecheckbox1'] == true) {  
//mach was
}

//oder von mir aus auch
if((bool)$_POST['meinecheckbox1']) {  
//mach was
}

//und wer es ganz genau machen will
if((bool)$_POST['meinecheckbox1'] === true) {  
//mach was

StefanRHRO ist offline   Mit Zitat antworten
Alt 10.01.2012, 17:57  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
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

Die Information über die IDs, die als Key über POST reinkommen und die Information, welche IDs gültig sind (zur Validierung nötig) erzeugen Redundanz.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Alt 10.01.2012, 18:07  
Benutzer
 
Registriert seit: 15.05.2009
Beiträge: 64
StefanRHRO befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von nikosch Beitrag anzeigen
Die Information über die IDs, die als Key über POST reinkommen und die Information, welche IDs gültig sind (zur Validierung nötig) erzeugen Redundanz.
Hmm ist aber schon gefährlich, nicht zu wissen welche IDs gültig sind und welche nicht! Oder verstehe ich dich jetzt falsch? Ich meine ich kann ja auch nur validieren, ob die Daten korrekt sind, wenn ich weiß wo ich sie herbekomme bzw. wo sie drin stehen...
StefanRHRO ist offline   Mit Zitat antworten
Alt 10.01.2012, 21:22  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
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

Form-Script (Du):
PHP-Code:
$a = array (1,2);
foreach(
$a as $id) {
  
checkbox_and_hidden ('foo[' $id ']');

Action-Script (Du):
PHP-Code:
foreach($_POST['foo'] as $id => $value) {
  
action ($id $value); // aber: was ist, wenn Angreifer value mit $id = 3 übergibt?

Also: Validierung gegen $a (Ausgangsmenge notwendig):
PHP-Code:
$a = array (1,2);
$submitted array_intersect (array_keys ($_POST['foo'] , $a));
foreach(
$submitted as $id) {
  
action ($id $_POST['foo'][$id]); 

Form-Script (Ich):
PHP-Code:
$a = array (1,2);
foreach(
$a as $id) {
  
checkbox ('foo[' $id ']');


Action-Script (Ich):
PHP-Code:
foreach($a as $id) {
  
$value = isset ($_POST['foo'][$id]) ? (bool) $_POST['foo'][$id] : false;
  
action ($id $value); 

__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Alt 11.01.2012, 01:50  
Erfahrener Benutzer
 
Benutzerbild von tr0y
 
Registriert seit: 26.07.2010
Beiträge: 4.874
PHP-Kenntnisse:
Fortgeschritten
tr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblick
tr0y eine Nachricht über MSN schicken
Standard

Zitat:
Zitat von StefanRHRO Beitrag anzeigen
Gut denn erklär mir doch jetzt mal die Sinnlosigkeit, bevor du einfach irgendeine Behauptung in den Raum wirfst...
PHP-Code:
$mycheckbox = isset($_POST['box1']); 
Den "true/false" wünschen entsprechend validiert. $mycheckbox kann jetzt anwendungsweit genutzt werden, hidden-fields sind nicht nötig.

PHP-Code:
$mycheckbox = isset($_POST['box1']) ? $_POST['box1'] : false;
$mycheckbox in_array($mycheckbox$validFieldValues) ? $mycheckbox false
Den "use its value" wünschen entsprechend validiert. $mycheckbox kann jetzt anwendungsweit genutzt werden, hidden-fields sind nicht nötig.
__________________
Lasse mir ohne Anwendung von Gewalt Dinge schenken, Amazon weiß darüber bald mehr.
tr0y 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
Problem mit der Ausrichtung von Checkbox und text NTM HTML, Usability und Barrierefreiheit 9 13.11.2011 23:10
[Erledigt] Brauche Hilfe bei Array mit Checkbox NTM PHP Einsteiger 3 09.11.2011 11:55
funktionsparameter aus Checkbox und Radio Wolf-Tilmann JavaScript, Ajax und mehr 5 31.07.2011 21:57
{HILFE} checkbox in schleife bajo PHP Einsteiger 8 04.07.2011 23:00
[Erledigt] Checkbox Formular anwort.php hilfe schmitti Sonstige 0 10.03.2011 14:10
Brauche Hilfe bei PHP / Onlineshop dennis2k Gewerblich 0 31.01.2011 19:08
Hilfe für Checkbox - Einbau Brodit24 PHP Tipps 2010 3 10.08.2010 02:39
mit "checked" checkbox Inhalte direkt einblenden mod77 JavaScript, Ajax und mehr 4 10.01.2010 17:23
[Erledigt] onclick problem bei checkbox familyman JavaScript, Ajax und mehr 5 31.01.2009 19:39
SQL Multiple Rows Einträge von checkbox values Rilana PHP Tipps 2009 20 29.01.2009 18:57
[Erledigt] Hilfe Beim Formular PHP Tipps 2005 1 06.02.2005 16:43
[Erledigt] HILFE PHP Tipps 2004-2 1 16.12.2004 20:49
[Erledigt] Checkbox Wert übergeben Datenbanken 4 12.08.2004 11:02
[Erledigt] Formularelement Checkbox in Interaktion mit MYSQL Datenbanken 4 13.07.2004 12:14


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