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 :

lancer un "header" au bout d'un certain temps


Sujet :

Langage PHP

  1. #1
    Membre du Club Avatar de caro71ol
    Étudiant
    Inscrit en
    Janvier 2011
    Messages
    145
    Détails du profil
    Informations personnelles :
    Âge : 33

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2011
    Messages : 145
    Points : 61
    Points
    61
    Par défaut lancer un "header" au bout d'un certain temps
    Bonjour
    Je voulais savoir s'il était possible de lancer un "header('Location:ajouterclient.php');" au bout d'une minute par exemple, apres avoir fait ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    if ($ajout=='1') {
    								//requete d'insertion 
    								$req="INSERT INTO client VALUES('','$nom','$prenom','$adressem','$cp','$tel','$date','$carte')"; 
    								//execution requete 
    								mysql_query($req) or die ('Erreur sql!'.$req.'<br/>'.mysql_error()); 
    								echo 'Ajout effectué';
    								header('Location:ajouterclient.php');
    } 
    else {
    echo 'Erreur, veuillez recommencer';
    }

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 727
    Points
    10 727
    Par défaut
    autant faire une balise <meta> avec une redirection

  3. #3
    Membre du Club Avatar de caro71ol
    Étudiant
    Inscrit en
    Janvier 2011
    Messages
    145
    Détails du profil
    Informations personnelles :
    Âge : 33

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2011
    Messages : 145
    Points : 61
    Points
    61
    Par défaut
    cela sert à quoi exactement ce "<meta>"?

  4. #4
    Membre émérite
    Avatar de gene69
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 769
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 769
    Points : 2 446
    Points
    2 446
    Par défaut
    la question est mal posée mais tu peux le faire. Ce que tu ne peux pas faire en php c'est de prendre l'initiative sur ce que ton visiteur fait, tant que tu réagis à une de ses requetes c'est bon.

    Pour le débug affiche quand même un lien "normal" apres le header, même s'il ne sera jamais visible. Si pour une raison ou pour une autre le header() ne fonctionne pas, ton visiteur aura une solution de secours.


    par exemple, lorsque j'ai besoin d'utiliser le cache du navigateur client, je fais un lien vers un script qui met à jour (ou pas) un fichier statique ( image-cachable.png ) et je fais une redirection sur elle avec un header.

    si l'image a été mise à jour elle sera lue depuis le réseau sinon elle sera lue depuis le cache du navigateur parce que Apache va gérer automatiquement les entête de controle d'age d'un fichier "statique".

  5. #5
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 727
    Points
    10 727
    Par défaut
    Citation Envoyé par caro71ol Voir le message
    cela sert à quoi exactement ce "<meta>"?
    http://alexandre.alapetite.fr/doc-al...html#redirhtml

  6. #6
    Membre émérite
    Avatar de gene69
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 769
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 769
    Points : 2 446
    Points
    2 446
    Par défaut
    Citation Envoyé par stealth35 Voir le message
    autant faire une balise <meta> avec une redirection
    une redirection HTTP est meilleure à mon avis parce que le navigateur va la suivre obligatoirement et en plus tu informes le robot que le document qu'il est en train d'indexer n'est pas forcement pertinent (à quoi sert-il de référencer une page qui renvoie un 301? alors qu'un méta... on sait pas... ).

  7. #7
    Membre émérite
    Avatar de gene69
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 769
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 769
    Points : 2 446
    Points
    2 446
    Par défaut
    a noter cependant que dans ton exemple, header() ne fonctionne pas parce que tu fais un echo avant.

    et tu aurais fait un echo apres, tu ne l'aurais jamais vu non plus

  8. #8
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 727
    Points
    10 727
    Par défaut
    Citation Envoyé par gene69 Voir le message
    une redirection HTTP est meilleure à mon avis parce que le navigateur va la suivre obligatoirement et en plus tu informes le robot que le document qu'il est en train d'indexer n'est pas forcement pertinent (à quoi sert-il de référencer une page qui renvoie un 301? alors qu'un méta... on sait pas... ).
    tu connais beaucoup de (vrai) robot d'indexation qui passe les formulaires d'inscription ?

  9. #9
    Membre émérite
    Avatar de gene69
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 769
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 769
    Points : 2 446
    Points
    2 446
    Par défaut
    non.

    Méta c'est pour les fainéants ou ceux qui n'ont pas prévu un système de notification/confirmation dans leurs application web.

  10. #10
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 727
    Points
    10 727
    Par défaut
    Citation Envoyé par gene69 Voir le message
    non.

    Méta c'est pour les fainéants ou ceux qui n'ont pas prévu un système de notification/confirmation dans leurs application web.
    j'ai jamais dis le contraire

  11. #11
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Bonjour,

    +1stealth35
    Tu peux aussi faire une redirection javascript.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    setTimeout(function(){window.location.href="ajouterclient.php";},5000);
    Sinon:
    echo 'Ajout effectué';
    header('Location:ajouterclient.php');
    Tu ne dois envoyer aucun caractère au navigateur avant le header location.

    A+.

  12. #12
    Membre du Club Avatar de caro71ol
    Étudiant
    Inscrit en
    Janvier 2011
    Messages
    145
    Détails du profil
    Informations personnelles :
    Âge : 33

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2011
    Messages : 145
    Points : 61
    Points
    61
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    setTimeout(function(){window.location.href="ajouterclient.php";},5000);
    et je m'en sers comment?

    désolé d'etre aussi à la ramasse.

  13. #13
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Tu n'as qu'à mettre ça dans la page.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <script type="text/javascript">
    setTimeout(function(){window.location.href="ajouterclient.php";},5000);
    </script>

  14. #14
    Membre émérite
    Avatar de gene69
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 769
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 769
    Points : 2 446
    Points
    2 446
    Par défaut
    je veux pas rajouter une couche mais la première ligne du lien fourni par stealth35, c'est n'utilisez méta que lorsque vous êtes torturé par les SS.

    en javascript, c'est aussi une meilleure idée. comme ça pas de javascript côté client (ça n'arrive jamais, n'est ce pas ?) on est sur de perdre le client.

  15. #15
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Citation Envoyé par gene69 Voir le message
    comme ça pas de javascript côté client (ça n'arrive jamais, n'est ce pas ?) on est sur de perdre le client.
    Oui mais non, désactivé javascript de à jours

  16. #16
    Membre du Club Avatar de caro71ol
    Étudiant
    Inscrit en
    Janvier 2011
    Messages
    145
    Détails du profil
    Informations personnelles :
    Âge : 33

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2011
    Messages : 145
    Points : 61
    Points
    61
    Par défaut
    Citation Envoyé par andry.aime Voir le message
    Tu n'as qu'à mettre ça dans la page.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <script type="text/javascript">
    setTimeout(function(){window.location.href="ajouterclient.php";},5000);
    </script>
    merci cela fonctionne

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

Discussions similaires

  1. update qui bloque au bout d'un certain temps
    Par delaio dans le forum Bases de données
    Réponses: 2
    Dernier message: 22/03/2006, 09h51
  2. Stopper l'exécution d'une fonction au bout d'un certain temp
    Par Eagle959 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 13/03/2006, 18h16
  3. Fermer une fenêtre au bout d'un certain temps.
    Par cprogil dans le forum Composants VCL
    Réponses: 5
    Dernier message: 27/11/2003, 18h25

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