phpmyadmin - daten löschen aus tabelle mit php

Rafterman82

Grünschnabel
Hallo,

ist nicht mein erster Eintrag zu diesem Thema hier.

Es geth um folgendes:

Habe mit phpmyadmin eine Datenbank und eine Tabelle erstellt. Über php greife ich darauf zu und kann Daten innerhalb der Tabelle erstellen, ändern und löschen. Naja, nich ganz. Erstellen is kein Problem, aber beim Ändern und Löschen gibts paar Probleme. Wenn ich einen Datensatz zum Löschen auswähle, werden ALLE Datensätze gelöscht. Und wenn ich einen bestimmten Datensatz bearbeiten möchte, dann spuckt er mir jedesmal den selben Datensatz aus, den ich nichmal ausgewählt habe.



Das is der Code zur Anzeige der Daten:



PHP:
<?php

require("Verbindung.inc");

$sql = "SELECT Name, Vorname, EMail, Betreff FROM kontakt ORDER BY Name";
$ergebnis = mysql_query($sql, $connect);
$anz_ergebnis = mysql_num_rows($ergebnis);

for($i=0; $i < $anz_ergebnis; $i++) {

$name = mysql_result($ergebnis,$i,'Name');
$vorname = mysql_result($ergebnis,$i,'Vorname');
$email = mysql_result($ergebnis,$i,'EMail');
$betreff = mysql_result($ergebnis,$i,'Betreff');


echo "<tr onMouseOver=\"this.bgColor='#CCFFCC'\" onMouseOut=\"this.bgColor='#FFFFFF'\">";

echo "<td style=\"border-bottom: 1px solid Green; font-family: Verdana; font-size: 10pt;\">" . $name . "</td>";

echo "<td style=\"border-bottom: 1px solid Green; font-family: Verdana; font-size: 10pt;\">" . $vorname . "</td>";

echo "<td style=\"border-bottom: 1px solid Green; font-family: Verdana; font-size: 10pt;\">" . $email . "</td>";

echo "<td style=\"border-bottom: 1px solid Green; font-family: Verdana; font-size: 10pt;\">" . $betreff . "</td>";

echo "<td style=\"border-bottom: 1px solid Green\"><div><form action=\"3Loeschen.php\" method=\"POST\"><input type=\"image\" src=\"drop.png\"></form></div></td>";

echo "<td style=\"border-bottom: 1px solid Green\"><div><form action=\"2Aendern.php\" method=\"POST\"><input type=\"image\" src=\"edit.png\"></form></div></td>";

echo "</tr>";
}

//mysql_free_result($ergebnis);
mysql_close($connect);

?>


Der Code is zum Ändern der Daten:



PHP:
<?php

require("Verbindung.inc");

error_reporting(E_ALL);

extract($_POST);
$sql = "SELECT Name, Vorname, EMail, Betreff FROM kontakt";
$ergebnis = mysql_query($sql, $connect);

$row = mysql_fetch_array($ergebnis);
$name = $row['Name'];
$vorname = $row['Vorname'];
$email = $row['EMail']; 
$betreff = $row['Betreff'];

echo "Name:<br><INPUT type=\"text\" name=\"Name\" size=\"10\" style=\"border:1px solid green\" value=\"" . $name . "\"><BR><BR>";
echo "Vorname:<br><INPUT type=\"text\" name=\"Vorname\" size=\"40\" style=\"border:1px solid green\" value=\"" . $vorname . "\"><BR><BR>";
echo "EMail:<br><INPUT type=\"text\" name=\"EMail\" size=\"40\" style=\"border:1px solid green\" value=\"" . $email . "\"><BR><BR>"; 
echo "Betreff:<br><INPUT type=\"text\" name=\"Betreff\" size=\"40\" style=\"border:1px solid green\" value=\"" . $betreff . "\"><BR><BR>"; 

?>


Das is die zweite Datei zum Ändern:



PHP:
<?php

require("Verbindung.inc");

error_reporting(E_ALL);

$sql = "SELECT Name, Vorname, EMail, Betreff FROM kontakt";

$sql = "UPDATE kontakt SET Name = '".$_POST['Name']."', Vorname = '".$_POST['Vorname']."', EMail = '".$_POST['EMail']."', Betreff = '".$_POST['Betreff']."'";
$aktion = "geändert";

if(mysql_query($sql, $connect)) {
echo "<p style=\"font-family:Verdana; font-size:10pt; color:green\">Kontakt ".$_POST['Vorname']." in der Datenbank " . $aktion . ".</p>";
} else {
echo "<p>Fehler beim Eintragen der Daten: " . mysql_error();
}

mysql_close($connect);

?>


Und das is der Code zum Löschen:



PHP:
<?php

require("Verbindung.inc");

error_reporting(E_ALL);

$sql = "SELECT Name, Vorname, EMail, Betreff FROM kontakt";

extract($_POST);

$sql = "DELETE FROM kontakt";
$aktion = "entfernt";

if(mysql_query($sql, $connect)) {
echo "<p style=\"font-family:Verdana; font-size:10pt; color:green\">Kontakt aus der Datenbank " . $aktion . ".</p>";
} else {
echo "<p>Fehler beim Löschen der Daten: " . mysql_error();
}

mysql_close($connect);

?>
 
Dann schau Dir mal ein paar Threads zum Thema PHP an, oder mal ein/zwei Tutorials. Denn so gut wie ueberall wo es um MySQL geht wird auch WHERE genutzt.

Ansonsten duerfte Dir auch das MySQL-Manual weiterhelfen, genauer der Abschnitt zur SELECT-Syntax.
 
Zurück