Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

PHP-Funktion in JavaScript ausführen

Frage Entwicklung PHP

Mitglied: AndyAh

AndyAh (Level 2) - Jetzt verbinden

17.04.2013, aktualisiert 07:24 Uhr, 21738 Aufrufe, 7 Kommentare

Hi NG,

wie führe ich eine PHP-Funktion mir JavaScript aus? Sowohl die PHP-Funktion als auch das JavaScript stehen in der selben PHP-Datei.

Code:

01.
 
02.
<?php 
03.
 
04.
function test() 
05.
06.
   echo "Test"; 
07.
08.
 
09.
echo '<script type="text/javascript"> 
10.
      if(window.confirm("Wollen Sie das wirklich tun?") == true) 
11.
      {  
12.
        //Funktion -Test- ausführen 
13.
14.
      </script>';   
15.
?> 
16.
 
Das Code-Tag wird schon wieder nicht angezeigt!

Gruß
Andy
Mitglied: Hitman4021
17.04.2013 um 07:56 Uhr
Hallo,

sowas macht man normalerweise über einen Ajax Request.
Soweit ich weiß gibt es auch keine Möglichkeit diese Funktion so auszuführen.

Gruß
Bitte warten ..
Mitglied: AndyAh
17.04.2013 um 08:16 Uhr
Hi,

gibst du mir evtl. ein paar deutschsprachige Links zu diesem Thema? Ich habe mich damit noch nicht auseinandergesetzt.

Gruß
Andy
Bitte warten ..
Mitglied: michi1983
17.04.2013 um 09:52 Uhr
Hallo,

ist das denn überhaupt möglich?
PHP ist ja serverseitig und Javascript is clientseitig.
Oder irre ich, dass das nicht funktionieren kann weil das Javascript ja erst geladen wird wenn die Seite komplett geladen ist?

Mit freundlichen Grüßen
Michi
Bitte warten ..
Mitglied: dog
17.04.2013 um 10:17 Uhr
ist das denn überhaupt möglich?

Jein.
PHP kann nicht mit Javascript interagieren (außer über AJAX).
Man kann aber in PHP einen JS-Funktionsaufruf ausgeben, der nach dem Laden der Seite ausgeführt wird.
Bitte warten ..
Mitglied: Guenni
17.04.2013 um 11:47 Uhr
Hi Andy,

genauso wie du im PHP-Code JS ausgibst, . . .

01.
echo '<script type="text/javascript"> 
02.
      if(window.confirm("Wollen Sie das wirklich tun?") == true) 
03.
      {  
04.
        //Funktion -Test- ausführen 
05.
06.
      </script>';  
. . . gibst du im JS-Code PHP aus.

01.
<?php 
02.
function test(){ 
03.
 echo "Ich bins, PHP"; 
04.
05.
?> 
06.
 
07.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
08.
<html> 
09.
<head> 
10.
<title>Untitled</title> 
11.
</head> 
12.
<body> 
13.
<script type="text/javascript"> 
14.
<!-- 
15.
if(window.confirm("Wollen Sie das wirklich tun?") == true) 
16.
      {  
17.
        document.write("<?php test();?>"); //Den PHP-Code ins Dokument schreiben. 
18.
19.
 
20.
// --> 
21.
</script> 
22.
</body> 
23.
</html>
Gruß
Günni
Bitte warten ..
Mitglied: AndyAh
17.04.2013 um 12:44 Uhr
Hi Günni,

danke für den Tip. Es funktioniert.

Gruß
Andy
Bitte warten ..
Mitglied: Guenni
18.04.2013 um 01:16 Uhr
Zitat von AndyAh:
Hi Günni,

danke für den Tip. Es funktioniert.

Gruß
Andy

Hi Andy,

naja, funktionieren . . . Es kommt vielleicht drauf an, was man mit so einem Konstrukt machen will.

Ich hab' hier mal was anderes probiert. Den PHP-Funktionsaufruf lasse ich von einer JS-Funktion ausführen.

Im body-Bereich wird ein Link auf die JS-Funktion gesetzt.

Script:

01.
<?php 
02.
function test(){ 
03.
 $conn = mysql_connect("localhost","user","passwort"); 
04.
	mysql_select_db("test"); 
05.
	$query = "select * from tabelle2"; 
06.
	$result = mysql_query($query, $conn); 
07.
	while($row = mysql_fetch_array($result, MYSQL_ASSOC)){ 
08.
	 echo implode(' | ',$row).'<br>'; 
09.
10.
11.
?> 
12.
 
13.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
14.
<html> 
15.
<head> 
16.
<title>Untitled</title> 
17.
<script type="text/javascript"> 
18.
<!-- 
19.
function test(){ 
20.
 document.write("<?php test();?>"); 
21.
 document.write('<a href="javascript:window.history.back()">Zurück</a>'); 
22.
23.
// --> 
24.
</script> 
25.
</head> 
26.
<body> 
27.
<a href="javascript:test()">Test</a>  
28.
</body> 
29.
</html>
Klicke ich den Link an, so wird die JS-Funktion aufgerufen, die wiederum ruft die PHP-Funktion auf und "voila": Das Ergebnis der Tabellenabfrage erscheint.

Dass die JS-Funktion die PHP-Funktion "wirklich" aufruft, ist aber (m.M. nach) nur scheinbar. Denn wenn du dir den Quelltext vom Script anzeigen läßt, steht da:

01.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
02.
<html> 
03.
<head> 
04.
<title>Untitled</title> 
05.
<script type="text/javascript"> 
06.
<!-- 
07.
function test(){ 
08.
 document.write("5 | Paul | Dürheim | 68746468 | Krefeld | verkauf | 2001<br>6 | Hans-Dieter-Heinz | Gerhards | 231384354 | Hamburg | verkauf | 2001<br>7 | Paul | Nowottny | 3446168484 |  
09.
 
10.
Osnabrück | einkauf | 2003<br>8 | Günter | Pappon | 01735370126 | Viersen | einkauf | 2004<br>9 | Paul | Kamps | 9154864 | Köln | einkauf | 2006<br>11 | Franz | Xaver | 0987654321 |  
11.
 
12.
Düsseldorf | personal | 2006<br>13 | Horst-Eugen | Flug | 31690 | Viersen | personal | 2006<br>14 | Monika | Junker | 091857365 | Karlsruhe | versand | 2007<br>17 | Monika | Schmidt | 8854844 |  
13.
 
14.
Karlsruhe | versand | 2007<br>18 | Paul | Schmitt-Müller | 8854844 | Trier | lager | 2007<br>19 | Heike | Schmitz | 8854844 | Dortmund | lager | 2010<br>20 | Horst | Schmied | 8854844 | Krefeld |  
15.
 
16.
lager | 2010<br>21 | Martina | Schimanski | 987654 | Buxtehude | lager | 2011<br>23 | Hans | Schmidt | 8854844 | Viersen | lager | 2011<br>"); 
17.
	document.write('<a href="javascript:window.history.back()">Zurück</a>'); 
18.
19.
// --> 
20.
</script> 
21.
</head> 
22.
<body> 
23.
<a href="javascript:test()">Test</a>  
24.
</body> 
25.
</html>
Heißt: Die PHP-Funktion wurde bereits beim Laden der Seite ausgeführt, und die JS-Funktion gibt nur noch das Ergebnis wieder.

Gruß
Günni
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
JavaScript
gelöst Werteübergabe an JavaScript Funktion (2)

Frage von tobmes zum Thema JavaScript ...

LAN, WAN, Wireless
Hat On Networks PL500PS WLAN-Funktion? (4)

Frage von Andy1987 zum Thema LAN, WAN, Wireless ...

PHP
gelöst Php regex und Array (5)

Frage von Thomas91 zum Thema PHP ...

Heiß diskutierte Inhalte
Router & Routing
gelöst Ipv4 mieten (22)

Frage von homermg zum Thema Router & Routing ...

Windows Server
DHCP Server switchen (20)

Frage von M.Marz zum Thema Windows Server ...

Exchange Server
gelöst Exchange 2010 Berechtigungen wiederherstellen (20)

Frage von semperf1delis zum Thema Exchange Server ...

Hardware
gelöst Negative Erfahrungen LAN-Karten (19)

Frage von MegaGiga zum Thema Hardware ...