Antworten auf deine Fragen:
Neues Thema erstellen

PHP in Javascript-Datei ausführen?

koma05

Aktives Mitglied

hallo.
habe eine javascriptdatei mit folgendem inhalt:
Code:
$(document).ready(function(){
 alert("infoXY");

<?php if (!isset($_GET['p'])) { ?>
    $("#headgrafik").hide();    
<?php }
?>

});//main
(ist ein simples beispiel, dass noch ausgebaut werden soll)

und zwar soll in der js-datei geprüft werden ob der get-parameter p existiert. wenn ja soll das div #headgrafik ausgeblendet werden.

soweit zum verständnis.

nur der php-teil wird in der js-datei nicht ausgeführt.
wie kann ich das system dazu veranlassen php in js auszuführen?
 

GrafiKman

Aktives Mitglied

AW: PHP in Javascript-Datei ausführen?

Das kann nicht funktionieren da PHP auf dem Server ausgeführt wird und Javascript erst beim Clienten. Für sowas musst du AJAX verwenden.
 

koma05

Aktives Mitglied

AW: PHP in Javascript-Datei ausführen?

schon klar...

also ich habe eine datei wo folgendes im head steht:
Code:
<script type="text/javascript">
$(function() {
   //$('#gallery a').lightBox({
    $('.lyte').lightBox({
    overlayBgColor: '#000000',
    overlayOpacity: 0.7,
    //imageLoading: 'http://example.com/images/loading.gif',
    imageBtnClose: 'images/close.gif',
    imageBtnPrev: 'images/prev.gif',
    imageBtnNext: 'images/next.gif',
    containerResizeSpeed: 350,
    txtImage: 'Bild',
    txtOf: 'von'
   });
});
   
   
   
$(document).ready(function(){
//alert("ok");
    $(".ref_head_oc").click( function(){   
      
        //alert("ok"+$(this).attr("id"));
        var id = '#ref_main_' + $(this).attr("id");
        //alert(id);
        
        if ($(id).hasClass("open")) { 
            $(id).slideDown();
            $(id).removeClass("open");
            $(this).attr("title", "Referenz ausblenden");
        }
        else {
            $(id).slideUp();
            $(id).addClass("open");    
            $(this).attr("title", "Referenz einblenden");            
        }
        
    });//click
    
<?php if (!isset($_GET['p'])) { ?>
    $("#headgrafik").hide();    
    $("#headgrafik").fadeIn(3000);//besser wenn kein parameter gesetzt ist - sonst immer einblendeffekt
    $("#wrapper").css("background", "none");
<?php }
?>
    

});//main
   
   
   
</script>
dieser code funktioniert.

ich möchte diesen code in eine js-datei (irgendwas.js) auslagern (damit er nicht wenn man den quelltext betrachtet auf den ersten blick zu sehen ist)

anstatt den code soll dann im head die js-datei mit
Code:
        <script type="text/javascript" src="js/irgendwas.js"></script>
eingebunden werden
 

GrafiKman

Aktives Mitglied

AW: PHP in Javascript-Datei ausführen?

geht nicht, wie gesagt PHP muss aus dem Server ausgeführt werden und die eingebundene JS Datei wird erst beim Clineten ausgeführt.
 

LowkaZ

Half Life

AW: PHP in Javascript-Datei ausführen?

türlich geht das...
du musst nur eine php datei als javascript datei definieren und schon geht das...
 

Duddle

Posting-Frequenz: 14µHz

AW: PHP in Javascript-Datei ausführen?

Ich glaube LowkaZ meint, dass du den entsprechenden JavaScript-Bereich durch PHP generieren lassen solltest, z.B. in einem <script>-Tag in der HTML-Datei.

Übrigens kannst du dir auch die , falls dir das schon helfen würde.


Duddle
 

Chriss1987

me.drinkCoffee();

AW: PHP in Javascript-Datei ausführen?

Hi,

