Hallo
Es geht um eine Änderung eines bestimmten Datensatzes
Der Script macht folgendes:
Dem Benutzer werden alle Datensätze angezeigt.
Er wählt aus, welchen er ändern möchte.
Er gibt die Änderungen ein.
Er lässt sie durchführen.
Local habe ich die Scripte getestet, dies ging einwandfrei, anschliessend auf einem andern Rechner. Da hatte er Probleme mit den Scripten.
Es kommt die Fehlermeldung:
************************************************************************
Notice: Undefined variable: auswahl in ...........uf16b.php on line 4
Es wurde kein Datensatz ausgewählt
************************************************************************
Warum hat er Probleme mit der Variable Auswahl?
Ich habe die Scripte von der Seite
http://www.valar.ch/~asuzuki/mirror/galileo_php4/kapf.htm#t26
(Hoffe es ist Rechtlich vertretbar)
uf16a.php
***********************************************************************
<html>
<body>
Wählen Sie aus, welcher Datensatz geändert werden soll:<p>
<form action = "uf16b.php" method = "post">
<?php
$db = mysql_connect();
$res = mysql_db_query("firma",
"select * from personen");
$num = mysql_num_rows($res);
// Tabellenbeginn
echo "<table border>";
// Überschrift
echo "<tr> <td>Auswahl</td> <td>Name</td>";
echo "<td>Vorname</td> <td>Personalnummer</td>";
echo "<td>Gehalt</td> <td>Geburtstag</td> </tr>";
for ($i=0; $i<$num; $i++)
{
$nn = mysql_result($res, $i, "name");
$vn = mysql_result($res, $i, "vorname");
$pn = mysql_result($res, $i, "personalnummer");
$ge = mysql_result($res, $i, "gehalt");
$gt = mysql_result($res, $i, "geburtstag");
// Tabellenzeile mit -zellen
echo "<tr> <td><input type='radio' name='auswahl'";
echo " value='$pn'></td> <td>$nn</td> <td>$vn</td>";
echo "<td>$pn</td> <td>$ge</td> <td>$gt</td> </tr>";
}
// Tabellenende
echo "</table>";
mysql_close($db);
?>
<p>
<input type="submit" value="Datensatz anzeigen">
</form>
</body>
</html>
**************************************************************
uf16b.php
*************************************************************
<html>
<body>
<?php
if ($auswahl)
{
$db = mysql_connect();
$sqlab = "select * from personen where";
$sqlab .= " personalnummer = $auswahl";
$res = mysql_db_query("firma", $sqlab);
$altnn = mysql_result($res, 0, "name");
$altvn = mysql_result($res, 0, "vorname");
$altge = mysql_result($res, 0, "gehalt");
$altgt = mysql_result($res, 0, "geburtstag");
echo "Führen Sie die Änderungen durch,<p>";
echo "betätigen Sie anschließend den Button<p>";
echo "<form action = 'uf16c.php' ";
echo " method = 'post'>";
echo "<input name='neunn' value='$altnn'>";
echo " Nachname<p>";
echo "<input name='neuvn' value='$altvn'> ";
echo " Vorname<p>";
echo "<input name='neupn' value='$auswahl'>";
echo " Personalnummer<p>";
echo "<input name='neuge' value='$altge'>";
echo " Gehalt<p>";
echo "<input name='neugt' value='$altgt'>";
echo " Geburtstag<p>";
echo "<input type='hidden' name='oripn' ";
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>
**********************************************************
uf16c.php
********************************************************
<html>
<body>
<?php
$db = mysql_connect();
$sqlab = "update personen set name = '$neunn',";
$sqlab .= "vorname = '$neuvn',";
$sqlab .= "personalnummer = '$neupn',";
$sqlab .= "gehalt = '$neuge',";
$sqlab .= "geburtstag = '$neugt'";
$sqlab .= "where personalnummer = $oripn";
mysql_db_query("firma", $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="uf16a.php">Auswahl</a>
</body>
</html>
**********************************************************
Ich hoffe es kann mir jemand einen Denkanstoss geben.
Vielen Dank im Voraus
Gruss Toasty
Es geht um eine Änderung eines bestimmten Datensatzes
Der Script macht folgendes:
Dem Benutzer werden alle Datensätze angezeigt.
Er wählt aus, welchen er ändern möchte.
Er gibt die Änderungen ein.
Er lässt sie durchführen.
Local habe ich die Scripte getestet, dies ging einwandfrei, anschliessend auf einem andern Rechner. Da hatte er Probleme mit den Scripten.
Es kommt die Fehlermeldung:
************************************************************************
Notice: Undefined variable: auswahl in ...........uf16b.php on line 4
Es wurde kein Datensatz ausgewählt
************************************************************************
Warum hat er Probleme mit der Variable Auswahl?
Ich habe die Scripte von der Seite
http://www.valar.ch/~asuzuki/mirror/galileo_php4/kapf.htm#t26
(Hoffe es ist Rechtlich vertretbar)
uf16a.php
***********************************************************************
<html>
<body>
Wählen Sie aus, welcher Datensatz geändert werden soll:<p>
<form action = "uf16b.php" method = "post">
<?php
$db = mysql_connect();
$res = mysql_db_query("firma",
"select * from personen");
$num = mysql_num_rows($res);
// Tabellenbeginn
echo "<table border>";
// Überschrift
echo "<tr> <td>Auswahl</td> <td>Name</td>";
echo "<td>Vorname</td> <td>Personalnummer</td>";
echo "<td>Gehalt</td> <td>Geburtstag</td> </tr>";
for ($i=0; $i<$num; $i++)
{
$nn = mysql_result($res, $i, "name");
$vn = mysql_result($res, $i, "vorname");
$pn = mysql_result($res, $i, "personalnummer");
$ge = mysql_result($res, $i, "gehalt");
$gt = mysql_result($res, $i, "geburtstag");
// Tabellenzeile mit -zellen
echo "<tr> <td><input type='radio' name='auswahl'";
echo " value='$pn'></td> <td>$nn</td> <td>$vn</td>";
echo "<td>$pn</td> <td>$ge</td> <td>$gt</td> </tr>";
}
// Tabellenende
echo "</table>";
mysql_close($db);
?>
<p>
<input type="submit" value="Datensatz anzeigen">
</form>
</body>
</html>
**************************************************************
uf16b.php
*************************************************************
<html>
<body>
<?php
if ($auswahl)
{
$db = mysql_connect();
$sqlab = "select * from personen where";
$sqlab .= " personalnummer = $auswahl";
$res = mysql_db_query("firma", $sqlab);
$altnn = mysql_result($res, 0, "name");
$altvn = mysql_result($res, 0, "vorname");
$altge = mysql_result($res, 0, "gehalt");
$altgt = mysql_result($res, 0, "geburtstag");
echo "Führen Sie die Änderungen durch,<p>";
echo "betätigen Sie anschließend den Button<p>";
echo "<form action = 'uf16c.php' ";
echo " method = 'post'>";
echo "<input name='neunn' value='$altnn'>";
echo " Nachname<p>";
echo "<input name='neuvn' value='$altvn'> ";
echo " Vorname<p>";
echo "<input name='neupn' value='$auswahl'>";
echo " Personalnummer<p>";
echo "<input name='neuge' value='$altge'>";
echo " Gehalt<p>";
echo "<input name='neugt' value='$altgt'>";
echo " Geburtstag<p>";
echo "<input type='hidden' name='oripn' ";
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>
**********************************************************
uf16c.php
********************************************************
<html>
<body>
<?php
$db = mysql_connect();
$sqlab = "update personen set name = '$neunn',";
$sqlab .= "vorname = '$neuvn',";
$sqlab .= "personalnummer = '$neupn',";
$sqlab .= "gehalt = '$neuge',";
$sqlab .= "geburtstag = '$neugt'";
$sqlab .= "where personalnummer = $oripn";
mysql_db_query("firma", $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="uf16a.php">Auswahl</a>
</body>
</html>
**********************************************************
Ich hoffe es kann mir jemand einen Denkanstoss geben.
Vielen Dank im Voraus
Gruss Toasty