Javascript aufrufen

Hammurabi

Mitglied
Hallo,
weiß nicht werde irgendwie nicht schlau aus meinen ganzen Funden in „Google“ usw.

Also mein Ziel ist es eine abfrage für den Benutzer zu mache die ihn etwas fragt wollen sie wirklich?
Javascript:
function empf()
{
if (confirm("Der Mandant wurde bereits empfohlen, wollen sie ihn nochmal empfehlen?"))
 return true;
else
 return false;
}

Jetzt das Problem mit dem Aufruf des Skriptes ich möchte es einfach im PHP aufrufen also:
PHP:
if(empf()==true)
 {...}
else
 {...}

Bitte nicht böse sein wegen der einfachen frage es ist Freitag.:)
 
Soweit ich weiss, ist das nicht möglich.

PHP ist eine serverseitige Sprache. Sprich, wenn der User die Seite angezeigt bekommt, hat PHP seine Arbeit bereits längstens erfüllt. Darum kann ich mir nicht vorstellen (was aber nicht heisst, dass es nicht geht :) ), dass das PHP-Script eine Java-Script-Methode aufruft.

Ich würde an deiner Stelle bei "true" im confirm die Seite neu laden und das True, dem PHP-Script über ein <input type="hidden"> oder sowas mitgeben.

Gruss
Igäl
 
Schade aber kann mir da evtl. jemand helfen wie ich dann so eine abfrage machen kann? Muss ja nicht mit „javascript“ sein die Hauptsache ich bekomme na abfrage wollen sie wirklich und wenn ja dann das und nein dann das?
 
Also minnibeispiel wie du es mit einer Confirm-Box machen kannst:
(hier im editor geschrieben als beispiel)
PHP:
if(empf()==true)
 {
echo '<script>
if (confirm("Der Mandant wurde bereits empfohlen, wollen sie ihn nochmal empfehlen?"))
 document.location.href="?confirm=true";
else
 document.location.href="?confirm=false";
</script>';
}
else
 {...}

Alternativ kannst du die bestätigung auch als eigene Website dazwischen bauen, mit einem Layer oder Div Fenster als bestätigung. Und so oder so dann die seite nochmal neu laden.
 
Danke für die Antwort das wäre mein zweiter lösungsansatz gewesen habe nur nicht gefunden wie ich einen link aus javascript ausführe.

So nun bleibt nur noch ein Problem zu lösen und zwar müßte ich eine ID übergeben die allerdings im PHP generiert wird und halt mit in den Link müßte.
 
Mir fallen zwei Möglichkeiten ein:
  • Das JavaScript wird direkt ans Formular gekoppelt:
HTML:
<form action="…" onsubmit="return confirm('…')">
Nachteil: dies funktioniert eben nur mit JavaScript.
  • Es wird eine „Zwischenseite“ verwendet, auf der die Aktion bestätigt werden muss:
PHP:
if( $_SERVER['REQUEST_METHOD'] == 'POST' ) {
	if( !isset($_POST['confirm']) ) {
		$_SESSION['_POST'] = $_POST;
		echo '<h2>Aktion bestätigen</h2>';
		echo '<form action="" method="post">';
		echo '<p>Der Mandant wurde bereits empfohlen, wollen sie ihn nochmal empfehlen?</p>';
		echo '<div><input type="submit" name="confirm" value="Ja"> <a href="">Nein</a></div>';
		echo '</form>';
	} else {
		if( isset($_SESSION['_POST']) ) {
			$_POST = $_SESSION['_POST'];
			unset($_SESSION['_POST']);
		}
		// Weitere Verarbeitung
	}
}

// Ausgabe des ursprünglichen Formulars
 
Ok danke für eure schnelle hilfe. Habe das problem jetzt so gelöst und alles funktioniert super.
PHP:
echo'<script language="javascript" type="text/javascript">
               if (confirm("Der Mandant wurde bereits empfohlen, wollen sie ihn nochmal empfehlen?")) 
                document.location.href="applicant2.php?empf=true&cmd=empf&applicantID='.$_GET['applicantID'].'"; 
               else 
                document.location.href="applicant2.php?empf=false&cmd=empf&applicantID='.$_GET['applicantID'].'"; 
               </script>';
 
Zurück