phpbar.de logo

Mailinglisten-Archive

[php] Sessions nutzbar via <img src=xy.php> // Mehrere Sessions in einem PHP-File?

[php] Sessions nutzbar via <img src=xy.php> // Mehrere Sessions in einem PHP-File?

Thomas Beckmann php_(at)_phpcenter.de
Tue, 13 Nov 2001 09:08:11 +0100


>ich schreib grad das Modul einer Statistik-Auswertung eines Counters, =
dass die Diagramme als Grafiken zur=FCckliefert.
>
>Dazu w=FCrde aus der Statistik-Seite die grafiken.php so referenziert: =
echo "<img src=3Dgrafiken.php>" .....
>
>Kann man so Sessions nutzen? M=FCsste doch gehen oder?
Wof=FCr m=F6chtest Du die sessions nutzen?

>Und die zweite Frage:
>
>Auf der Statistik-Seite werden mehrere Diagramme angezeigt, doch nun die=
 gro=DFe Preisfrage: Ich kann ja stets nur eine Grafik zur=FCckliefern - =
kann ich innerhalb einer Seite nacheinander (aber eben im ich sag mal =
Milisekundenbereich) mehrere Sessions starten? Ohne das die Sessions sich=
 untereinander in die Quere kommen?
Ich hab' den Eindruck, Du hast das mit den sessions falsch verstanden:
Eine session l=E4uft iA so, da=DF je client, der sich mit seinem Browser
auf Deinen Seiten aufh=E4lt EINE (und nur eine) session erzeugt wird.
Dieser session kannst Du nun Zustandsvariablen zuordnen, die so von
Seite zu Seite transportiert werden.

>Also ich mein das so:
>
>	- statistik.php: Textaufbau -> Session erzeugen -> ersten Verweis auf =
grafiken.php um Diagramm "Balken" anzuzeigen=20
>	- statistik.php: weiterer Textaufbau -> weitere Session erzeugen -> =
zweiten Verweis auf grafiken.php um Diagramm "Kreis" anzuzeigen.

Ich w=FCrde das so l=F6sen:
echo "<img src=3Dgrafiken.php?kreis>" .....
echo "<img src=3Dgrafiken.php?balken>" .....

und in grafiken.php
<?
	switch (argv[0])
	{
		case 'kreis':  ... kreisdiagramm machen ...=20
			break;
		case 'balken':  ... balkendiagramm machen ...=20
			break;
		default:  ... standarddiagramm machen ...=20
	}
...

Wobei mir gerade d=E4mmert, da=DF Du in der session eventuell die Daten
mitgeben willst? Kannst Du auch einfach =FCber die GET-Variable machen,
packst die Daten in ein array und schiebst sie serialisiert und
urlencoded als 2. Parameter hinterher, also
echo "<img src=3Dgrafiken.php?balken+urlencode(serilize($daten))>" .....

und in grafiken.php
...
$daten =3D unserilize(urldecode(argv[1]))
...

Alles ungetestet und --with-syntaxcheck=3Doff, insbesondere kann es
sein, da=DF die Z=E4hlung argv[0] f=FCr die "echten" Argumente mit 1
beginnt, mu=DFt Du also testen.

Viel Erfolg!
--=20
Thomas Beckmann, Kiel, Germany
beckmann_(at)_gis.de


php::bar PHP Wiki   -   Listenarchive