• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

JavaScript nur auf einer bestimmten Seite

Status
Für weitere Antworten geschlossen.

Andreas_B.

Neues Mitglied
Guten Abend!

Bin mir nicht sicher ob das mit nem PHP-Schnippet möglich ist, aber denke schon.

Habe hier zum Beispiel den Fall, dass ich eine PHP-Datei auf allen Seiten inkludieren möchte, nur nicht auf der startseite, also habe ich folgenden Code:
PHP:
<?php 
$weiche         = $_GET['cPat'];
if ( $weiche != '')
  {
   include("datei.php");
  }
?>
Aber wie sieht es nun aus, wenn ich möchte, das eine JS-Datei nur in einer bestimmten Datei/Seite ausgegegebn wird? Und zwar genau umgekehrt! Auf keinen anderen Seiten, nur auf der Startseite. JS kann man ja nicht wie PHP inkludieren - was habe ich dann für Möglichkeiten?
 
Prinzipiell meine ich das so, ja.
Hätt ich versucht, geht aber nicht.
Ziemlich nichtssagende Problembeschreibung.

Ich denke mal, dass du eventuell einfach die if-Abfrage falsch gestaltet hast?
Wie wäre es mit
PHP:
if($_SERVER['PHP_SELF'] == 'index.php')
{
    include_once('datei_mit_js_code.inc');
}
Wobei die eingebundene Datei dann eben den JavaScript-Code inklusive der <script>-Tags enthält.

Je nachdem, wie dein "System" aussieht hilft dir eventuell $_SERVER['PHP_SELF'] nicht. Schau dir auch mal die restlichen $_SERVER-Variablen an.

Grüße, Ben.
 
Hallo Ben!

==
Zitat von Andreas_B.
Hätt ich versucht, geht aber nicht.
Ziemlich nichtssagende Problembeschreibung.
==

Ich habe nicht nur das gesagt ^^
Sondern auch hinzugefügt, wie ich es gemacht habe.
Wenn ich es so mache, wie oben beschrieben, dann wird der JS-Code direkt auf der Seite eingeblendet, aber nicht ausgeführt.

mache ich:
Code:
[COLOR=#000000][COLOR=#007700]if([/COLOR][COLOR=#0000bb]$_SERVER[/COLOR][COLOR=#007700][[/COLOR][COLOR=#dd0000]'PHP_SELF'[/COLOR][COLOR=#007700]] == [/COLOR][COLOR=#dd0000]'index.php'[/COLOR][COLOR=#007700]) 
{ 
    include_once([/COLOR][COLOR=#dd0000]'datei.js'[/COLOR][COLOR=#007700]); 
}  [/COLOR][/COLOR]
passiert garnichts.

mache ich:
Code:
[COLOR=#000000][COLOR=#007700]if([/COLOR][COLOR=#0000bb]$_SERVER[/COLOR][COLOR=#007700][[/COLOR][COLOR=#dd0000]'PHP_SELF'[/COLOR][COLOR=#007700]] == [/COLOR][COLOR=#dd0000]'index.php'[/COLOR][COLOR=#007700]) 
{ 
    include_once([/COLOR][COLOR=#dd0000]'datei_mit_js_code.inc'[/COLOR][COLOR=#007700]); 
}  [/COLOR][/COLOR]
und schreibe in die *.inc:
<script src="datei.js" type="text/javascript"></script>

passiert ebenfalls überhaupt nichts.
 
Was steht denn letztlich in der Datei, die du im Browser angezeigt bekommst?
Also wie sieht der Quelltext aus?

Du musst natürlich sicherstellen, dass der JavaScript-Code dann auch im <head>-Bereich des HTML-Dokuments steht, klar oder?
 
Versuchs mal mit [phpnet]readfile[/phpnet] anstatt include.
Na das klappt schon mit include!

PHP:
<html>
  <head> 
   <title>Test</title>
  
  <?php

         if($_SERVER['PHP_SELF'] == 'index.php')
         {
                include_once('datei_mit_js_code.inc');
         }

   ?>

   </head>
   <body>
       Gedöhns
   </body>
</html>
mit einer Datei datei_mit_js_code.inc, die z.B. so aussieht:
Code:
<script type="text/javascript">
<!--
function demo_function()
{
    irgendwas machen
}
//-->
</script>

Grüße, Ben.
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben