zeilenweise Updaten

ultrasonic

Erfahrenes Mitglied
Hallo zusammen,
ich sitze wieder einmal vor einem Problem.
ich habe eine tabelle
und ich bekomme es nicht hin ( da ich im Sachen Myqsl/php noch gün hinter den Ohren bin) die ganze Tabelle auf einmal zu Updaten. Also mit einen Save Button

Habe zwar schon die Suche benutzt und auch etwas gefunden das man das in ein Array laden muss etc. aber so ganz haben ich noch nicht den Durchblick wie ich das anstellen

Meine Tabelle hat eine gemeinsamme Locations ID und eine Case ID pro Ziele.

Bitte helft mir mal einer.
Gruß

Ultrasonic
 

Anhänge

  • tabelle.jpg
    tabelle.jpg
    16,4 KB · Aufrufe: 75
Kommt drauf an was du Updaten willst :)

wenn du mehrere DBzeilen mit einem wert Updaten möchtest brauchst du kein Array :)

Die locationsid gibt sicher an welche Zeilen Updedatet werden soll richtig ?

update dietabelle set feldwert='$neuerwert' where locationid = 5

z.b.
 
Hallo zusammen,

nach unzähligen Versuchen und Varriationen habe ich eine einfache Lösung selbst gefunden.
+
hier der code:
PHP:
<?
$db  = mysql_connect  ( 'HOST', 'USERNAME', 'PASS');
  echo mysql_error($db);
if (!mysql_select_db( 'DB'))
      echo mysql_error($db);
?>
<html>
<head>
 <title>mehrere Zeilen Updaten</title>
</head>
<body bgcolor="#FFFFFF" text="#000000" topmargin="0" leftmargin="0" marginheight="0" marginwidth="0">
<form method="post" action="<?echo$PHP_SELF;?>?submit=1">
<?
if($submit){
    $i = 1;
    for($i=1;$i<=$i2;$i=$i+1){
        $ids = $_POST["id$i"];
        $datum = $_POST["datum$i"];
$sql = "UPDATE Tabelle SET datum='$datum' WHERE id='$ids'"
        $query= mysql_query($sql,$db);
    }
}
$ergebnis = mysql_query("SELECT * FROM Tabelle",$db);

?>
<center>Djs Datumsänderung</center>
<div align="center">
<center>
<table border="0" border="0" cellpadding="0" cellspacing="1">
  <tr>
      <td>Datum</td>
  </tr>
<?while ($row = @mysql_fetch_array($ergebnis)){
     $x=$x+1;?>
     <input type="hidden" name="id<?=$x?>" value="<?echo $row[id];?>">
  <tr>
      <td><input type="text" name="datum<?=$x?>" value="<?echo $row[datum];?>"></td>
<?} ?>
  </tr>
 </table>
      <input type="hidden" name="i2"  value="<?=$x;?>">
      <input type="submit" value="&Auml;ndern">
</form>
</center>
</div>


MfG
Ultrasonic
 
Kleiner Tipp, statt:

<input type="hidden" name="id<?=$x?>" value="<?echo $row[id];?>">

Kannste das auch so schreiben:
<input type="hidden" name="id[]" value="<?echo $row[id];?>">

Dann bekommst du ein Array als Ausgabe.

Das kannste dann einfach so abfragen:

foreach($_POST['id'] AS $id) {
echo $id;
}
 
Zurück