Du befindest Dich im Archiv vom ABAKUS Online Marketing Forum. Hier kannst Du Dich für das Forum mit den aktuellen Beiträgen registrieren.

PHP Variable in externer JavaScriptDatei nutzen

Ajax, Hijax, Microformats, RDF, Markup, HTML, PHP, CSS, MySQL, htaccess, robots.txt, CGI, Java, Javascript usw.
Neues Thema Antworten
xoni
PostRank 8
PostRank 8
Beiträge: 692
Registriert: 22.08.2007, 12:14

Beitrag von xoni » 16.08.2008, 19:05

Hallo Forum,
ich teste gerade ein wenig und habe folgende Frage
Wenn ich folgenden Code ausführe, wird die PHP-Variable korrekt ausgegeben...

Code: Alles auswählen

<?php $test = "Hallo"; ?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http&#58;//www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http&#58;//www.w3.org/1999/xhtml" xml&#58;lang="en" lang="en">

<head>
</head>

<body>
<script type="text/javascript">
<!--
var test = '<?php echo "$test" ?>';
alert&#40;test&#41; ;
//-->
</script>

</body>
</html>
Wenn ich allerdings den JavaScriptCode extern einbinde, klappt das nicht mehr...

Code: Alles auswählen

<?php $test = "Hallo"; ?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http&#58;//www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http&#58;//www.w3.org/1999/xhtml" xml&#58;lang="en" lang="en">

<head>
<script language="JavaScript" type="text/javascript" src="test.js"></script>
</head>
<body onload="load&#40;&#41;">
</body>
</html>
hier der JavaScriptCode der Datei test.js ...

Code: Alles auswählen

function load&#40;&#41; &#123;
var test = '<?php echo "$test" ?>';
alert&#40;test&#41; ;
&#125;
Das Script gibt mir <?php echo "$test" ?> aus. Aber warum?

Vielen Dank für einen Denkanstoss....

Anzeige von ABAKUS

von Anzeige von ABAKUS »

Content Erstellung von ABAKUS Internet Marketing
Ihre Vorteile:
  • einzigartige Texte
  • suchmaschinenoptimierte Inhalte
  • eine sinnvolle Content-Strategie
  • Beratung und Umsetzung
Jetzt anfragen: 0511 / 300325-0

Burns
PostRank 5
PostRank 5
Beiträge: 296
Registriert: 10.06.2008, 18:54

Beitrag von Burns » 16.08.2008, 19:08

hallo,

das ist so weil PHP nur in einer datei mit Endung .php ausgeführt wird.
.js wird nicht vom PHP Parser überprüft.

du musst die Variable an das externe Java-Script übergeben, dann wirds auch ausgegeben.

xoni
PostRank 8
PostRank 8
Beiträge: 692
Registriert: 22.08.2007, 12:14

Beitrag von xoni » 16.08.2008, 19:21

Burns hat geschrieben: du musst die Variable an das externe Java-Script übergeben, dann wirds auch ausgegeben.
Danke für die Antwort...
Hhm, das wird schwierig, es sind gute 30 Variablen, wie kann ich die denn jetzt an die JavaScript Datei übergeben? Ich könnte natürlich auch den Code
wie im1. Beispiel einfügen, aber das möchte ich eigentlich nicht, der SeitenQuelltext wird dann unendlich lang... :-?
Die Lösung mit der externen JavaScriptdatei möchte ich eigentlich beibehalten...