IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

rafraichir une page à son chargement


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut rafraichir une page à son chargement
    Bonsoir,

    mon souci, c'est que une page, j'ai un formulaire html qui permet de rentrer certaines données et de mettre celles-ci dans MySQL, puis j'en ai une autre qui affiche le contenu de la table : or, les anciennes saisies sont bien affichées mais pour que la nouvelle le soit il faut faire un refresh de la page ; qu'à cela ne tienne je voudrais faire un refresh de la page sur l'évenement onload :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    windows.onload=une_fonction()
    ou une ligne dans le head. Pourriez-vous m'aider à trouver la solution ?

  2. #2
    Membre Expert
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Par défaut
    Salut,

    Pour recharger une page...
    Code js : Sélectionner tout - Visualiser dans une fenêtre à part
    window.location.reload();

    Mais si on recharge la page comme ceci...
    Code js : Sélectionner tout - Visualiser dans une fenêtre à part
    window.onload=function(){window.location.reload();}
    ça tourne en boucle.

    Il nous faudrait plus d'infos.

  3. #3
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut
    Dans la page initiale, j'ai ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $sql= 'INSERT into `annonce` (cat,nom,prenom,pseudo,date,text, langue,validee,immediat,photo,nom_photo,format_photo) VALUES (\''.ES($cat).'\',\''.ES($nom).'\',\''.ES($prenom).'\',
    \''.ES($pseudo).'\',\''.ES($date).'\',\''.ES($text).'\',\''.ES($langue).'\',\''.ES("1").'\',\''.ES("0").'\',\''.ES($photo).'\',\''.ES($nom_photo).'\'
    ,\''.ES($format_photo).'\')';
     
    $sql = stripslashes($sql);
    $result = mysql_query($sql) or die(mysql_error());
     
    echo 'annonce saisie<br>';
    avec ES :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function ES($truc)
    {
    $truc=mysql_real_escape_string($truc);
    return $truc;
    }
    et dans la 2e page, j'ai :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    $sql="select * from `annonce` where cat='avis_rech' AND langue='fr' AND(immediat='1' OR validee='1') order by id_annonce desc";
    $sql = stripslashes($sql);
    $result = mysql_query($sql) or die(mysql_error());
     echo ("<table border='1'>");
     $i=0;
     while ($ligne=mysql_fetch_array($result,MYSQL_NUM)) {
         echo ('<tr><td>');
         echo (' le '.nl2br($ligne[5]).'</td><td>'.nl2br($ligne[3]).' '.nl2br($ligne[2]).'</td></tr>');
    	 echo ('<tr><td>'.nl2br($ligne[6]).'</td>');
    ....

  4. #4
    Membre Expert
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Par défaut
    Au début du fichier affichant le contenu de la table, place les lignes suivantes...
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?php
    header('Cache-Control: no-cache, must-revalidate');
    header('Cache-Control: post-check=0, pre-check=0', false);
    header('Pragma: no-cache');
    header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
    header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
    pour s'assurer que la page nouvellement créée est bien renvoyée.

    On ne sait jamais.

  5. #5
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut
    Oui, ça marche bien, mais je suis obligé de modifier moi-même le fichier pour placer ce code tout au début, car si je demande à l'outil utilisé de le placer dans le head, il le met plus bas, et il ne peut pas interpréter les headers...Donc à chaque fois que l'utilisateur fera des modifs, il faudra que je fasse moi-même cette manip (pas la peine de lui demander) : est-ce une obligation ?

  6. #6
    Membre Expert
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Par défaut
    Tu pourrais alors placer, dans le même répertoire que la page, un fichier nommé ".htaccess" contenant les lignes...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <Files page.php>
    FileETag None
    <IfModule mod_headers.c>
    Header unset ETag
    Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
    Header set Pragma "no-cache"
    Header set Expires "Mon, 26 Jul 1997 05:00:00 GMT"
    </IfModule>
    </Files>
    en prenant soin d'adapter le nom du fichier (ici page.php pour l'exemple).

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VB.Net] Comment rafraichir une page aspx ?
    Par bisounux dans le forum ASP.NET
    Réponses: 3
    Dernier message: 02/02/2006, 11h25
  2. Rafraichir une page
    Par ghost942 dans le forum Langage
    Réponses: 5
    Dernier message: 03/01/2006, 17h32
  3. [VBNET] Rafraichir une page WEB distante (par IE)
    Par onipif dans le forum VB.NET
    Réponses: 7
    Dernier message: 22/11/2005, 18h59
  4. [Rafraichir] Rafraichir une page sans perdre mes champs
    Par ozzmax dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 16/11/2005, 17h54
  5. [jsp]rafraichir une page
    Par GreenJay dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 21/07/2004, 14h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo