|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre éprouvé
![]() Cyrill GremaudIngénieur systèmes et réseaux Inscription : août 2005 Messages : 1 002 ![]() |
salut tout le monde
voila jai une page index.php et au centre de cette page je fais des include d'autre page... donc sa me fais des page du style index.php?page=forum, index.php?page=photo etc... mais le problème c'est que lorsque je click sur un lien, il me refresh toute la page... est ce possible qu'il ne refresh que l'include ??? merci |
|
|
00
|
|
|
#2 |
|
Membre éprouvé
![]() Inscription : décembre 2005 Messages : 385 ![]() |
euh... peut-etre avec un truc en AJAX, mais bon, faut qsuelqu'un qui s'y connait un peu plus que moi pour t'expliquer comment on fait!
|
|
|
00
|
|
|
#3 |
|
Membre habitué
![]() Inscription : avril 2005 Messages : 111 ![]() |
En gros, tu mets tout ton include à l'intérieur d'un bloc DIV (ou autre) et pour chaque lien, tu fais appel à une fonction Javascript qui enverra une requete XmlHttpRequest, pompera le contenu de la page et viendra changer l'intérieur du DIV.
Il existe pas mal d'exemple sur le wev pour ça mais bon l'ennui c'est que tu dois changer tous tes liens dans la page incluse. Un truc un peu améliorer scannerais toute la page à son chargement et s'occuperait de remplacer les liens par un appel javascript mais bon... c'est du chipotage ! Sinon, tu utilises un iframe
__________________
Que la Schtuche soit avec vous !!! |
|
|
00
|
|
|
#4 |
|
Membre éclairé
![]() Inscription : août 2005 Messages : 361 ![]() |
si le debut et la fin de ta page tu peux utiliser les auto_prepend_file.
les serveur gardera le fichier en memoire (si c'est dans le .ini, pas via htaccess)
__________________
Le but de tout developpeur OO est de devenir une référence. Mon avatar est un ambigramme, les curieux peuvent le retourner ;-) Aider <> Faire a la place de!!! |
|
|
00
|
|
|
#5 | ||||
|
Membre éprouvé
![]() Cyrill GremaudIngénieur systèmes et réseaux Inscription : août 2005 Messages : 1 002 ![]() |
en fait j'ai pensé faire un truc du genre comme ca:
j'ai en php un select en fonction de la page qu'on veut, qui ressemble à ça: Code :
la transformation ressemblerait à ça: Code :
mais ca marche pas ce serait dans ce sens quand même ? |
||||
|
|
00
|
|
|
#6 | |||||
|
Membre du Club
![]() Inscription : juin 2003 Messages : 83 ![]() |
Citation:
j'ai la même archi que toi et je ne vois pas où est le souci dans le fait de recharger la page en entier. Les images et autres scripts sont en cache dans le navigateur et l'affichage est instantanée. T'es sûr que tu te prends pas la tête pour pas grand chose ? Par contre j'ai un autre souci : La gestion des refresh (via touche F5, back ...) Le membre poste un formulaire qui envoie un mail, fait un INSERT en base... s'il fait refresh, tout est reposté. Sur un Insert, vu que j'ai bien blindé ma base, il a une erreur de duplication de clé mais ça reste moche. Sur un envoi de mail, il peut flooder facilement. J'ai mis une bidouille en place : je mémorise le timestamp de l'envoi et je le jette s'il en refait un dans les 20 secondes. C'est déjà ça mais n'y a-t-il pas un meilleur moyen ? (à part la gestion via N pages : 1 pour le formulaire, 1 pour le traitement, et 1 pour le retour. Merci |
|||||
|
|
00
|
|
|
#7 | ||
|
Expert Confirmé Sénior
![]() Inscription : septembre 2004 Messages : 5 421 ![]() |
Citation:
Citation:
Lorsque tu génères un formulaire, tu crées un jeton. Ce jeton tu le place en session et dans le formulaire en hidden Quand tu recois le formulaire, tu compares son jeton avec celui en session Si c'est les mêmes tu valides et tu supprimes le jeton. Si le gars rafraichit la page et qu'il ressoumet le meme jeton ca marchera pas. |
||
|
|
00
|
|
|
#8 | |||
|
Membre du Club
![]() Inscription : juin 2003 Messages : 83 ![]() |
Citation:
Excellente idée !!! et facile à mettre en place. merci ! Je vais proposer ça à mon compère a+ |
|||
|
|
00
|
|
|
#9 | ||||||
|
Membre éprouvé
![]() Cyrill GremaudIngénieur systèmes et réseaux Inscription : août 2005 Messages : 1 002 ![]() |
Citation:
|
||||||
|
|
00
|
|
|
#10 | |||
|
Membre éprouvé
![]() Cyrill GremaudIngénieur systèmes et réseaux Inscription : août 2005 Messages : 1 002 ![]() |
Citation:
|
|||
|
|
00
|
|
|
#11 |
|
Membre émérite
![]() Inscription : février 2006 Messages : 840 ![]() |
Une valeur quelconque que tu peux générer par time() ou rand() ou autre...
__________________
Consultant idéaliste. |
|
|
00
|
|
|
#12 | |
|
Expert Confirmé Sénior
![]() Inscription : septembre 2004 Messages : 5 421 ![]() |
Citation:
|
|
|
|
00
|
|
|
#13 |
|
Membre du Club
![]() Inscription : juin 2003 Messages : 83 ![]() |
Ok, j'ai rien dit cyrill, ton usage est très spécifque
Toujours pas la gestion des refresh. J'ai pas mal de combo qui servent à naviguer d'une journée à l'autre (gestion championnat de foot). Je faisais un submit sur le ONCHANGE. Le formulaire étant en POST, si je faisais back pour revenir 5 journées en arrière, IE ou FFX me demande si je veux re-soumettre. La réponse est oui mais que c'est pénible. Dc je fais un form en GET que pour la combo des journées. Super ! plus de question de refresh, ça marche au poil....enfin pas tout à fait et c'est là que ma question arrive. ex : Je vais de la j1 à la j5 ...j7 j9. Je fais back. Je reviens à la J7 mais là problème. La combobox affiche encore la J9 !!! Re-back : J'arrive en J5 mais la combo affiche J7 ! Il y a un décalage ! Je regarde le source de ma page. La bonne <option> est selected mais le browser n'en tient pas compte ! Je me suis dit que c'était un bug FFX 1.5 mais avec IE6 c'est pareil. Les bras m'en tombent. Je n'ai pas l'ombre d'une idée pour résoudre ce problème vraiment bizarre. Merci pour votre aide. a+ |
|
|
00
|
|
|
#14 |
|
Expert Confirmé Sénior
![]() Inscription : septembre 2004 Messages : 5 421 ![]() |
Essaie avec l'attribut autocomplete="off" sur ton select. Ce n'est pas full standard mais ca peut peut-etre résoudre tes ennuis
|
|
|
00
|
|
|
#15 | |
|
Membre du Club
![]() Inscription : juin 2003 Messages : 83 ![]() |
Citation:
C'est dingue ce pétage de plomb. Et depuis le temps que je code des pages web, je ne m'en étais jamais rendu compte.
|
|
|
|
00
|
|
|
#16 |
|
Expert Confirmé Sénior
![]() Inscription : septembre 2004 Messages : 5 421 ![]() |
C'est un comportement normal, ca permet à l'utilisateur de revenir sur ses pas sans perdre sa selection.
|
|
|
00
|
|
|
#17 | |
|
Membre du Club
![]() Inscription : juin 2003 Messages : 83 ![]() |
Citation:
Tu fais back. 99.99% de ta page affiche les bonnes données, le code source te dit que c'est la bonne option qui est SELECTED mais la navigateur (IE ou FFX) affiche une sélection différente malgré tout ! Moi j'appelle ça un pétage de plomb J'ajoute même que c'est pire qu'un simple décalage. J'ai fait une série de 10 changements suivis de 10 back. Au final, il arrive parfois que l'affichage de la list box soit cohérente après qq backs. Mais dans tous les cas, ce n'est jamais du 100%. Ce qui m'étonne, c'est que je ne trouve rien sur le web qui explique comment traiter proprement les Refresh et les Back-Next. a+ |
|
|
|
00
|
|
|
#18 | ||||
|
Expert Confirmé Sénior
![]() Inscription : septembre 2004 Messages : 5 421 ![]() |
Citation:
Tu choisis 'Mlle' puis tu soumets le formulaire. Malheureusement il y a des erreurs dans ton formulaire ou tu veux vérifier quelque chose... bref tu fais [back] dans ton navigateur. Le comportement attendu et de se retrouver avec ta sélection (tu es toujours 'Mlle') et non pas avec la selection par défaut. Donc ton cas es quelque peu spécifique. Allez je suis bon prince, un petit cadeau : Code :
|
||||
|
|
00
|
|
|
#19 | |||
|
Membre du Club
![]() Inscription : juin 2003 Messages : 83 ![]() |
Citation:
Par contre, mon cas n'est pas spécialement farfelu et je m'étonne que rien ne soit prévu pour facilement y remédier. J'ai essayé un code similaire au tien pour remedier à mon prob. En le mettant dans le body onload ça ne marchait pas. J'essaye le tien (pas dans le onload) et je te tiens au courant. En tout cas, merci bon Prince EDIT : rien à faire Les 2-3 1ers backs sont décalés, puis ca se rajuste et c'est OK ? En refaisant "suivant", les mêmes décalages apparaissent. Bref, c'est la misère |
|||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com