Hallo alle zusammen,
ich habe folgende tabelle (daten nennt sich diese) in meiner datenbank:
ID
Bemerkung I
Bemerkung II
Bemerkung III
Bemerkung IV
der benutzer klickt im Hauptmenü auf "anzeigen" wodurch folgende php datei ausgeführt wird.
diese zeigt dann alle daten in form von inputfeldern an die in der tabelle drin stehen.
der benutzer hat jetzt die möglichkeit diese daten direkt in dem inputfeld zu ändern und durch klicken des buttons "Änderung übernehmen" wird eine weitere Datei aufgerufen:
man muss dazu sagen das variablen wie $hidden_counter oder $daten_update in einer externen datei gesammelt werden und an die entsprechenden dateien weitergeleitet werden.
Mein problem ist jetzt das der sql befehl nicht klappt. Er sagt mir immer das dass array $daten_update leer ist.
aber wenn ich das array mit print_r ausgebe dann erhalte ich alle Werte. Wo liegt der Fehler?
ich habe folgende tabelle (daten nennt sich diese) in meiner datenbank:
ID
Bemerkung I
Bemerkung II
Bemerkung III
Bemerkung IV
der benutzer klickt im Hauptmenü auf "anzeigen" wodurch folgende php datei ausgeführt wird.
PHP-Code:
<?php
$rows = array("Bemerkung I", "Bemerkung II", "Bemerkung III", "Bemerkung IV");
$abfrage = "SELECT * FROM `daten` ORDER BY ID";
$ergebnis = mysql_query($abfrage);
while($row = mysql_fetch_array($ergebnis))
{
// Werte der SQL-Abfrage an Array
$be1[]= $row ["Bemerkung I"];
$be2[]= $row ["Bemerkung II"];
$be3[]= $row ["Bemerkung III"];
$be4[]= $row ["Bemerkung IV"];
}// While Schleife SQL
echo'
<br />
<div>
<form accept-charset="utf-8" action="update.php" method="post" >
<!-- ÜBERSCHRIFTEN -->
<table cellspacing="4" cellpadding="4">
<tr>
<td id="content_beschriftung">Bemerkung I</td>
<td id="content_beschriftung">Bemerkung II</td>
<td id="content_beschriftung">Bemerkung III</td>
<td id="content_beschriftung">Bemerkung IV</td>
</tr>';
$anzahl_be1 = count($be1);
$anzahl_be2 = count($be2);
$anzahl_be3 = count($be3);
$anzahl_be4 = count($be4);
$anzahl = ($anzahl_be1 + $anzahl_be2 + $anzahl_be3 + $anzahl_be4) / 4;
$x = 0;
$x1 = 1;
$x2 = 2;
$x3 = 3;
$x4 = 4;
while ($counter < $anzahl)
{
echo'
<tr>
<td><input id="content_input" type="text" name="daten'.$x1.'" size="23" maxlength="100" value="'.$be1[$x].'" /></td>
<td><input id="content_input" type="text" name="daten'.$x2.'" size="18" maxlength="100" value="'.$be2[$x].'" /></td>
<td><input id="content_input" type="text" name="daten'.$x3.'" size="18" maxlength="100" value="'.$be3[$x].'" /></td>
<td><input id="content_input" type="text" name="daten'.$x4.'" size="18" maxlength="100" value="'.$be4[$x].'" /></td>
</tr>';
$counter ++;
$x ++;
$x1 += 4;
$x2 += 4;
$x3 += 4;
$x4 += 4;
}
$counter *=4;
echo '<input type="hidden" name="hidden_counter" value="'.$counter.'" />';
echo '</table><input type="submit" name="button_update" value="Änderung Übernehmen" /></form></div>';
?>
diese zeigt dann alle daten in form von inputfeldern an die in der tabelle drin stehen.
der benutzer hat jetzt die möglichkeit diese daten direkt in dem inputfeld zu ändern und durch klicken des buttons "Änderung übernehmen" wird eine weitere Datei aufgerufen:
PHP-Code:
<?php
$bem1 = 0;
$bem2 = 1;
$bem3 = 2;
$bem4 = 3;
while ($counter < $hidden_counter)
{
$aendern = "UPDATE `daten` SET `Bemerkung I` = '$daten_update[$bem1]', `Bemerkung II` = '$daten_update[$bem2]',
`Bemerkung III` = '$daten_update[$bem3]',`Bemerkung IV` = '$daten_update[$bem4]'";
$update = mysql_query($aendern);
$counter ++;
$bem1 += 4;
$bem2 += 4;
$bem3 += 4;
$bem4 += 4;
}
Mein problem ist jetzt das der sql befehl nicht klappt. Er sagt mir immer das dass array $daten_update leer ist.
aber wenn ich das array mit print_r ausgebe dann erhalte ich alle Werte. Wo liegt der Fehler?
Kommentar