Changement de style, cookie, path [Résolu] - PHP - Programmation
Marsh Posté le 19-04-2005 à 13:59:27
Faudrait-t-il mieux éssayeravec un POST plutôt qu'un GET ?
Marsh Posté le 19-04-2005 à 14:01:33
http://www.nexen.net/docs/php/anno [...] cookie.php
Citation : Erreurs communes : |
Lis un peu la doc quand tu as des comportements étranges...
Marsh Posté le 19-04-2005 à 14:08:34
Merci, ça m'apprendra à regarder plus souvent la doc et à lacher de temps en temps mes bouqins...
Cependant, je réitère ma demande...
Marsh Posté le 19-04-2005 à 14:12:09
+1 skeye
et il manque des else pour eviter ce genre de problème, un exemple un peu plus propre :
Code :
|
Marsh Posté le 19-04-2005 à 14:14:45
Salut !
Voici un bout de code que j'ai écrit que est semblable au tien. Moi j'utilise les feuilles de style pour changer de résolution, mais le principe reste le meme.
if (isset($ChangeResolution)) {
setcookie("resolution",$ChangeResolution,time()+(60*60*24*15));
$resolution=$ChangeResolution;
} elseif ( $resolution=="" ) {
setcookie("resolution","800",time()+(60*60*24*15));
$resolution=800;
} else {
setcookie("resolution",$resolution,time()+(60*60*24*15));
}
?>
et voici le formulaire:
<form name="resolution" method="post" action="Index.php">
Résolution: <br>
<input type="radio" name="ChangeResolution" value="800" <? if ($resolution=="800" ) echo "checked" ?> >
800*600<br>
<input type="radio" name="ChangeResolution" value="1024" <? if ($resolution=="1024" ) echo "checked" ?> >
1024*768
<br>
<input type="submit" name="Submit" value="Changer">
</form>
Marsh Posté le 19-04-2005 à 14:22:15
Merci.
Le résulat est très bien. Il ne me reste plus qu'à régler le problème du formulaire qui me renvoie à l'index du site, mais c'est un autre post...
EDIT : Il n'y aura point lieu d'ourvir un nouveau post... J'ai utilisé POST comme yakob59 et $SERVER[REQUEST_URI] pour l'action= du formulaire qui lui même se voit ajouté if ($fstyle == $enCours) { print " selected=\"selected\""; }...
De nouveau merci pour vos réponses.
Marsh Posté le 20-04-2005 à 16:43:05
Trop beau pour être vrai...
ça ne fonctionne plus.... Je remet donc mon code en éspérant qu'une bonne âme trouve se qui cloche...
Le formulaire :
Code :
|
Le code php :
Code :
|
Marsh Posté le 20-04-2005 à 16:49:04
Il te manque les '
=> $_POST['style'], $_COOKIE['style']
Marsh Posté le 20-04-2005 à 16:52:58
Merci
Marsh Posté le 20-04-2005 à 17:11:39
EDIT : ça fonctionne defois un peu...:ouch:
Bref, ça déconne... Vous pouvez tester par vous même http://yoyo.eurotchat.net/index.php.
Masklinn, IOTBS utilise du javascript et je ne veux pas en utiliser vue le nombre de personne qui le déscative.
Marsh Posté le 20-04-2005 à 17:13:35
yoyo354 a écrit : |
chez moi ça marche très bien sous firefox et IE.
Marsh Posté le 20-04-2005 à 17:14:29
Ça marche bien ton truc... mais aïe les yeux quand on passe en rouge ou en rose...
Sinon c'est vraiment pas mal..
Marsh Posté le 20-04-2005 à 17:23:15
En effet, cela fonctionne defois...
Voici la procédure qui permet de le faire déconner ce petit monde :
- Effacer les cookies du domaine yoyo.eurotchat.net ;
- Aller sur la page d'accueil : http://yoyo.eurotchat.net/index.php ;
- Changer le style en rose et faire ok ;
(là, la page devient bien rose)
- Aller sur "mes potes" ;
- Changer le style en rouge et faire ok ;
(là, la page devient bien rouge)
- Aller sur la page "accueil" ;
ET LA : la page est rose et NON rouge...
EDIT : J'avais oublié de dire merci pour avoir tester les styles sur mon site
- Sinon babar9160, je te l'accorde, les couleurs sont à chier ( le rose c'est pour une copine..) (le rouge, c'est pour montrer mes talents de graphiste ...)
Marsh Posté le 21-04-2005 à 08:57:47
J'ai encore mieux...
J'arrive sur ton site : il est en noir.
Je le mets en rouge...
Je vais dans une rubrique peu importe, et je mets en rose.
Ben quand je reviens sur l'accueil... tadaaa c'est noir
Doit il y avoir un soucis. D'autant plus que si je vais sur une autre rubrique c'est bien en rose. A ne plus rien y comprendre.
Marsh Posté le 21-04-2005 à 10:45:12
Surtout que tout presque toute les rubriques mène à l'accueil->index.php, les autres rubriques sont des includes dans index.php (pour les adresses -> url-rewriting)
Là, je suis pommé
Marsh Posté le 22-04-2005 à 15:32:58
Marsh Posté le 22-04-2005 à 15:55:38
merci pour le lien mais je l'avais déjà vue.
J'utilise uniquement des feuilles de style et je ne veux pas de javascript
Marsh Posté le 22-04-2005 à 16:55:42
Juste une idee comme ca, ce serait pas un probleme lie au cache ?
Enfait le probleme viens de ton cookie.
J'ai efface tes cookies, je vais sur ton site, un cookie est cree "style noir", le path de ce cookie est "/".
Si maintenant je vais dans une rubrique, et que je change le style, un autre cookie sera cree avec un autre path.
Donc du coup quand tu reviens sur la page d'accueil il reprends le premier cookie avec le path "/" .
Donc regarde la gestion de ton cookie, est il faut que tu lui indique "/" comme path tout le temps.
Marsh Posté le 22-04-2005 à 17:43:00
J'avoue ne pas très bien comprendre le changement de path...
Code :
|
Mais sinon, il faudrait effacé tout les cookies avant den créer un autre ?
EDIT :
Edit 2 :
Code :
|
Voilà, en effet Cerel, il s'agissait bien d'un problème de path.
Marsh Posté le 19-04-2005 à 11:20:32
Bonjour à tous,
Je viens de créer quelques lignes de codes permettant aux visiteurs de mon site de chosir leurs feuilles de style parmis celles que j'ai créer.
Voici donc ces quelques lignes :
et voici le code mon formulaire :
Pour en arriver au problème suivant :
Lorsque je change de style, le changement ne s'applique pas immédiatement. L'utilisateur est obligé d'actualiser la page. Comment y remédier ? J'ai essayer avec header() refresh, mais ça déconne avec IE...
Merci d'avance.
Message édité par yoyo354 le 22-04-2005 à 18:11:11
---------------
http://yoyo.eurotchat.net -> Wednesday 14 September a 02:00:01 up 43 days, 11:47, 2 users, load average: 0.07, 0.03, 0.00