Delete will nicht abbrechen

mckani

Erfahrenes Mitglied
Hi ihr.

Also ich hab da wieder mal einen Problem.
unzwar ist es das wenn ich im formular auf Löschen Klicke aber dan eine abfrage kommt "Wollen sie wirklich Löschen"(java) und ich dan auf Abbrechen klicke.
Löscht er es Trozdem.
Hier mal die codes

Code:
<form action="delete.php" method="post">
<input type="hidden" name="id" value="<?echo $_GET['id'];?>">
<input type="submit" name="delete" value="Bestellung Loeschen" onclick=conf()> 
</form>
<script language="JavaScript">
function conf(f)
{
	if (confirm("Sind Sie Sicher das die Bestellung Gelöscht werden soll?"))
		f.submit()
	else
		alert("Löschen Abgebrochen")
}
</script>

die delete.php code
PHP:
<?php
error_reporting(E_ALL); 
require ("db.php");

$query = mysql_query("DELETE FROM mobs WHERE id= ".$_POST['id']);
if(!$query){
    echo 'Die Bestellung Wurde Nicht Gelöscht';
    die(mysql_error());
}else{
    echo 'Die Bestellung Wurde Gelöscht';
}
?>
Ich will natürlich das es nicht löscht :)
Ich hoffe einer von euch kann mir weiter helfen.!?


Ich danke voraus..
 
Zuletzt bearbeitet:
Hallo!

Hmm, ich lösche meine Einträge über ein Textlink (also per GET) und nicht über ein Formular (also POST).
Folgender Code funktioniert bei mir (OK = löschen, Abbrechen = nicht löschen):
PHP:
 echo "<a onclick=\"return confirm('Wirklich löschen?');\" href=".$_SERVER['PHP_SELF']."?action=del&id=".$row['id']."><span class=red>&nbsp;LÖSCHEN&nbsp;</span></a>";
Ich kenn mich zwar NULL mit JavaScript aus, aber evtl. könntest Du mal versuchen dein onklick am Anfang zu setzen:
HTML:
<input onclick=conf().........>
Gruss Dr Dau
 
hi Dr.
Danke dir wieder das du mir hilfst :)

aber wollt dich fragen ob du mir noch dein DELETE befehl zu schicken kannst.
den wenn ich das so mache.
Code:
$query2="DELETE FROM mobs WHERE id=$id";

       //***Daten aus der DB löschen***
               if(mysql_query("$query2"))
               {
     echo '<font face="Arial"><b><h3>News erfolgreich gelöscht</h3></b></font>';
              echo "<meta http-equiv='refresh' content='2; URL=ok.php'>";
               }
               else
               {
         echo '<font face="Arial"><b><h3>Ein Fehler ist beim Löschen aufgetreten</h3></b></font>';
                echo mysql_error();
            echo "<meta http-equiv='refresh' content='8; URL=bad.php'>";
               }

dan löscht er den User automatisch beim seiten aufruf.!
:(
 
Wenn du die Variante vom Doc nimmst, dann dürfte auf die Datei, sofern sie denn eine andere ist, doch bei einem Klick auf abbrechen gar nicht geladen werden?
Oder du macht einfach noch eine if-Abfrage drum..
 
hi acid.
danke für dein antwort..

ich hab das einfach mal so gemacht
PHP:
if ($action =="delete") 
    {
$query = mysql_query("DELETE FROM mobs WHERE id= ".$_GET['id']);
}

und
Code:
<?php echo "<a onclick=\"return confirm('Wirklich löschen?');\" href=".$_SERVER['PHP_SELF']."?action=delete&id=".$row['id']."><span class=red>&nbsp;LÖSCHEN&nbsp;</span></a>"; ?>

nun bekomm ich ein hinweiß auf meiner seite zu sehen wie bekomm ich den weh.
Code:
Notice: Use of undefined constant action - assumed 'action' in /home/www/web79/html/bestell/me/bearbeiten.php on line 29

Obwohl ich jezt löschen abbrechen kann :(:)
 
Zuletzt bearbeitet:
Hi,

Code:
<form action="delete.php" method="post" onsubmit="return conf();">
<input type="hidden" name="id" value="<?echo $_GET['id'];?>">
<input type="submit" name="delete" value="Bestellung Loeschen> 
</form>
<script language="JavaScript">
function conf()
{
	if (confirm("Sind Sie Sicher das die Bestellung Gelöscht werden soll?"))
		return true;
	else
		return false;
}
</script>
sollte es tun (reine JS-Variante, bei "Abbrechen" wird false zurückgegeben, und das Formular nicht verschickt).

Gruß
,
 
jo datic.
Danke du hast meine probleme ganz erlöst :)
thx.. Und natürlich auch danke an die anderen.
 
Auch wenn das Problem nun ja gelöst ist.....
Ein Textlink wird per GET übergeben, folglich habe ich eine entsprechende if-Anweisung:
PHP:
 if($_GET['action'] == "del")
{
mysql_query("DELETE FROM $dbtable WHERE id='".$_GET['id']."';");
mysql_query("OPTIMIZE TABLE $dbtable;");
}
 
Zurück