Bon ce topic tombe bien, j'ai une enorme couille de cookie qui doit trouver solution rapidement si possible.
J'ai une page appellée en include dans un script.
L'url est du type main.php?princ=login
Dans cette page login se trouve ceci :
Code :
- <?php
- include("config.inc.php" );
- if($logging==1)
- {
- echo "En cours de log";
- $req = MYSQL_QUERY("SELECT Login FROM $TBL_UTILISATEUR WHERE Login = '$login' and Password='$password'" );
- $res = MYSQL_NUM_ROWS($req);
- if ($res == 1)
- {
- list($user)=MYSQL_FETCH_ARRAY($req,MYSQL_NUM);
- ?>
- <script language="JavaScript" type="text/javascript">
- window.location.replace("log.php?page=<? echo $page; ?>&user=<? echo $user ; ?>" );
- </script>
- <?
- }
- }
- if (isset($Login))
- {
- echo $Login;
- $db = mysql_connect("$dbhost", "$dblogi", "$dbpass" ) OR DIE("<br><br><center><font color=red face=arial size=2><b>Base Inaccessible !</b></font></center>" );
- mysql_select_db("$dbbase",$db) OR DIE("<br><br><center><font color=red face=arial size=2><b>Base inaccessible !</b></font></center>" );
- $req = MYSQL_QUERY("SELECT * FROM Utilisateur WHERE Login = '$Login'" );
- $res = MYSQL_NUM_ROWS($req);
- if ($res != 1){echo "Cookie invalide !";exit;}
- }else{
- ?>
- <div align="left">
- <p> </p>
- <form name="form1" method="post" action="main.php?princ=login&page=<? echo $princ; ?>" >
- <TABLE>
- <TR><TD>Login : </TD><TD><input type="text" name="login" value=""></TD></TR>
- <TR><TD>Mot de passe : </TD><TD><input type="password" name="password" value=""></TD></TR>
- <input type="hidden" name="logging" value="1">
- </TABLE>
- <input type="submit" name="submit" value="Se connecter">
- <input type="reset" name="submit" value="Effacer">
- </form>
- <p><a href="main.php?princ=form_a_bout&free=1&script=add_boutique">je ne suis pas encore enregistré !</a></p>
- </div>
- <?
- }
- ?>
|
On balance donc à la même page le résultat du formulaire pour faire les verifs.
Un fois que c'est fait, on balance à un script log.php avec un location.replace. Ce script fait :
Code :
- <?
- setcookie("Login", "$user", time()+99999,"/" );
- ?>
- <html>
- <script language="JavaScript" type="text/javascript">
- window.location.replace("main.php?princ="<? echo $page; ?>" );
- </script>
- </html>
|
Et je me tappe au résultat un zoli :
Code :
- Warning: Cannot add header information - headers already sent by (output started at /devlpt/ulysse/data/dutsi2/pjsynth/i2_antiq/site/log.php:3) in
- /devlpt/ulysse/data/dutsi2/pjsynth/i2_antiq/site/log.php on line 4
|
Seulement je ne comprends pas pourquoi il me dit que les header ont étés déjà envoyés : log.php est appellé directement, je ne fais pas un include. Ou alors c'est cette saloperie de windows.location.replace qui en balance.
En bref, je rame et ca me saoule, je vais prendre du retard sur des choses autrement plus chiant (ca craint d'avance) et moins connes.
Merci de m'aider avant que je finisse totalement l'écran devant moi (j'en ai déjà un à mon palmarès, j'aimerais eviter d'en avoir un deuxième !).
---------------
Le topic du QLRR et FIRE - Knowledge is power. Power corrupts. Study hard, become evil.