PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks. |
 |

13-06-2005, 21:24
|
Infineon
Newbie
|
|
Registriert seit: Jun 2005
Beiträge: 7
|
|
setcookie ie4 problem
Hallo zusammen....
Ich habe zur Zeit mal wieder eine Webpage mit Admin Section in Arbeit.
Da ich dazu für den Login Script Cookies nutze bin ich auf folgendes Problem gestoßen....
Also erstmal die text beschreibung:
Ich habe ein cookie script via php geschrieben was funktioniert.
Das es funktioniert kann ich daher wissen das ich es schon auf ca 10 pcs getestet habe. Jedoch funktioniert es nicht auf Systemen die manche bestimmte IE Veriosnen nutzen! Dieses Problem scheint schon bekannt zu sein... wie in den folgenden Links beschrieben:
http://support.microsoft.com/default...b;EN-US;316112
oder auch ein Zitat aus dem php.net comment zu setcookie():
Zitat:
setcookie + header Location + IIS 5 = Trouble
It took me a long time to figure out what was causing a missing cookie in one system while it worked perfectly in another...
See this one: http://support.microsoft.com/kb/q176113/
In short, this WILL NEVER WORK IN IIS 5:
<?php
header("Pragma: no-cache");
header('Location: http://www.example.com/');
setcookie('AA','1',0,'/');
setcookie('BB','2',time() + 24 * 3600,'/');
?>
You will ONLY get the Location Header, everything else will be "cut out" by IIS 5 CGI implementation.
Solutions:
1- Migrate to Apache/IIS6/Whatever
2- Use a Non Parsed Header Script (nph-*.php)
3- Try with header('Refresh: 0; $URL');
|
mein code zum setzen des cookies:
PHP-Code:
$cookie_url=".oddysseus.de";
$dnmae = "example content";
setcookie ("c_name", "$dbname", time()+60*60 , "/" , "$cookie_url");
so nun interessiert mich wie ich dieses problem lösen kann
aus den tips von weiter oben habe ich schon: 2- Use a Non Parsed Header Script (nph-*.php) versucht und meine cookie.php in nph-cookie.php umbennant, funktioniert aber trotzdem nicht
Vielleicht hat ja jemand von euch schon Erfahrungen damit gemacht und kann mir aushilfe geben!
Danke im voraus
PS: Es gibt keine Fehlermeldung, sondern die Cookies werden einfach nicht gesetzt
|

13-06-2005, 21:33
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.421
|
|
Ich kann gerade den Bezug des PHP.net-Comments zum IE4 nicht erkennen.
Kannst du sicher ausschließen, dass es nicht einfach an den Cookieeinstellungen liegt?
Wie verhält es sich bei dem Browser mit anderen Cookies?
BTW: Seit wann muss man Variablen in Quotes setzen?
|

13-06-2005, 21:50
|
Infineon
Newbie
|
|
Registriert seit: Jun 2005
Beiträge: 7
|
|
nochmal als anhang:
ich nutze firefox und habe es auf ie 6 getestet bei beiden gehts.
ich habe auch schon versucht die domain daten und den pfad wegzulassen. trotzdem funktioniert es nicht!
es liegt nicht an den cookie einstellungen, da bei den pcs wo es nicht funktioniert alle anderen cookie basierten seiten funktionieren!
das problem scheint mir die version des webservers zu sein,
ich weiß nicht genau welcher dieser ist, jedoch ist dies die verbindung zum php.net zitat.
dort und auch auf der ms internetseite wird beschrieben das manchmal ein problem auftritt wenn der cgi server des webhosts die cookies nicht setzt!
|

13-06-2005, 21:51
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.421
|
|
Zitat:
ich weiß nicht genau welcher dieser ist,
|
Hmm, versuche doch mal das herauszubekommen. Scheint also nicht ganz unwichtig zu sein-
|

