Hi!
<form action="[code lang=php]<?php if(isset($_POST['liste'])){include("db.php");$NR = $_POST['liste'];$del= "DELETE FROM TEST WHERE id= '".$NR."' ";$del = mysql_query($del, $connection);}?>
" method="post">[/code]
Formatier das doch mal so, dass man das lesen kann - das wäre wichtiger als die Farbunterstützung des Forums zu verwenden.
<form action="<?php
if(isset($_POST['liste'])){
include("db.php");
$NR = $_POST['liste'];
$del= "DELETE FROM TEST WHERE id= '".$NR."' ";
$del = mysql_query($del, $connection);}
?>" method="post">
das funktioniert auch,
Wenn du im action-Attribut nichts stehen haben willst, solltest du das so notieren, dass das eindeutig ist und nciht irgendwelchen PHP-Code darein verstecken. Strukturiere am besten nach dem EVA-Prinzip (Eingabe, Verarbeitung, Ausgabe). Erst Daten sammeln, dass die Ausgabe in einem Block.
aber meine Frage lautet gibt es hierfür Sicherheitsbedenken,
Natürlich. Wieder mal den Kontextwechsel nicht beachtet. (Und ein sinnloses Umkopieren von $_POST['liste'] nach $NR.)
da z. B. Name der Datenbank-Datei angegegeben ist und wenn auch nur in PHP???
Welche Bedenken hast du denn und welche Datenbank-Datei meinst du? Du fragst einen MySQL-Server, der für dihc eine Blackbox ist. Wie der seine Daten verwaltet und ob der dazu Dateien nimmt, ist für dich nicht von Belang. Da du eine SQL-Injection-Lücke mit DELETE eingebaut hast, kann man alle Daten der Tabelle löschen.
Wäre es besser für ... action=... eine separate Datei anzulegen?
Für welchen Anwendungsfall eigentlich? Was willst du mit dem Code im action-Attribut erreichen?
Lo!