DELETE bei php

alkaline

Mitglied
Hab mal wieder ein Problem...
PHP:
mysql_query("DELETE FROM cds WHERE jahr = ".$_REQUEST['jahr']."")

Komischerweise fügt er mit diesem Befehl sogar einen Datensatz hinzu...
Mal wieder ein Syntaxfehler?
 
Ein Standard-Fehler, über den ich auch oft gestolpert bin!

Gänsefüßchen können nicht verschachtelt sein , das 2. beendet den DELETE bereits, der Rest fügt offensichtlich den neuen Datensatz an.
Nimm in der Reihenfolge " ' ` ` ' " , (die inneren sind das Akzent-zeichen: bei einer DE-Tastatur neben dem ? )
 
Die Anfuehrungszeichen sind nicht verschachtelt? Wie kommst du darauf? Vor allem muessen sie auch garnicht verschachtelt werden, da Jahr ein Int sein wird, und Ints muessen nicht gequotet sein.
 
PHP:
mysql_query("DELETE FROM cds WHERE jahr = '.$_REQUEST[`jahr´].'");

also so gehts aber leider auch nicht...
Kannst du bitte mal die Zeile korrigieren?
Danke...
 
...also er fuegt weiter fleissig Datensätze ein.
Hier mal der html Teil.

PHP:
<html>
<head>
  <title>test</title>
</head>
<body>
  <form action="hinzufuegen.php" method="post">
   Titel:
    <input type="text" name="titel">
   Interpret:
    <input type="text" name="interpret">
   Jahr:
    <input type="text" name="jahr">
    <p><input type="submit" value="Senden"></p>
  </form>
  <form action="loeschen.php" method="post">
   zu löschendes Jahr:
  	<input type="text" name="jahr">
  	<p><input type="submit" value="Senden"></p>
  </form>
</body>
</html>

wo liegt mein Fehler?
Ich glaube ich komm gar nicht in "loeschen.php" rein. Nur wieso?
 
Zuletzt bearbeitet:
loeschen.php:

PHP:
<?php
  if(isset($_POST['submit'])
  {
    //sql connect
    mysql_query("DELETE FROM `cds` WHERE `jahr` = '".$_POST['jahr']."'"); 
  }
?>

so in etwa sollte deine loeschen.php aussehen
 
Du wirst doch wissen ob Du in der "loeschen.php" landest :confused:
Wenn nicht schreib halt in den Body "Löschen" rein!
Und wenn Du dort ankommst wird das hier ohne den Code der "loeschen.php" zum Stochern im Heuhaufen.
 
Zurück