14-06-2005, 00:11
|
Infineon
Newbie
|
|
Registriert seit: Jun 2005
Beiträge: 7
|
|
also ich habe mal nen paar infos aus phpinfo();
Zitat:
Server API
Apache
Apache Version
Apache/1.3.27
Loaded Modules
mod_fastcgi, mod_frontpage, mod_userdir, mod_php4, mod_perl, mod_ssl, mod_setenvif, mod_so, mod_usertrack, mod_headers, mod_expires, mod_cern_meta, mod_proxy, mod_digest, mod_auth_db, mod_auth_dbm, mod_auth_anon, mod_auth, mod_access, mod_rewrite, mod_alias, mod_speling, mod_actions, mod_imap, mod_asis, mod_cgi, mod_dir, mod_autoindex, mod_include, mod_info, mod_status, mod_negotiation, mod_mime, mod_mime_magic, mod_log_referer, mod_log_agent, mod_log_config, mod_define, mod_env, mod_vhost_alias, mod_mmap_static, http_core
SERVER_SOFTWARE
Apache/1.3.27 (Linux/SuSE) mod_fastcgi/2.4.2 FrontPage/4.0.4.3 PHP/4.3.1 mod_perl/1.27 mod_ssl/2.8.12 OpenSSL/0.9.6i
session.cookie_domain
no value no value
session.cookie_lifetime
0 0
session.cookie_path
/ /
session.cookie_secure
Off Off
|
vielleicht kann ja wer was damit anfangen
ich brauche dringend hilfe
|

14-06-2005, 09:21
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.421
|
|
Sieht mir aber jetzt deutlich nach nem Apache aus. Also kein Bezug mit IIS...
|

14-06-2005, 16:32
|
Infineon
Newbie
|
|
Registriert seit: Jun 2005
Beiträge: 7
|
|
ja ok.... wenn du erkannt hast das es kein iis problem ist ists ja schän und gut,
nur was mache ich denn jetzt!?
|

14-06-2005, 16:35
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.421
|
|
Bis jetzt haben wir leider 0 Anhaltspunkte.
|

14-06-2005, 16:36
|
Infineon
Newbie
|
|
Registriert seit: Jun 2005
Beiträge: 7
|
|
so ich poste mal das cookie script...
vielleicht hat ja denn jeman ne ahnung...
PHP-Code:
<?php
include"db_connect.php";
$cookie_url=".oddysseus.de";
$dbname = $_GET['nick'];
if($_GET['func']=="login"){
setcookie ("c_name", "$dbname", time()+60*60 , "/" , "$cookie_url");
?>
<style type="text/css">
<!--
body {
background-color: #333333;
color:#FFFFFF;
font-family:Verdana, Arial, Helvetica, sans-serif;
font-size:12px;
margin-left:5;
margin-top:5;
}
-->
</style>
<?php
echo "Sie werden eingeloggt und weitergeleitet!
";
echo "<meta http-equiv=\"refresh\" content=\"10; url=../index.php?sec=member\">";
}elseif($_GET['func']=="logout"){
setcookie ("c_name", "", time()+60*60 , "/" , "$cookie_url");
?>
<style type="text/css">
<!--
body {
background-color: #333333;
color:#FFFFFF;
font-family:Verdana, Arial, Helvetica, sans-serif;
font-size:12px;
margin-left:5;
margin-top:5;
}
-->
</style>
<?php
echo "Sie werden ausgeloggt und weitergeleitet!
";
echo "<meta http-equiv=\"refresh\" content=\"1; url=../index.php\">";
}
?>
|

14-06-2005, 16:37
|
Infineon
Newbie
|
|
Registriert seit: Jun 2005
Beiträge: 7
|
|
was wir gerade probiert haben ist nen anderes php basiertes fertiges system zu testen (eqdkp) welches auch cookie login nutzt.
Dort funktioniert der Login!
|

14-06-2005, 16:46
|
wahsaga
 Moderator
|
|
Registriert seit: Sep 2001
Beiträge: 25.236
|
|
Zitat:
Original geschrieben von Infineon
was wir gerade probiert haben ist nen anderes php basiertes fertiges system zu testen (eqdkp) welches auch cookie login nutzt.
Dort funktioniert der Login!
|
na dann weißt du ja, was jetzt zu tun ist, oder?
unterschiede in den beiden vorgehensweisen finden :-)
(ich würde als erstes mal mit einer analyse der tatsächlichen response header anfangen.)
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
|

14-06-2005, 16:53
|
Infineon
Newbie
|
|
Registriert seit: Jun 2005
Beiträge: 7
|
|
Unterschiede finden ist schwer,
die funktionierende Page ist nicht von mir geschrieben,
und deswegen für den nicht coder bissl durcheinander.
Naja auf jeden Fall wollt ich die header auch schon auslesen...
Werd das mal testen...
Seht ihr an meinem Code den vllt. einen Fehler!?
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Themen-Optionen |
|
Thema bewerten |
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|