Hallo, ich habe ein PHP Skript, dass Daten in einer Datenbank ändern soll, nachdem ich den Datensatz zurvor in einer Tabelle ausgewählt habe. Leider funktioniert es nicht ganz, wenn ich im Datensatz bin und dort auf ändern klicke wird immer angezeigt "Der Datensatz wurde nicht geändert". Hat jemand eine Idee wo es dran liegen könnte?
Hier die 3 Skripte:
---------------------------------------------------------------------------
-------------------------------------------------------------------
Hier die 3 Skripte:
PHP-Code:
<html>
<body>
Wählen Sie aus, welcher Datensatz geändert werden soll:<p>
<form action = "change_b.php" method = "post">
<?php
$db = mysql_connect("localhost", "root", "root");
$res = mysql_db_query("flatbed_rate",
"select * from mileage");
$num = mysql_num_rows($res);
// Tabellenbeginn
echo "<table border>";
// Überschrift
echo "<tr><td>Auswahl</td><td>Customer Name</td>";
echo "<td>Postal Code</td> <td>State</td>";
echo "<td>Country</td> <td>OZK</td>";
echo "<td>LAC</td> <td>MGT</td>";
echo "<td>HCK</td> <td>CHS</td></tr>";
for ($i=0; $i<$num; $i++)
{
$Customer_No = mysql_result($res, $i, "Customer_No");
$Customer_Name = mysql_result($res, $i, "Customer_Name");
$ZIP = mysql_result($res, $i, "ZIP");
$State = mysql_result($res, $i, "State");
$Country = mysql_result($res, $i, "Country");
$OZK = mysql_result($res, $i, "OZK");
$LAC = mysql_result($res, $i, "LAC");
$MGT = mysql_result($res, $i, "MGT");
$HCK = mysql_result($res, $i, "HCK");
$CHS = mysql_result($res, $i, "CHS");
// Tabellenzeile mit -zellen
echo "<tr> <td><input type='radio' name='auswahl'";
echo " value='$Customer_No'></td> <td>$Customer_Name</td> <td>$ZIP</td>";
echo "<td>$State</td> <td>$Country</td> <td>$OZK</td>";
echo "<td>$LAC</td><td>$MGT</td><td>$HCK</td><td>$CHS</td></tr>";
}
// Tabellenende
echo "</table>";
mysql_close($db);
?>
<p>
<input type="submit" value="Show Dataset">
</form>
</body>
</html>
PHP-Code:
<html>
<body>
<?php
if ($auswahl)
{
$db = mysql_connect("localhost", "root", "root");
$sqlab = "select * from mileage where";
$sqlab .= " Customer_No = '$auswahl'";
$res = mysql_db_query("flatbed_rate", $sqlab);
$alt_Customer_Name = mysql_result($res, 0, "Customer_Name");
$alt_ZIP = mysql_result($res, 0, "ZIP");
$alt_State = mysql_result($res, 0, "State");
$alt_Country = mysql_result($res, 0, "Country");
$alt_OZK = mysql_result($res, 0, "OZK");
$alt_LAC = mysql_result($res, 0, "LAC");
$alt_MGT = mysql_result($res, 0, "MGT");
$alt_HCK = mysql_result($res, 0, "HCK");
$alt_CHS = mysql_result($res, 0, "CHS");
echo "Führen Sie die Änderungen durch,<p>";
echo "betätigen Sie anschließend den Button<p>";
echo "<form action = 'change_c.php' ";
echo " method = 'post'>";
echo "<input name='neu_Customer_Name' value='$alt_Customer_Name'> ";
echo " Customer Name<p>";
echo "<input name='neu_ZIP' value='$alt_ZIP'>";
echo " Postal Code<p>";
echo "<input name='neu_State' value='$alt_State'>";
echo " State<p>";
echo "<input name='neu_Country' value='$alt_Country'>";
echo " Country<p>";
echo "<input name='neu_OZK' value='$alt_OZK'>";
echo " OZK<p>";
echo "<input name='neu_LAC' value='$alt_LAC'>";
echo " LAC<p>";
echo "<input name='neu_MGT' value='$alt_MGT'>";
echo " MGT<p>";
echo "<input name='neu_HCK' value='$alt_HCK'>";
echo " HCK<p>";
echo "<input name='neu_CHS' value='$alt_CHS'>";
echo " CHS<p>";
echo "<input type='hidden' name='original_Customer_No' ";
echo " value='$auswahl'>";
echo "<input type='submit' ";
echo " value='Änderungen in DB speichern'><p>";
echo "<input type='reset'>";
echo "</form>";
mysql_close($db);
}
else
echo "Es wurde kein Datensatz ausgewählt<p>";
?>
</body>
</html>
PHP-Code:
<html>
<body>
<?php
$db = mysql_connect("localhost", "root", "root");
$sqlab = "update mileage set Customer_Name = '$neu_Customer_Name',";
$sqlab .= "ZIP = '$neu_ZIP',";
$sqlab .= "State = '$neu_State',";
$sqlab .= "Country = '$neu_Country'";
$sqlab .= "OZK = '$neu_OZK'";
$sqlab .= "LAC = '$neu_LAC'";
$sqlab .= "MGT = '$neu_MGT'";
$sqlab .= "HCK = '$neu_HCK'";
$sqlab .= "CHS = '$neu_CHS'";
$sqlab .= "where Customer_No == '$original_Customer_No'";
mysql_db_query("flatbed_rate", $sqlab);
$num = mysql_affected_rows();
if ($num>0)
echo "Der Datensatz wurde geändert<p>";
else
echo "Der Datensatz wurde nicht geändert<p>";
mysql_close($db);
?>
Zurück zur <a href="change_a.php">Auswahl</a>
</body>
</html>
Kommentar