Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Php - MySQL-Datensatz löschen Fehlersuche! (https://www.delphipraxis.net/65928-php-mysql-datensatz-loeschen-fehlersuche.html)

Grolle 22. Mär 2006 13:55


Php - MySQL-Datensatz löschen Fehlersuche!
 
Hallo!
Ich wähle mit folgendem Script einen Datensatz aus:
Delphi-Quellcode:
<form action = "del2.php" method = "post">
<?php
  include "connect.inc.php";
  $res = mysql_query("select * from adressbuch");
  $num = mysql_num_rows($res);

  echo '<table border="1" cellspacing="0" bordercolordark="white" bordercolorlight="black">';
  echo '<tr> <td>

<font face="Arial" size="2">Auswahl</font></p></td> <td>

<font face="Arial" size="2">Name</font></p></td>';
  echo '<td>

<font face="Arial" size="2">Vorname</font></p></td> <td>

<font face="Arial" size="2">Strasse</font></p></td>';
  echo '<td>

<font face="Arial" size="2">PLZ</font></p></td> <td>

<font face="Arial" size="2">Wohnort</font></p></td>';
  echo '<td>

<font face="Arial" size="2">Telefon</font></p></td> <td>

<font face="Arial" size="2">Fax</font></p></td>';
  echo '<td>

<font face="Arial" size="2">Mobil</font></p></td> <td>

<font face="Arial" size="2">E-Mail</font></p></td>';

  while ($dsatz = mysql_fetch_assoc($res))
     {
        echo "<tr>";
        echo "<td><input type='radio' name='auswahl' value='" . $dsatz["name"] . "'></td>";
        echo '<td>

<font face="Arial" size="2">' . $dsatz["name"] . "</font></p></td>";
        echo '<td>

<font face="Arial" size="2">' . $dsatz["vorname"] . "</font></p></td>";
        echo '<td>

<font face="Arial" size="2">' . $dsatz["strasse"] . "</font></p></td>";
        echo '<td>

<font face="Arial" size="2">' . $dsatz["plz"] . "</font></p></td>";
        echo '<td>

<font face="Arial" size="2">' . $dsatz["wohnort"] . "</font></p></td>";
        echo '<td>

<font face="Arial" size="2">' . $dsatz["telefon"] . "</font></p></td>";
        echo '<td>

<font face="Arial" size="2">' . $dsatz["fax"] . "</font></p></td>";
        echo '<td>

<font face="Arial" size="2">' . $dsatz["mobil"] . "</font></p></td>";
        echo '<td>

<font face="Arial" size="2">' . $dsatz["mail"] . "</font></p></td>";
        echo "</tr>";

     }

  // Tabellenende
  echo "</table>";

?>
   



   <input type="submit" value="Datensatz l&ouml;schen">

</form>
Die del2.php die den Datensatz eigentlich löscht sieht so aus:
Delphi-Quellcode:
<html>

<head>
<title>MD Adressbuch 2006 web</title>
</head>

<body>

<?php

if (isset($auswahl))
   {
      include "connect.inc.php";
      $sqlab = "delete from adressbuch where name = $auswahl";
      mysql_query($sqlab);
      $num = mysql_affected_rows();
      if ($num>0)
        echo "Der Datensatz wurde gelöscht!

";
      else
        echo "Der Datensatz wurde nicht gelöscht!

";
   }
else
  echo "Es wurde kein Datensatz ausgewählt!

";
?>

[url="del.php"]Weitere Datensätze löschen...[/url]




[url="index.php"]Zurück zur Übersicht...[/url]


</body>

</html>
Das Problem ist, dass der Datensatz nicht gelöscht wird. Das wird auch so angezeigt.
Wo liegt der Fehler?

Viele Grüße...

mkinzler 22. Mär 2006 14:11

Re: Php - MySQL-Datensatz löschen Fehlersuche!
 
Es fehlen die Quotes (Hochkommas)
SQL-Code:
delete from adressbuch where name = '$auswahl';

Airblader 22. Mär 2006 14:28

Re: Php - MySQL-Datensatz löschen Fehlersuche!
 
Außerdem solltest du unbedingt auf superglobale Variablen umsteigen (Klick und schau dir mal $_POST an) ;)
Stilistisch will ich noch anmerken, dass du die Keywords (SELECT, DELETE, FROM, ...) groß schreiben solltest ;) Ist wie gesagt aber nur Stil.

air

Grolle 22. Mär 2006 14:30

Re: Php - MySQL-Datensatz löschen Fehlersuche!
 
Vielen Dank!:mrgreen:
Gibts für php eigentlich nen Editor, dem sowas auffällt?

Viele Grüße...

Airblader 22. Mär 2006 14:33

Re: Php - MySQL-Datensatz löschen Fehlersuche!
 
Dem was auffällt? Die Hochkommasache?
Nicht dass ich wüsste, da die Hochkommata kein Zwang sind und ein Editor nicht riechen kann welchen Datentyp eine Spalte hat ;)
Ich persönlich empfehle übrigens Proton. Kostenlos und gut ;)

air

s.h.a.r.k 22. Mär 2006 14:36

Re: Php - MySQL-Datensatz löschen Fehlersuche!
 
Es gibt einen recht guten Freeware: den Webcraft (ehem. Webweaver genannt) -> Website. Aber was genau der zurzeit alles kann weiß ich net :wink:

Grolle 22. Mär 2006 14:36

Re: Php - MySQL-Datensatz löschen Fehlersuche!
 
@ airblader
Ja, ich meinte das mit den Hochkommatas. Für mich als
PHP-Neuling wäre auch nen Syntax-Check vorteilhaft.

Viele Grüße...

freak4fun 22. Mär 2006 14:42

Re: Php - MySQL-Datensatz löschen Fehlersuche!
 
Wieso schreibst du denn die ganzen html-Dinger in echos? Das muss doch net sein. ;)

Code:
...
while ($dsatz = mysql_fetch_assoc($res)){ ?>
   <tr>
    <td><input type="radio" name="auswahl" value="<? echo $dsatz["name"]; ?>"></td>
    <td>

<font face="Arial" size="2"><? echo $dsatz["name"]; ?></font></p></td>
    ...
}
MfG
freak

Grolle 22. Mär 2006 14:49

Re: Php - MySQL-Datensatz löschen Fehlersuche!
 
Hi!
Wie gesagt bin PHP-Neuling und lerne gerade ein wenig nach nem Buch!

Viele Grüße...

mkinzler 22. Mär 2006 14:57

Re: Php - MySQL-Datensatz löschen Fehlersuche!
 
Das mit den Hochkommas hat eigentlich nicht direkt mit php zu tun, sondern gehört zum SQL-Standard. Bei Feldern vom Typ CHAR/VARCHAR/TEXT u.ä. müssen die Werte in Hochkommas gesetzt werden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:32 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz