• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

DELETE from ...

Publisher

Neues Mitglied
Hallo Zusammen

Ich bin gerade dabei MySQL zu lernen und konnte schon erreichen Daten in der Datenbank abzuspeichern und auszugeben :-)

Ich möchte gerne nun aus einer selbst gemachten Datenbank ein ganzer Datensatz löschen. Also eine ganze "Reihe" aller Spalten. Stimmt es das ich eigendlich nur die ID deleten muss damit die ganze Reihe gelöscht wird?

Hier mein Projekt, sollte eine Film-Datenbank werden:
http://dj-sansire.ch/DATES/filme/delete_tests/filme.php

Die Daten werden hier alle sauber ausgelesen.

Mit diesem Formular möchte ich nun einen kompletten Eintrag löschen indem ich die ID eintrage und mit POST absende:

HTML:
<form method="post" action="cancellato.php"> 
  <input type="text" name="id" id="id" /> 
  <input type="submit" name="button" id="button" value="Cancellare" />
</form>
Die cancellato.php Datei:

PHP:
<?php 
//Verbindung zur Datenbank herstellen. 
$server = "localhost"; 
$user = "***"; 
$pw = "***"; 

$verdindung_server = mysql_connect ("$server", "$user", "$pw") or die ("connection failed"); 

mysql_select_db ("film_db") or die ("no database"); 

?> 
 

<?php //Hier sollte die ID gelöscht werden. 

$id =  $_POST['id']; 
 echo "$id"; 
$id = "DELETE FROM Filme WHERE id = '$id'"; 
?>
Die ID die ich Poste wird auch auf cancellato.php ausgegeben, aber der MySQL Befehl scheint wohl nicht zu stimmen da nichts gelöscht wird.

Was mache ich falsch?

Danke für die Feedbacks!
 
Werbung:
Löschen genau einer Zeile: DELETE FROM Filme WHERE id = 'MyId'
Löschen der Werte einer Spalte in allen Zeilen: UPDATE Filme SET Title = Null;
Löschen einer Spalte aus der Tabelle: ALTER TABLE File DROP Title ?
Achtung, der letzte Befehl ändert die Struktur der Tabelle und nicht nur den Inhalt.
 
Zuletzt bearbeitet:
Löschen genau einer Zeile: DELETE FROM Filme WHERE id = 'MyId'

Genau das habe ich ja gemacht oder?

PHP:
<?php //Hier sollte die ID gelöscht werden. 

$id =  $_POST['id']; 
 echo "$id"; 
$id = "DELETE FROM Filme WHERE id = '$id'"; 
?>

Aber die eingegebene Reihen-ID wird nicht gelöscht.
 
Werbung:
PHP:
echo $id; 
$id = "DELETE FROM Filme WHERE id = ".$id;
Quotes haben alle einen Sinn und eine feste Bedeutung, Variablen werden standardmässig nicht in Quotes gesetzt.

Was du mit $id dann weiter machst ist mir nicht ganz klar, der Ausdruck sollte aber funktionieren.
Dein query fehlt noch, dein delete muss an die Datenbank gesendet werden.
 
Zurück
Oben