Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

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, 26285 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?

MfG
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 ..
Ähnliche Inhalte
JavaScript
gelöst JavaScript hochladen (12)

Frage von Patrick-IT zum Thema JavaScript ...

JavaScript
AngularJS Variable über Input in Funktion ausführen

Frage von badkilla zum Thema JavaScript ...

JavaScript
Javascript rechnen mir sehr sehr großen Zahlen (3)

Frage von it4baer zum Thema JavaScript ...

Neue Wissensbeiträge
Windows Installation

Unorthodoxer Weg, um an einen Offline-Installer für Adobe Flash zu kommen

(6)

Tipp von beidermachtvongreyscull zum Thema Windows Installation ...

Datenschutz

Gefährdeter Datenschutz: Firefox löscht lokale Datenbanken nicht

Information von BassFishFox zum Thema Datenschutz ...

Firewall

PfSense OpenVPN beschleunigen

Tipp von Dobby zum Thema Firewall ...

Utilities

CCleaner 5.33 mit Malware infiziert

(25)

Information von SeaStorm zum Thema Utilities ...

Heiß diskutierte Inhalte
Utilities
CCleaner 5.33 mit Malware infiziert (25)

Information von SeaStorm zum Thema Utilities ...

Festplatten, SSD, Raid
gelöst Problem mit DELL 815R Server und Windows Bluescreen (24)

Frage von Leo-le zum Thema Festplatten, SSD, Raid ...

Windows Netzwerk
Dateien mit Intelligenz per GPO ins Programmverzeichnis (14)

Frage von erwin.t zum Thema Windows Netzwerk ...

Windows Server
Änderung Subnetz an AD Standort (13)

Frage von hansdampf zum Thema Windows Server ...