Javascript & PHP
Yannis
- javascript
Hi,
ich kombiniere Javascript mit PHP und habe dort ein Problem.
Beim Aufrufen meiner Seite (nach dem Laden) wird mit Hilfe von "onload="showit('ad')" eine Tabelle eingeblendet, aber nur wenn ich in der URL die Seite mit "?hans=1" aufrufe.
Die Funktion sieht so aus:
function showit(name) {
var hans = "<?php echo $hans; ?>";
if (hans == 1) {
var x = document.getElementById(name);
x.style.display='block';
}
return false;
}
Aber die Variable von $hans wird einfach nicht in Javascript eingesetzt. Würd ich anstelle des PHP Codes im Jscript einfach eine 1 setzen, dann passiert das was ich möchte...
aber das PHP nimmt er dort nicht an!
Habt ihr eine Idee bzw. Hilfe dieses Problem zu umgehen?
Grüße Yannis K.
echo $begrüßung;
var hans = "<?php echo $hans; ?>";
Vermutlich existiert die Variable $hans nicht. Es ist schon seit langer Zeit nicht mehr so, dass für GET- und POST-Parameter gleichnamige Variablen angelegt werden. Du findest diese Werte in den Arrays $_GET bzw. $_POST. In deinem Fall: echo $_GET['hans'];
echo "$verabschiedung $name";
echo $begrüßung;
var hans = "<?php echo $hans; ?>";
Vermutlich existiert die Variable $hans nicht. Es ist schon seit langer Zeit nicht mehr so, dass für GET- und POST-Parameter gleichnamige Variablen angelegt werden. Du findest diese Werte in den Arrays $_GET bzw. $_POST. In deinem Fall: echo $_GET['hans'];
echo "$verabschiedung $name";
Die Get Methode funktioniert auch nicht - Immerhin wird es mometan noch in gleichnamigen Variablen abgelegt ;)
Vielleicht muss ich $hans als Globale Variable definieren, weil die JS Datei und die Datei in der die Funktion ausgeführt wird per PHP Include 'eingeschlossen' wird.
echo $begrüßung;
[...] echo $_GET['hans'];
Die Get Methode funktioniert auch nicht - Immerhin wird es mometan noch in gleichnamigen Variablen abgelegt ;)
Vielleicht muss ich $hans als Globale Variable definieren, weil die JS Datei und die Datei in der die Funktion ausgeführt wird per PHP Include 'eingeschlossen' wird.
$_GET ist ein superglobales Array. Es steht in jedem Variablen-Scope zur Verfügung. Wenn $_GET['hans'] nicht existiert, hast du ein anderes Problem. Schalte alle Fehlermeldungen ein, indem du das error_reporting auf E_ALL stellst. Damit werden Notiz-Meldungen nicht mehr unterdrückt, die dich auf nicht vorhandene Variablen hinweisen. Schau nach, was in $_GET enthalten ist. Dazu eignet sich print_r() und var_dump(). Zuvor empfiehlt sich die Ausgabe eines <pre> zur besseren Formatierung der Ausgabe.
echo "$verabschiedung $name";