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

JS ausgabe in php?

Fr3ddy

Mitglied
Hi,

ich habe eine php if anweisung, wenn diese erfüllt ist, soll eine js funktion ausgeführt werden, wie kann ich das bewerkstelligen?

PHP:
if (in_array($geoplugin->countryCode, $lang1)){                    
             echo "<p>Deutschland</p>";
 
                ---->Hier JS funktion<------
           }
           else if (in_array($geoplugin->countryCode, $lang2))                
             echo "<p>USA</p>";
           else
             echo "<p>Land nicht gefunden</p>";
 
Du schreibst das ganze in ein echo oder endest den PHP Kram mit ?> schreibst dein JavaScript und eröffnest es wieder mit <?php

Grüße
 
Das problem liegt am js code:

PHP:
<script type="text/javascript">
    function showStuff() {
        document.getElementById("overlay").style.display = 'block';
    }
    function hideStuff() {
        document.getElementById("overlay").style.display = 'none';
    }
</script>

Und so wird die funktion ausgeführt:

PHP:
echo "<script language=javascript>showStuff();</script>";

Und das sagt firebug:


TypeError: document.getElementById(...) is null
 
Doch, habe ein div mit der id:

HTML:
<div id="overlay">
        <p>Akzeptieren Sie cookies?</p>
        <a href="#">Ja</a>
        <a onclick="toggledisplay()" href="#">Nein</a>
    </div>
 
Kann es sein, dass das Div noch nicht gefunden wird weil dies erst nach dem Javascript Teil geladen wird. Versuch mal
PHP:
<script type="text/javascript">
    function showStuff() {
        document.getElementById("overlay").style.display = 'block';
    }
    function hideStuff() {
        document.getElementById("overlay").style.display = 'none';
    }
</script>

kurz vor dem body tag zu setzen. So das dies erst auftaucht wenn die Seite so gut wie geladen ist.
Weiß zwar nicht ob dass das Problem sein könnte, bin selbst noch am Js lernen :) Aber habe davon schonmal gelesen. :mrgreen:
 
Ich glaube ich hatte dir schonmal gesagt, dass der ausgegebene HTML-Code der im Browser ankommt für die Funktionsweise einer JavaScript-Funktion entscheidend ist. Also schau dir den bitte an. Dann weißt Du was tatsächlich in der Webseite im Browser steht.
 
Zurück
Oben