2 Fragen: Cookie/Client
Dietmar
- perl
Frohe Weihnachten zusammen,
ich stehe gerade vor zwei ganzen Problemen und weiss nicht mehr weiter.
1. Ich möchte ein Cookie versenden (so weit so gut) und SOFORT danach prüfen (beides wird in einer einzigen subroutine gemacht) ob der Cookie angekommen ist. Aber es will nicht gehen, erst nach erneuter aktualisierung zeigt es an, dass der Cookie angekommen ist.
Wie kann ich es schaffen, dass ein Cookie versendet wird und gleich darauf prüfen kann ob der Cookie versendet wurde?
Benötigt ihr den Codeschnipsel dazu?
2. Ich mache mir grad ein kleines Shopsystem. Das soll aber nicht nur auf meinem Webserver laufen sondern auf mehrere (von freunden zum beispiel). Um das alles überprüfen und warten zu können müsste ich ja auf alle Zugriff haben. Das geht an sich ganz einfach mit einem Client: ein script über das ich mich einloggen kann und somit alle dateien auf dem Webserver öffnen kann. Und da ist das problem. Ich möchte ein script schreiben bei dem ich NUR zugriff auf das shop-system habe, nur wie stelle ich das am besten an?
Bräuchte vielleicht eine kleine anregung ;-)
Vielen dank im vorraus,
Dietmar.
Hi,
- Ich möchte ein Cookie versenden (so weit so gut) und SOFORT danach prüfen (beides wird in einer einzigen subroutine gemacht) ob der Cookie angekommen ist. Aber es will nicht gehen, erst nach erneuter aktualisierung zeigt es an, dass der Cookie angekommen ist.
Natuerlich, so "funktionieren" Cookies.
Wie kann ich es schaffen, dass ein Cookie versendet wird und gleich darauf prüfen kann ob der Cookie versendet wurde?
Davon, dass er "versendet" wird, kannst du ausgehen.
Was dich interessiert ist, ob der Client ihn auch "akzeptiert" hat, bzw. genauer noch, ob er ihn auch bei einem nachfolgenden Request wieder mitschickt. Dies merkst du logischerweise erst dann, wenn der naechste, vom aktuellen vollkommen unabhaengige, Request beim Server eingeht.
Ich möchte ein script schreiben bei dem ich NUR zugriff auf das shop-system habe, nur wie stelle ich das am besten an?
Wenn du den Scriptgriff auf Scriptebene auf bestimmte Dateien beschraenken willst, dann lasse das Script unter einem Nutzeraccount laufen, der nur auf diese Zugriff hat. Wenn das keine Option ist, dann musst du das im Script selber implementieren. Das erfordert dann natuerlich auch, dass deine Freunde dir und deinem Script diesbezueglich vertrauen.
Was den Zugriff auf Datenbanken angeht, nutze einen eigenen Benutzer, dem nur entsprechende Zugriffsrechte gegeben werden.
MfG ChrisB
Hallo ChrisB,
Davon, dass er "versendet" wird, kannst du ausgehen.
Was dich interessiert ist, ob der Client ihn auch "akzeptiert" hat, bzw. genauer noch, ob er ihn auch bei einem nachfolgenden Request wieder mitschickt. Dies merkst du logischerweise erst dann, wenn der naechste, vom aktuellen vollkommen unabhaengige, Request beim Server eingeht.
Genau das interessiert mich, aber es ist in meinem script technisch nicht möglich einen neuen Request zu senden.
Ich habe mir gedacht, wenn ich eine Pipe (so nennt man das doch, oder? Ein script, dass im Hintergrund ausgeführt wird) öffne und dort geprüft wird ob das Cookie akzeptiert wurde, und dann der true/false-wert an das Hauptscript zurück geschickt wird, müsste es eigentlich gehen, das tut es aber nicht. Müsste es nicht eigentlich gehen?
Oder gibt es noch einen anderen weg wo ich nicht sehe?
Wenn du den Scriptgriff auf Scriptebene auf bestimmte Dateien beschraenken willst, dann lasse das Script unter einem Nutzeraccount laufen, der nur auf diese Zugriff hat. Wenn das keine Option ist, dann musst du das im Script selber implementieren. Das erfordert dann natuerlich auch, dass deine Freunde dir und deinem Script diesbezueglich vertrauen.
Was den Zugriff auf Datenbanken angeht, nutze einen eigenen Benutzer, dem nur entsprechende Zugriffsrechte gegeben werden.
Das mit dem Nutzeraccount wäre an sich sehr gut, aber da bei jedem ein anderes Design, etwas anderer Aufbau, andere angebote usw. befinden müsste ich mehrere Scripts auf einem Nutzeraccount laufen lassen, und ich möchte das jeder für sein eigenes shop-system bezahlt (bzw. den Webspace dafür).
Naja also das ich im Script selber angebe was ich sehen darf und was nicht ist nicht sehr sinnvoll, da kann ich genauso gut so tun als ob ich nur meine Scripts ansehen kann und ich denke sowas ist auch nicht wirklich gerne gesehen. Aber das ist scheinbar die einzige möglichkeit, oder?
Vielen Dank,
Dietmar
Hi,
Was dich interessiert ist, ob der Client ihn auch "akzeptiert" hat, bzw. genauer noch, ob er ihn auch bei einem nachfolgenden Request wieder mitschickt. Dies merkst du logischerweise erst dann, wenn der naechste, vom aktuellen vollkommen unabhaengige, Request beim Server eingeht.
Genau das interessiert mich, aber es ist in meinem script technisch nicht möglich einen neuen Request zu senden.
Requests sendet nicht dein serverseitiges Script, sondern der Client.
Ich habe mir gedacht, wenn ich eine Pipe (so nennt man das doch, oder? Ein script, dass im Hintergrund ausgeführt wird) öffne und dort geprüft wird ob das Cookie akzeptiert wurde, und dann der true/false-wert an das Hauptscript zurück geschickt wird, müsste es eigentlich gehen, das tut es aber nicht. Müsste es nicht eigentlich gehen?
Nein, das kann ich mir nicht vorstellen.
Ein Script, dass du auf dem Server im Hintergrund startest, bringt den Client nicht dazu, einen neuen Request zu schicken.
Und selbst wenn das ginge - dein Perl-Script laeuft i.a.R. erst mal zuende, bevor es ueberhaupt was an den Client schickt. Und bevor es nicht zuende ist, hat der Client den Cookie wahrscheinlich auch noch gar nicht empfangen - er koennte also nicht mal auf die Frage danach antworten, wenn er wollte.
Oder gibt es noch einen anderen weg wo ich nicht sehe?
Dir scheint generell noch nicht klar zu sein, wie die Kommunikation ueber HTTP zwischen Client und Server ablaeuft - das solltest du dir erst mal in den Grundzuegen klar machen.
MfG ChrisB