probleme avce setcookie

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : probleme avce setcookie

par ouckileou » 19 avr. 2006, 11:06

Quand tu as ces messages d'erreurs tu peux être quasiment sûr que c'est la cause de ton problème, tu le sauras les prochaines fois ;)
au faite comment mettre ce message en résolu je trouve pas de lien me permettant de le faire.
Tu ne peux pas, tu as posté en Invité
je l'ai fait

par nabs » 19 avr. 2006, 11:05

au faite comment mettre ce message en résolu je trouve pas de lien me permettant de le faire.

par nabs » 19 avr. 2006, 11:02

nikel !!!
ca marche ! c le top, merci bcp pour votre aide les gars !!!
c tré subtile n'empeche, un simple saut de ligne avant cette balise <? me faisait planter la fonction. fallait le voir, franchement chapeau les gars. merci encore.

par ouckileou » 19 avr. 2006, 10:58

Il y avait effectivement une ligne vide, AVANT la balise <?php, elle a disparu quand j'ai changé les balises

Code : Tout sélectionner

en [php] C'est de cette ligne qu'il parle, pas de balise <?php, lis bien les messages... Aucun texte ne doit être envoyé au navigateur avant le setcookie(), ça veut dire : - pas de echo ou print ou autre fonction d'affichage avant le setcookie - pas de texte, HTML, ou même un SIMPLE ESPACE avant la balise <?php Donc vérifie que tu n'as rien

par nabs » 19 avr. 2006, 10:50

mdr !!!
c ce qui me permet d'introduire mon code php, si je ne la met pas comment vais-je introduire ces fonctions ?
si tu vois comment le corriger merci de me le montrer.

par Ryle » 19 avr. 2006, 10:45

Regarde si tu n'a pas du texte envoyé au navigateur avant le setcookie() (HTML, texte ou même simple espace)
justement non
Et c'est quoi cette premiere ligne blanche avant ton "<?" hmm ??!! ;)

par nabs » 19 avr. 2006, 10:38

lol :D

le voila :
<?php

 if(isset($_POST["debut"])==TRUE)
 {
  $host=$_POST['host'];
  $login=$_POST['login'];
  $passwd=$_POST['pass'];
  $base=$_POST['bdd'];

  $connexion=@mysql_connect($host,$login,$passwd);
  if(!$connexion)
  {
   print("connexion non établie");
  }
  else {
   if(setcookie("bdd_host","$host",(time()+900))==false)echo "pas de cookie";
   if(setcookie("bdd_login","$login",(time()+900))==false)echo "pas de cookie";
   if(setcookie("bdd_pass","$passwd",(time()+900))==false)echo "pas de cookie";
   if(setcookie("bdd_base","$base",(time()+900))==false)echo "pas de cookie";      
   
   echo "<html><head><TITLE>liste utilisateurs</TITLE>";
   echo "<STYLE type='text/css'>";
   echo "body {";
   echo "font-size:20;";
   echo "color:#00ff00;";
   echo "}";
   echo "</STYLE>";
   echo "</head>";
   echo "<BODY  bgcolor='#0000ff'>";
   if(mysql_select_db("$base")==FALSE)
   {
    $query="CREATE DATABASE $base;";
//...
ceci est le code contenu dans le fichier liste.php, ce fichier est appelé a partir d'un fichier install.php qui envoi en POST l'host,le login,le pass et le nom de la bdd.

par ouckileou » 19 avr. 2006, 10:31

Et bien c'est le moment de montrer le code je crois...

par nabs » 19 avr. 2006, 10:13

justement non, j'ai lu sur un site que l'utilisation de cette fonction exigeait d'etre avant toute balise html, contrainte des cookies. donc j'ai adapté mon code en mettant mes balises apres l'appel a ces fonctions.

par ouckileou » 19 avr. 2006, 09:27

Regarde si tu n'as pas du texte envoyé au navigateur avant le setcookie() (HTML, texte ou même simple espace)

probleme avce setcookie

par nabs » 19 avr. 2006, 09:08

slt a tous,

j'ai un souci avec cette fonction, qui marchait bien ya un certain temps sur une petite appli que j'ai fait en php, en reessayant cette meme appli, bein ca me donne ca :
Warning: Cannot modify header information - headers already sent by (output started at e:\program files\easyphp1-8\www\application\liste.php:2) in e:\program files\easyphp1-8\www\application\liste.php on line 17
Warning: Cannot modify header information - headers already sent by (output started at e:\program files\easyphp1-8\www\application\liste.php:2) in e:\program files\easyphp1-8\www\application\liste.php on line 18
Warning: Cannot modify header information - headers already sent by (output started at e:\program files\easyphp1-8\www\application\liste.php:2) in e:\program files\easyphp1-8\www\application\liste.php on line 19
Warning: Cannot modify header information - headers already sent by (output started at e:\program files\easyphp1-8\www\application\liste.php:2) in e:\program files\easyphp1-8\www\application\liste.php on line 20
si quelqu'un avait une idée de ce que ca peut etre ca m'aiderai bien. j'ai pensé que la fonction renvoyait false et que l'affichage était due a ca, mais non car je récupere la valeur et je fais un test dessus, ce qui devrait éviter de m'afficher ce genre de cochonnerie. pourtant c tjrs la. je comprend pas en + ca marchait nikel.
merci de bien vouloir m'aider sur ce point.