Sessions / externes js / parsen oder anders

hallo,

ich habe leider keine ahnung von javascript und benutze es daher auch nur selten, wenn, dann setz ich ab und an mal ein script ein, das ich von irgendwelchen seiten habe. es interessierte mich einfach nie.

jetzt hab ich folgendes problem:

ich nutze auf meiner php-seite sessions. um user, die keine cookies annehmen „mitzunehmen“ übergebe ich die session-id zusätzlich in der browserzeile.

prima.

nun habe ich ein programm gefunden, das ich gerne benutze, weil es alle arbeiten so „vereinfacht“ ^^

haha

es baut mir ein menü, ich lade grafiken, buttons unw, passe die farbe an und sage ihm, wie das menü der seite aussehen soll. das programm erstellt dann das menü mit untermenüs, mouse-over-effekt und allem pipapo, und ich hab nen prima layout. leider erstellt es dazu ein externes javascript. in meiner html- bzw. php-seite muss ich dann nur noch

document.write(’<scr’+‚ipt src=„tmpl1_files/xaramenu.js“>‘+’</scr’+‚ipt>‘);document.write(’<scr’+‚ipt src=„tmpl1_files/tmpl1_hnavbar.js“>‘+’</scr’+‚ipt>‘);

eingeben, und schon hab ich eine prima navigation. ich habe wie gesagt von js keine ahnung und verstehe nur so viel: das eigentliche script ist extern und heisst xaramenu.js bzw. template1_hnavbar.js (so hab ich das projekt in dem programm genannt)

wie ich befürchtet hatte, funktioniert meine session-umgeug nicht mehr. ich habe also die die .htaccess - datei genommen und ihr mitgeilt, dass dateien mit .js nunmehr durch den parser gescheucht werden sollen. werden sie scheinbar nun auch, jedenfalls kann ich, wenn ich die js-datei mit nem php-tag unterbreche, dort code eingeben. allerdings scheint das meine session nicht zu interessieren, denn ich komme mit session_id() nicht an den aktuellen wert heran. ich wollte in dem tmpl1_hnavbar.js sowas wie

mainMenuItem(„tmpl1_hnavbar_b1“,".gif",43,70,loc+"…/"+„index.php?SID=<? echo $session; ?>“,"",„Home“,2,2,„tmpl1_hnavbar_plain“);

bauen, wobei $session = session_id() ist.

ursprünglich steht da

mainMenuItem(„tmpl1_hnavbar_b1“,".gif",43,70,loc+"…/"+„index.php“,"",„Home“,2,2,„tmpl1_hnavbar_plain“);

funzt aber nicht. mein problem ist nun: ich kenne mich mit js zu wenig aus, um zu verstehen, was der code da tatsächlich macht, ich merke nur, dass meine php-session zerschossen wird. im moment hab ich keine ahnung mehr, wie ich meine SID weitergeben kann, wenn ich dieses externe JS benutzen will. ich habe die frage ins php-forum gestellt, weil ich denke, dass diese art problem hier bekannter sein dürfte als im javascript-forum.

vielen dank für eure mühe!

christian

Hallo Christian,

wenn JS durch PHP geparsed wird, dann fehlt „nur“ die Übergabe der session-ID:

document.write(’<scr’+‚ipt
src=„tmpl1_files/xaramenu.js?<?php echo session_name().“=".session_id()?>">‘+’</scr’+‚ipt>‘);document.write(’<scr’+‚ipt
src=„tmpl1_files/tmpl1_hnavbar.js?<?php echo session_name().“=".session_id()?>">‘+’</scr’+‚ipt>‘);

Das geht genauso wie bei jedem anderen PHP-Script auch, nur das das Script eben jetzt .js heisst…

ich wollte in
dem tmpl1_hnavbar.js sowas wie

mainMenuItem(„tmpl1_hnavbar_b1“,".gif",43,70,loc+"…/"+„index.php?SID=<?
echo $session; ?>“,"",„Home“,2,2,„tmpl1_hnavbar_plain“);

bauen, wobei $session = session_id() ist.

Sollte dann gehen, wobei man ggfs. wie oben session_name satt SID schreiben kann…

Alexander

hi,

zu dem code-problem mag ich eher nichts sagen… aber denk dochmal in einer ruhigen minute drüber nach, ob es nicht evlt genausoviele user im internet gibt, die javascript deaktiviert haben.

da du sowieso mit php arbeitest sollte die navi doch auch in php ablaufen können.

hätte übrigens auch den vorteil, das alle suchmaschinen damit klarkommen

gruß henrik

da schliesse ich mich mal mit Bedenken an, denn JavaScript zu klauen kann durchaus gegen das copyright verstossen…
Selbst dann, wenn der Nutzen nur trivial ist…
mit html ist das übrigens anders, da es eine reine Beschreibungssprache ist…

tach alex!

vielen dank. jetzt klatsch ich mir schon ein bissi an die birne. eigentlich ist die var-übergabe der nächste logische schritt nach dem gedanken, *.js zu parsen. darauf hätte ich auch selber kommen können :-/

vielen dank für den tipp! durch das posting über dir bin ich jetzt inzwischen allerdings tatsächlich am überlegen, wie sinnvoll mein tun im moment ist *g*

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

hi henrik,

jaja. du hast selbstredend recht. ich bin ja nicht ohne grund „kein fan“ von js-navigation und habe mich daher noch nie so richtig mit javascript beschäftigt, aber das programm war halt grad mal so schick *g*

ich weiss noch nicht, ob ich die navi damit umbauen will oder einfach bei meinem tag-menü bleibe. „schick“ bekomme ich es sicher auch ohne js hin. es war nur so verführerisch :smile:

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

gruss nach münchen,

danke für den hinweis. ich habe allerdings keine scripte geklaut. wenn ich welche benutze, dann solche, die frei erhältlich sind und benutzt werden dürfen.

das script, von dem hier der rede ist, wird erstellt durch ein (layout-)programm, mit dem man webgrafiken schnell und einfach bauen kann, und eben auch scriptbasierte menüs. das programm selber habe ich gekauft, vor allem der templates wegen.

da schliesse ich mich mal mit Bedenken an, denn JavaScript zu
klauen kann durchaus gegen das copyright verstossen…
Selbst dann, wenn der Nutzen nur trivial ist…
mit html ist das übrigens anders, da es eine reine
Beschreibungssprache ist…