php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 27.04.2008, 17:22  
kladotti
Gast
 
Beiträge: n/a
Standard mehrere datensätze mit mehreren submits ändern

Hallo, ich habe folgendes Problem:
Ich gebe auf einer Seite ein Formular aus, in dem die Datensätze einer mysql Tabelle untereinander (in Textfeldern) angezeigt wird.
Am Ende jeder Zeile ist ein submitbutton eingefügt um eventuell geänderten Datensätze abzuschicken. Die Frage ist jetzt, wie kann ich die einzelnen submitbutton unterscheiden?

Um die Datensätze in der tabelle zu unterscheiden ordne ich jedem Eintrag in der Tabelle einen id autowert zu. So ungefähr dachte ich müsste das Problem zu lösen sein (geht aber nicht):

1)
Datensätze werden aus der SQL Tabelle ausgelesen und in Textfelder gespeicherrt. Funktioniert.


<?php
while ($rows = mysql_fetch_array ($result))
{


$anzahl= mysql_query ("SELECT recid FROM table");


echo "<form action='eingabe_aendern.php' method='post'>";
echo " <tr>\n";
echo " <td>". "<input name='ort' type=' text' value= '". $rows[0]. "'></td>\n";
echo " <td>". "<input name='geschlecht' type='text' value= '". $rows[1]. "'></td>\n";
echo " <td>". "<input name= 'name' type='text' value= '". $rows[2]. "'></td>\n";
echo " <td>". "<textarea name='beschreibung'>". $rows[3]. "</textarea></td>\n";

3) Hier sollen den Submitbuttons hinereinander die recidis zugeordnet werden, um die Button zu identifizieren. (Funktioniert nicht)

if ( int i, i<count($anzahl), i++){
{
echo " <td>". "<input type='submit' name='submit[i]'

value='ändern'>"."</td>";
echo " </tr>\n";
echo "</form>";
}

}
?>

In einer zweiten Datei werden die Änderungen in die Datenbank eingetragen. Bis auf die Unterscheidung der submitbutton funktioniert alles einwandfrei

<?php
if (!empty ($_POST))
{
$name = $_POST["name"];
$senden = $_POST["submit[i]"];
$beschreibung = $_POST["beschreibung"];
$aendern = "UPDATE table Set name='$name', beschreibung='$beschreibung' WHERE (sessionid='$session' AND recid= '$senden')";

$aenderung = mysql_query($aendern);

echo "Ihre Daten wurden geändert";
}
?>

Kann mir vielleicht irgendjemand weiter helfen? Würd mich riesig freuen!!!
 
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 27.04.2008, 17:38  
Erfahrener Benutzer
 
Registriert seit: 16.07.2005
Beiträge: 1.007
PHP-Kenntnisse:
Fortgeschritten
brian johnson befindet sich auf einem aufstrebenden Ast
Standard

zunächst mal: Hallo und Willkommen im PHPfriend.de forum! auch wenn du dir mit dem highlighten mühe gegeben hast, umschließe php code aber beim nächsten mal lieber mit den php bb-code tags. dann werden auch reihennummern hinzugefügt auf die du dich dann beziehen kannst.

dein problem: gib den submit buttons verschiedene namen. dann einfach prüfen per

PHP-Code:
if(isst($_POST['submit_mache_das']))
      elseif(
$_POST['sumit_mach_was_anderes'])) 
und: du kennst die problematik von SQL-Injections, oder?
__________________
PHP4?!?>>>Aktuelle PHP Version: 5.2.11 || 5.3.0
Suse 11.2 *vorfreude*
brian johnson ist offline  
Alt 27.04.2008, 21:43  
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

Und im konkreten Bsp. sind die Indizies nur falsch adressiert. Statt [i]$senden = $_POST["submit"]; ist $senden = $_POST["submit"][$i]; das Mittel der Wahl, wobei $i bspw. eine inkrementierte Int-Variable aus einer Schleife sein kann.
nikosch 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
Verständnisfrage: Aufruf von mehreren Usern vegeta PHP Tipps 2006 2 02.06.2006 15:39
[Erledigt] MySQL Abfrage aus mehreren Tabellen Datenbanken 1 12.04.2005 17:53
Formular mit mehreren Submitbutton DerDesian HTML, Usability und Barrierefreiheit 8 06.04.2005 16:04

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php mehrere datensätze# ändern, php 5.2.11 mysql_fetch_array, wie einzelnen datensatz aus mehreren ändern php, mehrer datensätze ändern php, submit mehrere datensätze, aus mehreren zahlen mehrere sätze machen, 1 formular mehrere datensätze php

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