b0d0
Goto Top

Austausch von Variableninhalten zwischen JS und PHP

Hallo liebe Admins ;)

ich stehe mal wieder vor einer für mich sehr schwierigen Aufgabe.
Ich möchte mit JavaScript eine Systemvariable abfragen. Z.B. den Benutzernamen o.ä.
Das habe ich bis jetzt so gelöst.
<script type="text/JScript"> 
<!--
	net=new ActiveXObject('WScript.Network'); 
	ausgabe=net.UserName;
	alert(ausgabe);
//-->
</script>
Nun möchte ich allerdings den Inhalt aus der Variablen "ausgabe" mit PHP weiterverarbeiten.
Ich benötige diese Geschichte um eine Grundlage für eine Abfrage im Intranet zu besitzen.

Kann mir da jemand helfen. Ich kenne mich leider mit JS viel zu wenig aus.

Gruß
B0d0

Content-ID: 89615

Url: https://administrator.de/contentid/89615

Ausgedruckt am: 25.11.2024 um 04:11 Uhr

bytecounter
bytecounter 11.06.2008 um 11:58:30 Uhr
Goto Top
Hi,

wie wäre es mit folgendem:
<script type="text/JScript">  
<!--
net=new ActiveXObject('WScript.Network'); 
ausgabe=net.UserName;
alert(ausgabe);
document.getElementById("any_id").href = "script.php?ausgabe=" + ausgabe; 
//-->
</script>

<a id="any_id" href="#">Übergebe Parameter an PHP</a>  

vg
Bytecounter
B0d0
B0d0 11.06.2008 um 12:14:13 Uhr
Goto Top
Wenn ich dieses Script nehme, müsste ich doch den Inhalt der JS Variable in der URL haben oder ?? So verstehe ich es jedenfalls. Und dann mit PHP einfach abholen ??
bytecounter
bytecounter 11.06.2008 um 14:17:30 Uhr
Goto Top
Genau so läuft das ab. Mit PHP bekommst Du die Variable wie folgt:

$ausgabe = $_GET['ausgabe'];
B0d0
B0d0 12.06.2008 um 09:00:42 Uhr
Goto Top
Guten Morgen,

habe mal noch ein wenig rumprobiert.
Ich bin zu folgendem Ergebniss gekommen:


<script type="text/JScript">
<!--
net=new ActiveXObject('WScript.Network');
ausgabe=net.UserName;
window.location.href="test.php?ausgabe="+ausgabe
//-->
</script>

<?php
$ausgabe = $_GET['ausgabe'];
echo $ausgabe;
?>


jetzt habe ich nur noch ein Probelm.
Wenn ich das Script aufrufe, scheint es zu funktionieren, allerdings
ruft es sich wohl immer wieder selber auf. Ich verstehe nur nicht warum.
Vielleicht kannst du mich noch mal wach rütteln ;)

Gruß
B0d0
bytecounter
bytecounter 12.06.2008 um 10:09:39 Uhr
Goto Top
Ich gehe davon aus, dass Du nur die Datei test.php hast. Und da liegt das Problem:

window.location.href="test.php?ausgabe="+ausgabe

Damit gibst Du ihm an, dass er in dem Fenster den angegebenen Link laden soll. Da es die Datei selbst ist, produzierst Du eine Endlosschleife.

Du kannst den mit JS erkannten Wert erst in einem folgenden Seitenaufruf verwerten. Also zwei Möglichkeiten:

1. Du fragst mit PHP ab, ob die Variable $ausgabe gesetzt ist. Wenn nein: Den JS-Code einbinden, wenn ja: die Seite ohne JS Code zum Browser, fnde ich persönlich aber eher unsauber..

2. Du lädst nur die betroffenen Codeteile nach. Das geht z. B. mit document.getElementById("any_id").firstChild.nodeValue = "Neuer Inhalt des Tags"


vg
Bytecounter