php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 05.03.2009, 23:55  
Benutzer
 
Benutzerbild von r-ene
 
Registriert seit: 11.12.2005
Beiträge: 38
r-ene
r-ene eine Nachricht über ICQ schicken
Standard Formularauswertung mit Arrays -> Datensätze ändern

Hi,
folgendes Problem:
Auf meiner Seite gibt es Rätsel, wo Leute Lösungen dazu einschicken können, die dann in einer SQL-Datenbank gespeichert werden.
Jetzt habe ich einen Admin-Bereich hingekriegt, in dem alle Lösungen in einer Tabelle angezeigt werden und bei dem man mittels Radio-Buttons auswählen kann, ob der Lösungsstatus richtig, falsch oder ungültig ist:

Code:
<?
echo '<input type="radio" name="statusaendern['.$row['id'].']" value="1"> Richtig<br>'."\n";
echo '<input type="radio" name="statusaendern['.$row['id'].']" value="2"> Falsch<br>'."\n";
echo '<input type="radio" name="statusaendern['.$row['id'].']" value="3"> Ungültig'."\n";
?>
Ich will das so haben, dass man bei allen Lösungen den Status auf einen Schlag ändern kann.
D.h. man wählt bei jeder Lösung eine der 3 Optionen aus und klickt ganz am Ende auf einen Button, der dann den Status bei allen Lösungen ändert.

Daher versuche ich das mit Arrays, wie der Code zeigt.
Allerdings weiß ich nicht, wie ich dann mit der Auswertung von Arrays verfahren soll.

Könnt ihr mir helfen?
__________________

Die Intelligenz verfolgt dich, aber du bist schneller... Lustige Spiele auf R-ene.de
r-ene ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 06.03.2009, 00:02  
Erfahrener Benutzer
 
Benutzerbild von leonv
 
Registriert seit: 12.01.2009
Beiträge: 344
PHP-Kenntnisse:
Fortgeschritten
leonv befindet sich auf einem aufstrebenden Ast
Standard

Der Ansatz ist schon richtig, wenn du die Variable abfragst, bekommst du nur den ausgewählten Wert übergeben (da sie gleichnamig sind, bilden sie eine Gruppe), welchen du direkt in die Status-Spalte des Eintrags übernehmen kannst.

Dh. einfach eine Schleife für jede $_POST["statusändern".$id] -> wert in DB.Tabelle.$id
__________________
Kreativität und Schöpfung durch Chaos und Ordnung.
leonv ist offline  
Alt 06.03.2009, 00:09  
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

Zitat:
Dh. einfach eine Schleife für jede $_POST["statusändern".$id] -> wert in DB.Tabelle.$id
Richtig ist wohl eher: $_POST['statusändern']

PHP-Code:
foreach ($_POST['statusändern'] as $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  
Alt 06.03.2009, 00:10  
Erfahrener Benutzer
 
Benutzerbild von leonv
 
Registriert seit: 12.01.2009
Beiträge: 344
PHP-Kenntnisse:
Fortgeschritten
leonv befindet sich auf einem aufstrebenden Ast
Standard

Ah wo, hinter dem statusändern muss doch noch ein ". und dann wird mit einer variable mit namenskonvention gearbeitet!
__________________
Kreativität und Schöpfung durch Chaos und Ordnung.
leonv ist offline  
Alt 06.03.2009, 00:11  
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

Die ist der Unterschlüssel des Arrays $_POST['statusändern']

Die ID wurde nicht angefügt, sondern in [] also sozusagen HTML/Javascript Arraystrukturen abgebildet. Bei Dir sähe das so aus:
Code:
name="statusaendern'.$row['id'].'"
@TE: Aber diese Lösung ist die schlechtere.
__________________
--
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  
Alt 06.03.2009, 00:16  
Erfahrener Benutzer
 
Benutzerbild von leonv
 
Registriert seit: 12.01.2009
Beiträge: 344
PHP-Kenntnisse:
Fortgeschritten
leonv befindet sich auf einem aufstrebenden Ast
Standard

ich hatte anfangs nicht so genau hingeguckt, aber ich bin dennoch der Meinung, dass es hier keinen Sinn macht, ein Array zu füllen, da der Key aus der DB gesetzt wird...

Funktionieren würden beide, bei dem einen ruft man den Key ab, bei dem anderen schneidet man die id hinten ab.
__________________
Kreativität und Schöpfung durch Chaos und Ordnung.
leonv ist offline  
Alt 06.03.2009, 00:19  
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

Doch macht es, weil er so die Formdaten direkt durchlaufen kann, ohne vorher noch einmal IDs auslesen zu müssen. Er hat eine festgelegte Anzahl (Array-count), eine fetgelegte Menge (foreach / array_keys).

statusaendern1 und statusaendern5000 sind nicht besser zu handeln, als es abc1 und 5000_xs_uzh_70 wären.
__________________
--
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  
Alt 06.03.2009, 00:21  
Erfahrener Benutzer
 
Benutzerbild von leonv
 
Registriert seit: 12.01.2009
Beiträge: 344
PHP-Kenntnisse:
Fortgeschritten
leonv befindet sich auf einem aufstrebenden Ast
Standard

die ids kann man in einem hiddenfeld übergeben
__________________
Kreativität und Schöpfung durch Chaos und Ordnung.
leonv ist offline  
Alt 06.03.2009, 00:24  
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

Ja, irgendwann haben wir das alle mal so gemacht. Aber warum eine schlechte Lösung, wenn es eine gute gibt. Einfacher als oben gezeigt, kann man es doch nun nicht mehr haben. Das Verfahren ist hier auch noch einmal angerissen: Formularverarbeitung - PHP.de Wiki
__________________
--
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  
Alt 06.03.2009, 00:25  
Benutzer
 
Benutzerbild von r-ene
 
Registriert seit: 11.12.2005
Beiträge: 38
r-ene
r-ene eine Nachricht über ICQ schicken
Standard

Okay ich hab es hinbekommen.
Dankeschön!
__________________

Die Intelligenz verfolgt dich, aber du bist schneller... Lustige Spiele auf R-ene.de
r-ene 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
Mehrere Datensätze updaten, die zuvor durch Checkboxen ausgewählt wurden. peefonic PHP Tipps 2008 4 22.09.2009 11:23
Daten per Formular ändern AJ79 PHP Tipps 2008 1 20.10.2008 21:44
[Erledigt] Fehlende Datensätze bei Ausgabe... Ramona86 Datenbanken 8 04.07.2008 12:12
in zwei arrays die datensätze finden, die einen bestimmten wert gemeinsam haben huedrant PHP Tipps 2008 3 14.05.2008 19:13
mehrere datensätze mit mehreren submits ändern kladotti PHP Tipps 2008 2 27.04.2008 21:43
datensätze defekt oder problem mit dem einlesen? Ministry Datenbanken 4 06.07.2006 18:42
Datensätze ändern toko1284 PHP Tipps 2006 3 18.03.2006 07:29
[Erledigt] 2 Arrays miteinander vergleichen PHP Tipps 2007 3 17.12.2005 16:54
Datensätze ändern PHP Tipps 2007 1 04.12.2005 18:45
Keys eines Arrays ändern Anotherone PHP Tipps 2005-2 7 26.08.2005 12:18
austauschen eines arrays - gästebucheintrag ändern txtfile PHP Tipps 2005-2 12 05.08.2005 14:20
Datensätze kampfnickel PHP Tipps 2005 4 17.01.2005 13:41
Bild für MySQl Datensätze ändern PHP Tipps 2005 3 15.01.2005 11:37
datensätze einer mysql datenbank ändern PHP Tipps 2004 4 25.08.2004 17:54
[Erledigt] Datensätze anzeigen lassen und dann ändern? Datenbanken 3 10.07.2004 13:57

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php array schlüssel per javascript ändern, php formularauswertung, php array keys neu setzen, formulardaten als array in javascript, php array auf ersten datensatz setzen, php datensatz ändern array, php formularauswertung arrays, php array schneidet ab, http://www.php.de/php-einsteiger/52622-formularauswertung-mit-arrays-datensaetze-aendern.html, formularauswertung, php formular id auswerten, formularauswertung javascript, javascript array ändern, php auswertung formular array, php input schneidet ab, auswertung formular mit array php, php radio button array auswerten, php array datensatz ändern, php formular auswerten und verändern, php mit formular array wert ändern

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