18. april 2008 - 19:36
Der er
6 kommentarer og 1 løsning
kan ikke finde fejlen ved sletning..
jeg kan ikke finde ud af hvorfor den ikke vil slette i min mysql denne lide lister alle poster i tabel med en slet kan det kan godt være det er en forkert måde at gøre det på men jeg er helt ny idet.. delete_form.php indeholder <? //---------------------- START -------------------------- // forbindelse til sql $conn = mysql_connect("localhost", "root", "online"); // vælg tabel mysql_select_db("mysql",$conn); // opbyd sql $sql = "select * from mylinks order by kategori"; // ---------------------------- SQL !!!! // udfør sql $resultat = mysql_query($sql,$conn) or die(mysql_error()); // Henter data while ($newarray = mysql_fetch_array($resultat)) { echo "<div id=\"subdellinks\">"; echo "<form action=\"fun_del.php\" method=\"post\">"; // giv felterne et navn $id = $newarray['id']; $beskrivelse = $newarray['beskrivelse']; $link = $newarray['link']; $kategori = $newarray['kategori']; // udskrivning til skærm echo "$id" . " - " . "$kategori" . " - " . "$beskrivelse"; echo "<a href=\"$link\">$beskrivelse</a>"; echo " "; echo "<input type=\"submit\" name=\"submit\" value=\"SLET\" class=\"knap\"/>"; echo "</div>"; } //---------------------- SLUT -------------------------- ?> fun_del.php inderholder: <? // forbindelse til sql $conn = mysql_connect("localhost", "root", "online"); // vælg tabel mysql_select_db("mysql",$conn); // definer sql text $sql = 'delete from mylinks where id=\'$_POST[id]\''; // udfør sql text if (mysql_query($sql,$conn)) { echo "Link Slettet"; }else{ echo "Fejl under tilføjelse"; echo die(mysql_error()); } ?>
Annonceindlæg fra Barco
18. april 2008 - 19:52
#1
Prøv at ændre denne linje: $sql = 'delete from mylinks where id=\'$_POST[id]\''; Til: $sql = "delete from mylinks where id=\'$_POST[id]\'"; Det kan også godt være, at du skal lave en stripslashes() på din query, inden du udfører den: $query = stripslashes($sql)
18. april 2008 - 19:59
#2
har ændret fun_del.php <? // forbindelse til sql $conn = mysql_connect("localhost", "root", "online"); // vælg tabel mysql_select_db("mysql",$conn); // definer sql text $sql = "delete from mylinks where id=\'$_POST[id]\'"; $query = stripslashes($sql); // udfør sql text if (mysql_query($query,$conn)) { echo "Link Slettet"; }else{ echo "Fejl under tilføjelse"; echo die(mysql_error()); } ?> og får nu fejl. Notice: Undefined index: id in /Volumes/Mega Stock/PHP SERVER/admin/fun_del.php on line 16 Link Slettet
18. april 2008 - 20:29
#3
Okay, vi prøver noget andet.. Lav $sql = "delete from mylinks where id=\'$_POST[id]\'"; om til: $sql = "delete from `mylinks` where id = '$_POST[id]'"; Og fjern $query = stripslashes($sql). Se om det hjælper.
18. april 2008 - 23:02
#4
samme fejl.. er det måde jeg lister dem op på med mange form så den ikke ved hvilken den skal slette eller?
18. april 2008 - 23:13
#5
Du har ikke et felt, der hedder "id", eller bruger ikke method="post", når du tilgår siden med den kode du viser her.
18. april 2008 - 23:29
#6
nej jeg her jo ikke nogle felter da jeg bare liste dem op som tekst med echo...
19. april 2008 - 02:12
#7
langt om længe fandt jeg ud at det.. jeg sætte en echo ind som lavede en hidden input med id nummert i så kunne den finde den :-> Man skal jo lige lære det. begyndte for en uge side... Heino
Vi tilbyder markedets bedste kurser inden for webudvikling