ich glaub, LowkaZ meinte, so wie ich das auch vorschlagen würde, dass du eine neue Datei erstellst, z.B. JS.php
in diese schreibst du folgenden Inhalt:
PHP:
$(function() {
   //$('#gallery a').lightBox({
    $('.lyte').lightBox({
    overlayBgColor: '#000000',
    overlayOpacity: 0.7,
    //imageLoading: 'http://example.com/images/loading.gif',
    imageBtnClose: 'images/close.gif',
    imageBtnPrev: 'images/prev.gif',
    imageBtnNext: 'images/next.gif',
    containerResizeSpeed: 350,
    txtImage: 'Bild',
    txtOf: 'von'
   });
});
   
   
   
$(document).ready(function(){
//alert("ok");
    $(".ref_head_oc").click( function(){   
      
        //alert("ok"+$(this).attr("id"));
        var id = '#ref_main_' + $(this).attr("id");
        //alert(id);
        
        if ($(id).hasClass("open")) { 
            $(id).slideDown();
            $(id).removeClass("open");
            $(this).attr("title", "Referenz ausblenden");
        }
        else {
            $(id).slideUp();
            $(id).addClass("open");    
            $(this).attr("title", "Referenz einblenden");            
        }
        
    });//click
    
<?php if (!isset($_GET['p'])) { ?>
    $("#headgrafik").hide();    
    $("#headgrafik").fadeIn(3000);//besser wenn kein parameter gesetzt ist - sonst immer einblendeffekt
    $("#wrapper").css("background", "none");
<?php }
?>
    

});//main

in deinem eigentlichen Script bindest du diese Datei dann ein:
HTML:
<script type="text/javascript" src="js/JS.php"></script>
Damit du jedoch alle GET-Parameter nutzen kannst, bedarf es einer kleinen Erweiterung, hierzu gibt es auch wieder 2 Lösungsmöglichkeiten:
in der Datei, in die das JS eingebunden wird den Link erzeugen und an den JS.php-Aufruf anfügen:
PHP:
...
<?php
$link = '?';
foreach ($_GET AS $key => $value)
    {
        $link .= $key . '=' . $value . '&';
    }
?>...
<script type="text/javascript" src="js/JS.php<?php echo $link; ?>"></script>
...
oder du packst alles in eine Session und fragst diese statt GET in der JS.php ab. ;)

Schöne Grüße aus dem Sauerland!
Chriss
 

LowkaZ

Half Life

AW: PHP in Javascript-Datei ausführen?

PHP:
header('Content-Type: text/javascript; charset: utf-8');
Das meine ich, du definierst den Header. Ist im Prinzip das was Duddle gesagt hat nur ausgelagert.
 

Ravetracer

Hobbyfotograf

AW: PHP in Javascript-Datei ausführen?

Man kann das generierte JS-File auch per "include" reinholen:

PHP:
.
.
<header>
.
.
<script type="text/javascript">
<?php include("myjscode.php");?>
</script>
.
.
</header>
.
.
So, nun steinigt mich ;)
 

koma05

Aktives Mitglied

AW: PHP in Javascript-Datei ausführen?

@Chriss1987+LowkaZ: danke, werd mich gleich mal ans werk machen...



@Ravetracer: *steinigung* ;) ... da es im head mittels
Code:
[COLOR=#800000]<script type=[COLOR=#0000ff]"text/javascript"[/COLOR] src=[COLOR=#0000ff]"js/JS.php"[/COLOR]>[/COLOR][COLOR=#800000]</script>[/COLOR]
eingebunden werden soll!
 

koma05

Aktives Mitglied

AW: PHP in Javascript-Datei ausführen?

@chris1987: vielen dank!!!! :)

habe
Code:
<?php
$link = '?';
foreach ($_GET AS $key => $value)
    {
        $link .= $key . '=' . $value . '&';
    }
?>
noch um
Code:
$link = substr($link, 0, -1);
ergänzt, damit der validator keinen streß macht.


PHP:
<?php
$link = '?';
foreach ($_GET AS $key => $value)
    {
        $link .= $key . '=' . $value . '&';
    }
$link = substr($link, 0, -1);
?>
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.564
Beiträge
1.538.064
Mitglieder
67.487
Neuestes Mitglied
MichaelSEivy
Oben