[JavaScript] Bestätigung

Asmodiel

bLuBbEl!
ID: 246781
L
8 Juli 2006
151
10
hi!
ich habe so ziemlich keine ahnung von javascript, habe mir aber ein php-löschscrpt gebastelt.
Also das php jetzt so ziemlich zweitrangig.
Ich brauche aber folgendes:
Sobald ich die seite sagenwirmal "delete.php" aufrufe, wird das löschscript schon ausgeführt... ABER DAVOR sollte noch ein PopUp kommen, das die Bestätigung verlangt...

Also:
"Willst du die datei auch ganz bestimmt löschen?"
--> "Ja"[script wird ausgeführt] :: "Nein" [script wird nicht ausgeführt, durch ein meta refresh wird eine andere seite aufgerufen.]

Ich hoffe, ihr versteht, was ich meine...

gruß!
asmodiel.
 
icon_rtfm.gif


javascript: confirm()
 
Mit PHP hat das aber gar nichts zu tun.

Geh einfach mit confirm() ran und leite nur im Erfolgsfall um:
HTML:
<a href="#" onclick="if(confirm('Sure ?')) location.href='delete.php';">Delete</a>
 
dankeschön...kannst du mir vllt sagen, was ich statt history.back eingeben muss, um auf die seite "list.php" zu kommen?
 
hmmm...
Also: ich habe das jetzt so gemacht:
PHP:
<script type=text/javascript>
<!--
Check = confirm(\"Willst du die Datei auch ganz bestimmt löschen??\");
if(Check == false) location.href=\"list.php\"();
//-->
</script>
<?php
$get = $_GET['get'];
$path = "uploads/".$get;
// Existiert die $get-datei?
if( !is_file($path) )
 { 
 die( "Datei existiert nicht!" );
 }

if ( unlink($path) ) {
echo "Datei wurde erfolgreich gelöscht! <br>
Du wirst jetzt wieder zur Dateiliste weitergeleitet. 
Falls die Weiterleitung nicht funktioniert, klicke <a href=list.php>HIER</a>
<meta http-equiv=refresh content=\"2; URL=list.php\">";
}
?>


Und jetzt wird die bestätigung garnicht angezeigt 8O
 
Danke, ich habe den fehler gefunden.
Es lag an dem \" ...
NUR: wenn ich jetzt auf "abbrechen/nein" klicke, wird dieses script trotzdem ausgeführt 8O?
 
Du solltest dir echt mal Debugging angewöhnen :roll:
Oder willst du nun jede Zeile nachfragen ?

Wenn du nichts geändert hast, ist auch in der if()-Abfrage noch ein Syntaxfehler.
 
tut mir echt leid, ich habe keinen laufenden/guten/kostenlosen js-debugger gefunden...
Und kommt mir bitte nicht mit dem firefox-addon an, das habe ich als erstes probiert - und es startet auch nach der zweiten reinstallation nicht...-.-

tut mir leid, dass ich ein n00b in sachen js bin, ich weiß, wie stressig es ist, suppert zu geben [mach ich oft genug - im phpBB forum zB ] ^^

gruß!
asmodiel

EDIT://
hat sich FAST erledigt:
Code:
<script type="text/javascript">
<!--
Check = confirm("Willst du die Datei auch ganz bestimmt löschen??");
if(Check == false) location.href="list.php";
//-->
</script>
<?php
$get = $_GET['get'];
$path = "uploads/".$get;
// Existiert die $get-datei?
if( !is_file($path) )
 { 
 die( "Datei existiert nicht!" );
 }

if ( unlink($path) ) {
echo "Datei wurde erfolgreich gelöscht! <br>
Du wirst jetzt wieder zur Dateiliste weitergeleitet. 
Falls die Weiterleitung nicht funktioniert, klicke <a href=list.php>HIER</a>
<meta http-equiv=refresh content=\"2; URL=list.php\">";
}
?>

Jetzt wird es zwar angezeigt, aber beim abbrechen wird die datei trotzdem gelöscht 8O
 
Und kommt mir bitte nicht mit dem firefox-addon an, das habe ich als erstes probiert - und es startet auch nach der zweiten reinstallation nicht...-.-
Ja, die Erweiterung taugt wirklich nichts.
Es reicht aber, einzig die JS-Konsole zu befragen, die sagt dir schon, ob ein Syntaxfehler vorliegt.

Im aktuellen Code sind sogar mehrere da:
Code:
[COLOR=#000000]Check = confirm([COLOR=Red]\"[/COLOR]Willst du die Datei auch ganz bestimmt löschen??[COLOR=Red]\"[/COLOR]);
if(Check == false) location.href=[COLOR=Red]\"[/COLOR]list.php[COLOR=Red]\"()[/COLOR];[/COLOR]

edit:
Ok :) In Zukunft erst selber versuchen, den Fehler zu finden, dann posten.
 
ja, das hab ich ja schon behoben - nur das abbrechen funktioniert nicht wirklich :-?
Guck dir das Script mal an.
Gelöscht wird so oder so, weil im PHP nur gelöscht wird.

Zur Lösung guck dir nochmal Post #3 von mir an. Nur, wenn der Link gedrückt wird, soll das Lösch-Script aufgerufen werden.
 
wo soll das denn hin?
also link in die dateiliste oder in die delete.php an den anfang, also vor das php?

Ps.: habs probiert, geht nicht...
Sag mir bitte einfach, was GENAU vor das php kommen soll *BITTE*

Ps2:
PHP:
<a href=javascript:onclick=confirm('Sicher?')location.href='delete.php?get=$file';>Löschen</a>
so in der art? das funktioniert aber nicht...
 
Zuletzt bearbeitet:
Ps2:
PHP:
<a href=javascript:onclick=confirm('Sicher?')location.href='delete.php?get=$file';>Löschen</a>
so in der art? das funktioniert aber nicht...
Wenn du die Hälfte weglässt, kann es ja nicht gehen :roll:
Attribute stehen in HTML in Anführungszeichen.

Sag mir bitte einfach, was GENAU vor das php kommen soll *BITTE*.
Mach ein Script, was die Liste erstellt und eines, was löscht.
In das HTML-Resultat das Listenscript baust du meinen obigen HTML-Code ein.

Solange du fleißig immer das Lösch-Script aufrufst, wird es immer löschen.


Ich empfehle ausgiebige Lektüre von
https://de.selfhtml.org/html/
https://de.selfhtml.org/javascript/
https://de.php.net/manual/
 
also mit dem beitrag hilfst du mir gerade ÜBERHAUPT nicht weiter.
Ich habe diese drei adressen schon x-mal durchgeforstet...

Deswegen auch meine anfrage.
Also sage mir bitte, was in der delete.php vor das php-script kommen soll, damit die abfrage kommt und die datei beim abbruch NICHT gelöscht wird, also das php script nicht ausgeführt wird.

Und jetzt geh ich mal schlafen und schau morgen vorbei ;) :yawn:
danke trotzdem für die hilfe,
asmodiel

Ps.: dein beitrag (#3) funktioniert nicht...
 
Also sage mir bitte, was in der delete.php vor das php-script kommen soll, damit die abfrage kommt und die datei beim abbruch NICHT gelöscht wird, also das php script nicht ausgeführt wird.
PHP:
die("AUS");
// Ab hier wird nicht mehr weiter ausgeführt
:ugly:

Das willst du aber sicherlich nicht und ich hab keinen Bock, mich weiter zu wiederholen. Bist du zu faul, meine Links/Posts durchzusehen, kann ich nicht helfen ;)
Ps.: dein beitrag (#3) funktioniert nicht...
P.S. Freilich funktioniert es :roll:
 
also doch, er funktioniert, aber halt nicht in einem php-script integriert...:(

EDIT:// erledigt,
PHP:
<?php 
$get = $_GET['get'];
global $get;
$print = "<script type=\"text/javascript\"> 
Check = confirm(\"Willst du die Datei auch ganz bestimmt löschen??\");
if(Check == false) location.href=\"list.php\";
if(Check == true) location.href=\"delete.php?get=$get\";
</script>";
echo $print;
?>
ich weiß, dass es vllt unvalide ist, es funktioniert aber ^^
 
Zuletzt bearbeitet: