Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1302 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Cookie qui ne fonctione pas ???

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Cookie qui ne fonctione pas ???

n°1517002
univscien1
Posté le 20-02-2007 à 14:20:30  profilanswer
 

Salut!
 
Encore un prob. :p
 
Voilà, en fait j'ai fait un script ou les membre du site peuvent mettre leurs code source (de prgm) en ligne.
 
Les prgm sont ensuite classés en fonction des notes que les autres membres leur attribut.
 
Le probléme, c'est qu'une foie avoir donné une note, un cookie est sencé se créer pour ne pas revoter, mais apparament rien ne ce passe, car une foie voté, il ya la note du prgm qui apparait, mais aussi le formulaire qui permet de donner une note.  
 

Code :
  1. <?php
  2. if ($cookvote == 1)
  3. {
  4. $timestamp_expire = time() + 3600*24*365;
  5. setcookie('cvote', '1', $timestamp_expire);
  6. }
  7. $style = "prgm";
  8. include("haut.php" ); ?>
  9. <?php
  10. mysql_connect("localhost", "tibasicunivers", "tibasic" );
  11. mysql_select_db("tibasicunivers" );
  12. $lesprgm = mysql_query("SELECT * FROM prgmmembre WHERE nom='" . $_GET['nom'] . "'" );
  13. $Lesprgm = mysql_fetch_array($lesprgm);
  14. $notenouvelle = $Lesprgm['note'];
  15. $nbvote = $Lesprgm['nbvote'];
  16. if (isset($_POST['noteprgm']) AND $_POST['noteprgm'] != 'Note')
  17. {
  18. $noteprgm = htmlentities ($_POST['noteprgm']);
  19. $notenouvelle = $notenouvelle + $noteprgm;
  20. $nbvote = $nbvote + 1;
  21. mysql_query("UPDATE prgmmembre SET nbvote='" . $nbvote . "', note='" . $notenouvelle . "' WHERE nom='" . $_GET['nom'] . "'" );
  22. $cookvote = 1;
  23. }
  24. $Lanote = $notenouvelle / $nbvote;
  25. ?>
  26. <center><div class="auteur">
  27.     <strong>Auteur</strong> :  <?php echo $Lesprgm['auteur']; ?><br />
  28.     <strong>Créé le</strong> :  <?php echo $Lesprgm['jours'] . '/' . $Lesprgm['moi'] . '/' . $Lesprgm['annee']; ?><br \>
  29.     <strong>Mis en ligne le</strong> : <?php echo date('d/m/Y', $Lesprgm['enligne']); ?><br />
  30.     <strong>Groupe</strong> :  Membre<br />
  31. </div>  </center>
  32. <br />
  33. <?php
  34. if ($cookvote == 1)
  35. {
  36. echo 'Note moyenne attribué au programme: ' . round($Lanote, 1);
  37. }
  38. if (!isset($_COOKIE['cvote']))
  39. {
  40. ?>
  41. Donner une note à ce programme:  <form method="post" action="prgmmembre.php?nom=<?php echo $_GET['nom']; ?>">
  42. <select name="noteprgm">
  43. <option value="Note">Note</option>
  44. <?php
  45. $v = 0;
  46. while ($v <= 20)
  47. {
  48. echo '<option value="' . $v . '">' . $v . '/20</option>';
  49. $v = $v+1;
  50. }
  51. ?>
  52. </select>
  53. <input type="submit" value="GO" />
  54. <?php
  55. }
  56. ?>
  57. <br /><br />
  58. <strong>Code:</strong>
  59. <div class="code">
  60. <?php echo $Lesprgm['code']; ?>
  61. </div><br />
  62. <br />
  63. <?php echo $Lesprgm['message']; ?>


 
 
Voila, comme vous le voyez, une foie voté, la variable $cookvote se crer et prend pour valeur 1, ce qui entraine une création du cookie cvote.
 
Et n'est affiché le formulaire (normalement) seulement si cvote n'éxiste pas.
 
Donc voila, moi j'ai beau chercher, je ne trouve pas le problème.
Pour voir ce qui ce passe, allez ICI
 
 
Merci d'avance.

mood
Publicité
Posté le 20-02-2007 à 14:20:30  profilanswer
 

n°1517011
skeye
Posté le 20-02-2007 à 14:30:03  profilanswer
 

ton cookie risque pas d'être créé, ton if ($cookvote == 1) est tout au début de ton script, alors que tu n'as même pas créé ta variable cookvote...[:moule_bite]


Message édité par skeye le 20-02-2007 à 14:30:11

---------------
Can't buy what I want because it's free -
n°1517041
univscien1
Posté le 20-02-2007 à 14:43:39  profilanswer
 

Comment je peus faire alors?
 
Parce-que setcookie doit se trouver avant tout code HTML.  :(

n°1517043
skeye
Posté le 20-02-2007 à 14:45:28  profilanswer
 

...et alors??
Tu n'as rien qui t'oblige à faire un affichage écran avant ton $cookvote = 1; là non? :??:


---------------
Can't buy what I want because it's free -
n°1517047
univscien1
Posté le 20-02-2007 à 14:52:23  profilanswer
 

Comment çà?
 
Dsl j'ai pas compri ^^

n°1517054
skeye
Posté le 20-02-2007 à 14:54:12  profilanswer
 

ton setcookie, pourquoi il n'est pas là-dedans?

Citation :

#
if (isset($_POST['noteprgm']) AND $_POST['noteprgm'] != 'Note')
#
{
#
$noteprgm = htmlentities ($_POST['noteprgm']);
#
$notenouvelle = $notenouvelle + $noteprgm;
#
$nbvote = $nbvote + 1;
#
mysql_query("UPDATE prgmmembre SET nbvote='" . $nbvote . "', note='" . $notenouvelle . "' WHERE nom='" . $_GET['nom'] . "'" );
#
$cookvote = 1;
#
}


---------------
Can't buy what I want because it's free -
n°1517107
univscien1
Posté le 20-02-2007 à 15:43:18  profilanswer
 

Ben parce-que on peus pas mettre de setcookie avant un code HTML.

n°1517113
skeye
Posté le 20-02-2007 à 15:50:42  profilanswer
 

Je ne vois pas de html avant.[:dawao]


---------------
Can't buy what I want because it's free -
n°1517125
univscien1
Posté le 20-02-2007 à 16:10:42  profilanswer
 

ha ben dsl je l'avais pas mis ^^
 
Mais c'est bon, j'ai résolut le prob.
Merci.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Cookie qui ne fonctione pas ???

 

Sujets relatifs
Perte de cookieIIS+Cannot send session cookie
Lien entre session et cookieComportement Bizare de mon COOKIE [RESOLU]
Un Cookie qui ne se supprime pasCookie
sécuritée du html sur site distant et vol de cookieCookie + Firefox
Mauvais lancement de cookie, comportement étrangeCookie pour log permanent sur site web
Plus de sujets relatifs à : Cookie qui ne fonctione pas ???


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR