| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Jun 2006
Beiträge: 34
| php microtime und flash
Hallo zusammen, Ich habe Flash in php datei wie folgt: PHP-Code: Ich benutze das uid als session id.Wenn jemand den Browser zumacht ohne davor von meinen Flash auszuloggen muss logout_incorrect.php?id=$uid per javascript body unload aufgerufen werden und alle Leichen, die der User gelassen hat löschen. Leider nihmt Flash den id vom Quelltext und javascript nihmt den id vom Browserausgabe. Wenn ich den <embed>-Tag lösche d.h. mein Flash lösche, dann kriege ich gleiche Werte auf dem Bildschirm und im Quelltext. D.h. dass das Problem ist in Flashtag. Das Problem trifft auf immer wenn ich Zeitabhängige funktionen benutze wie z.b. rand() oder uniqid(). Kann jemand helfen? Geändert von goro (10-05-2007 um 17:44 Uhr) |
| | |
| | #2 (permalink) |
| Inventar Registriert seit: Jul 2002
Beiträge: 6.882
|
Du machst das echo noch bevor dein HTML anfängt, daher wird dein Code der schliesslich generiert wird auch nicht HTML-Valid sein. Mach dein echo INNERHALB des body-Tags: PHP-Code:
__________________ (\__/) (='.'=) (")_(") |
| | |
| | #4 (permalink) |
| Inventar Registriert seit: Jul 2002
Beiträge: 6.882
|
Zeig mal die Seite mit aktuellem Code. Wenn du natürlich zwei mal die Funktion microtime() aufrufst ist klar das du zwei Zeiten kriegst. Wenn du aber zwei mal auf deiselbe Variable zugreifst dann müsste auch der Wert in der Variable gleich sein
__________________ (\__/) (='.'=) (")_(") |
| | |
| | #5 (permalink) |
| Neuer User Registriert seit: Jun 2006
Beiträge: 34
|
Ich darf leider die Seite nicht zeigen . Wie du siest ich rufe die microtime() nur einmal. Es stehet in Qellcode: HTML-Code: <html> <head> <meta http-equiv=Content-Type content=#text/html; charset=ISO-8859-1'> <title>Chat</title> </head> <body bgcolor='#006699' onUnload="javascript: window.open('logout_incorrect.php?id=ee4b9c2b5518cd364ffcc1365aafccec', 'Logout', 'width=200,height=50');"> <OBJECT classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0' WIDTH='955' HEIGHT='660' id='chat' ALIGN='' style='position:absolute;top:50%;left:50%;width:955px;height:660px;margin-left:-477px;margin-top:-330px;'> <PARAM NAME=movie VALUE='chat.swf'> <PARAM NAME=quality VALUE=high> <PARAM NAME=bgcolor VALUE=#006699><EMBED src='chat.swf' quality=high bgcolor=#006699 WIDTH='955' HEIGHT='660' NAME='chat' ALIGN='' TYPE='application/x-shockwave-flash' PLUGINSPAGE='http://www.macromedia.com/go/getflashplayer'></EMBED> </OBJECT> &__uid=ee4b9c2b5518cd364ffcc1365aafccec& </body> </html> &__uid=481ca695881a0a165205f4ab00412bf6& Das Problem ist das Flash nihmt den id vom Quelltext und javascript den von Bildschrim, obwohl in Quelltext gleichen ids stehen. |
| | |
| | #6 (permalink) |
| Neuer User Registriert seit: Jun 2006
Beiträge: 34
|
Ich habe endlich die Lösung. Ich lade die php-Seite die den Flash hält von Flash selber mit LoadVars. So rufe ich praktisch den Script neu und er generiert neuen Wert für microtime. Flash nihmt den neugenerierten Wert und javascrit sieht dass nicht, da es in Hintergrund passiert. Die Lösung ist nicht in Flash den id zu merken , sondern in einer Cookie. Der von javascript gerufene Phpscript dan liest am Ende den Keks.
|
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |