Hallo!
Kurze Info zu dem Ganzen:
Man kann Daten über ein Formular in die Datenbank schreiben.
Diese sich anzeigen lassen und nun möchte ich, dass man diese auch bearbeiten und löschen kann.
Und da stehe ich nun da mit meinem Problem:
Ich bekomm es leider nicht auf die Reihe, über die id einen Datensatz in der Datenbank zu löschen oder zu editieren.
Mein Code:
playeradmin.php
<table>
<tr>
<td width="5"><strong>ID</strong></td>
<td width="20"><strong>Spielername</strong></td>
<td width="20"><strong>Team</strong></td>
<td width="20"><strong>Formation</strong></td>
<td width="100"><strong>Taktik</strong></td>
<td width="20"><strong>Verbindung</strong></td>
<td width="200"><strong>Spielweise</strong></td>
<td width="100"></td>
<td width="100"></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<?php
error_reporting(E_ALL);
include ("config.php");
$tabelle = "spieler";
$connection = @mysql_connect($host, $user, $password);
$query = "SELECT * FROM $tabelle ORDER BY id DESC";
$result = mysql_db_query ($database, $query, $connection);
while($spieler = mysql_fetch_object ($result)) {
echo " <form method=\"get\" action=\"admin/playeredit\">\n";
echo " <tr>\n";
echo " <td>$spieler->id</td>\n";
echo " <td>$spieler->spielername</td>\n";
echo " <td>$spieler->team</td>\n";
echo " <td>$spieler->formation</td>\n";
echo " <td>$spieler->taktik</td>\n";
echo " <td>$spieler->verbindung</td>\n";
echo " <td>$spieler->spielweise</td>\n";
echo " <td><a href=\"admin/playeredit.php&id=$spieler->id\">editieren</a></td>\n";
echo " <td><a href=\"admin/playerdelete.php&id=$spieler->id\">löschen</a></td>\n";
echo " </tr>\n";
echo " </form>\n";
}
?>
</table>
Die Anzeige läuft Fehlerfrei. Wenn ich nun auf ein editieren beispielsweise gehe von einem Spieler, dann kommt "Objekt nicht gefunden!". In der Adressleiste kommt zwar der Link samt id des Spielers - bspw. admin/playeredit.php&id=13 - allerdings wird diese Seite nicht geöffnet.
Ich mache denke ich irgendetwas Grundlegendes falsch, allerdings habe ich erst begonnen mit php und mysql, deshalb würde ich mich freuen, wenn mich jemand korregieren könnte.
in der playeredit.php steht folgendes, falls das noch hilfreich sein sollte:
<?php
error_reporting(E_ALL);
include ("../config.php");
$tabelle = "spieler";
$connection = @mysql_connect($host, $user, $password);
$query = "SELECT * FROM $tabelle ORDER BY id DESC";
$id = $_GET['id'];
$query = "SELECT * FROM $tabelle WHERE ID='$id'";
$result = mysql_db_query ($database, $query, $connection);
$data = mysql_fetch_array($result);
?>
<form action="playereditaction.php" method="post">
<fieldset>
<legend>Formular</legend>
<table>
<tr>
<td></td>
<td></td>
</tr>
<tr>
<td><label for="spielername">Spielername:</label></td>
<td><input type="text" name="spielername" value="<?php echo $data['spielername']; ?>"></td>
</tr>
<tr>
<td><label for="team">Team:</label></td>
<td><input type="text" name="team" value="<?php echo $data['team']; ?>"></td>
</tr>
<tr>
<td><label for="formation">Formation:</label></td>
<td><input type="text" name="formation" value="<?php echo $data['formation']; ?>"></td>
</tr>
<tr>
<td><label for="taktik">Taktik:</label></td>
<td><input type="text" name="taktik" value="<?php echo $data['taktik']; ?>"></td>
</tr>
<tr>
<td><label for="verbindung">Verbindung:</label></td>
<td><input type="text" name="verbindung" value="<?php echo $data['verbindung']; ?>"></td>
</tr>
<tr>
<td><label for="spielweise">Spielweise:</label></td>
<td><textarea name="spielweise" cols="40" rows="4"><?php echo $data['spielweise']; ?></textarea></td>
</tr>
</table>
<input type="submit" name="SUBMIT" value=" Speichern ">
<input type="hidden" name="id" value="<?php echo $data['id']; ?>">
</fieldset>
</form>
<?php
$ergebnis = mysql_query($query) OR die("Query: <pre>".$query."</pre>\n".
"Fehler: ".mysql_eror());
?>
Grüße