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 :

conseil si condition ou fonction ? pour refresh requete


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2015
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Août 2015
    Messages : 93
    Par défaut conseil si condition ou fonction ? pour refresh requete
    bonjour,
    je teste actuellement le rafraichissement d'une page ou plus précisément une requête avec du code php
    voir code ci-dessous :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $page = $_SERVER['PHP_SELF'];
    $sec = 5;
    header("Refresh: $sec; url=$page");
     
    //formatage de l'heure afficher
    $heure = date('H:i:s');
    jusqu'ici tous va bien !
    là ou ça ce complique, c'est quand je souhaite mettre un checkbox pour faire un (on off) du refresh et un sélecteur de vitesse de rafraichissement quand il est actif

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <td> dernière actualisation de la page a : <?php print("$heure");?>
     
    					<label>on off</label><input type="checkbox" name="on_off" value="true">&nbsp;&nbsp;
    					rafraichissement de la page toutes les :
    					<select name="valeur">
    					<option value=3 selected="selected">3 sec.</option>
    					<option value=5 >6 sec.</option>
    					<option value=10 >10 sec.</option>
    					<option value=15 >15 sec.</option>
    					</select>
    j'ai essaye de mettre la variable $valeur a la place de 10 qui est le nombre de seconde définie de base dans le code écrit en premier
    ma page fait sont refresh en boucle et ne prend pas le temps sélectionner de mon select
    quand a mon checkbox j'ai essaye de l'utiliser dans une condition mais je n'y arrive pas...

    donc pour le moment j'en là :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    <?php
    IF  ($on_off = true)
    {
    $page = $_SERVER['PHP_SELF'];
    $sec = 10;
    header("Refresh: $sec; url=$page");
    }
    ELSE ($on_off = false)
     
    // heure minutes seconde
     
    $heure = date('H:i:s');
    ?>
    					</td>
    				</tr>
    				<tr>
    					<td> derniere actualisation de la page a : <?php print("$heure");?>
    					<label>off</label><input type="checkbox" name="on_off" value="true">&nbsp;&nbsp;
    					rafraichissement de la page toutes les :
    					<select name="valeur">
    					<option value=3 selected="selected">3 sec.</option>
    					<option value=5 >5 sec.</option>
    					<option value=10 >10 sec.</option>
    					<option value=15 >15 sec.</option>
    					</select>
    j'ai mis un ELSE sans conviction et sans savoir ou mettre c'est crocher {} n'y quoi dedans je sèche là !
    rien ne fonctionne sauf le code de rafraichissement de la requête quand il est seul

    si une personne peu me mettre sur les rails je vous remercie par d'avance de votre aide et de vos réponses

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    IF  ($on_off = true)
    $on_off sort de nulle part...

    un formulaire suppose des balises <form>, et une récupération avec $_POST ou $_GET.
    $_GET me semble approprié ici.

    Sinon, en $_POST, il faut stocker les résultats dans une variable de SESSION pour ne pas les perdre au rafraichissement suivant.
    Dernière modification par Invité ; 03/12/2015 à 08h05.

  3. #3
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2015
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Août 2015
    Messages : 93
    Par défaut
    merci de la réponse,
    j'ai tester la méthode GET en rajoutant mes balise form cela ne va pas, il se réactualise et perd les info.
    du coup je passe avec la méthode POST et utilise la variable $SESSION
    je vais tester ça et regarde ceux que ça donne
    je reviens quand j'ai avancer la dessus pour la fonction ou la condition

  4. #4
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2015
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Août 2015
    Messages : 93
    Par défaut
    re, après de multiples test je pense que je m'en rapproche mais cela ne fonctionne pas vraiment comme ce que je souhaite faire
    je souhaite activer et désactiver avec le checkbox et quand c'est désactiver que ce soit la valeur en seconde sélectionner qui prenne le relai et rafraichisse la page en fonction de la valeur choisi dans le select

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
     
    <?php
    session_start(); // on utilise la superglobale
     
    // On créer des variables de session dans $_SESSION
     
    $_SESSION['on_off'] = $_POST['on_off'];
    $_SESSION['valeur'] = $_POST['valeur'];
     
    // test pour visualiser la superglobale
     
    print_r($_SESSION); // pour voir ceux qu'affiche la superglobale pour test !
     
    // fin de test
     
    	if (isset($_POST['on_off']) == "off") 
       		{
     		$page = $_SERVER['PHP_SELF'];
     		$sec = $_SESSION['valeur'];
    		header("Refresh: $sec; url=$page");
                                                                     // Checkbox is selected
    		} 
    /*	else (isset($_SESSION['valeur']) = $_POST['valeur']) // pour le else ne sais pas trop comment faire ...
    		{
    		$page = $_SERVER['PHP_SELF'];
    		$sec = $valeur;
    		header("Refresh: $sec; url=$page");
    		}
    */ 
    //pas l'impression que ca sert a quelque chose 
    	$v3 = 3;
    	$v5 = 5;
            $v10 = 10;
            $v15 = 15;
            $v20 = 20;
            $v30 = 30;
    // fin 
     
    // formatage de l'heure afficher : heure minutes seconde      
            $heure = date('H:i:s');
    ?>
    					</td>
    				</tr>
    				<tr>
    					<td> derniere actualisation de la page a : <?php print("$heure");?>
    					<form action="refresh.php" method="POST">
    					<label>on/off</label><input type="checkbox" name="on_off" value="<?php $on_off ?>">&nbsp;&nbsp;
    					rafraichissement de la page toutes les :
    					<select name="valeur">
    					<option value="3" >3 sec.</option>
    					<option value="5" >6 sec.</option>
    					<option value="10" selected="selected">10 sec.</option>
    					<option value="15" >15 sec.</option>
    					<option value="20" >20 sec.</option>
    					<option value="30" >30 sec.</option>
    					</select>
    					<input type="submit" value="envoyer"> </form>
    merci de vos réponse et votre aide et désoler pour le code vraiment fouillis c'est un de mes premier vraiment coder

  5. #5
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Remplace :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $_SESSION['on_off'] = $_POST['on_off'];
    $_SESSION['valeur'] = $_POST['valeur'];
    par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    // par défaut
    if( empty($_SESSION['on_off'])) { $_SESSION['on_off'] = "off"; }
    if( empty($_SESSION['valeur'])) { $_SESSION['valeur'] = 5; }
    // si choix
    if( isset($_POST['on_off'])) { $_SESSION['on_off'] = $_POST['on_off']; }
    if( isset($_POST['valeur'])) { $_SESSION['valeur'] = $_POST['valeur']; }

  6. #6
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2015
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Août 2015
    Messages : 93
    Par défaut
    merci de ta réponse,
    le but est proche mais difficile a atteindre ta proposition ma aider a avancer mais c'est pas encore ça du coup j'ai enlever le checkbox et mis un select pour le on off.
    l'effet avec ta proposition étais de faire un rafraichissement sans prendre en compte la valeur de temps en seconde choisi et s’arrêter a la fin du temps.

    dans le code actuel les valeur de S_SESSION change et s'affiche en fonction du choix mais la valeur on_off ne fonctionne pas, c'est comme si il rester sur la valeur "on" de longue par contre le rafraichissement ce fait avec la valeur sélectionner (3,5,10 etc..)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
     
    <?php
    session_start(); // on utilise la superglobale
     
    if( empty($_SESSION['valeur'])) { $_SESSION['valeur'] = 5; }
     
    if( isset($_POST['on_off'])) { $_SESSION['on_off'] = $_POST['on_off']; } 
    if( isset($_POST['valeur'])) { $_SESSION['valeur'] = $_POST['valeur']; }
    print_r($_SESSION);
     
    	if( empty($_SESSION['on_off']) == false) 
     
    		{
    		$page = $_SERVER['PHP_SELF'];
    		$sec = $_SESSION['valeur'];
    		header("Refresh: $sec; url=$page");
        echo '<br>rafraichissement on ! ';// Checkbox pas cocher
    		} 
    // formatage de l'heure afficher : heure minutes seconde      
    $heure = date('H:i:s');
    ?>
    					</td>
    				</tr>
    				<tr>
    					<td><br> derniere actualisation de la page a : <?php print("$heure");?>
    					<form action="refresh.php" method="POST">
     
     
    					rafraichissement de la page toutes les :
    					<select name="valeur">
    					<option value="3" >3 sec.</option>
    					<option value="5" selected="selected">5 sec.</option>
    					<option value="10" >10 sec.</option>
    					<option value="15" >15 sec.</option>
    					<option value="20" >20 sec.</option>
    					<option value="30" >30 sec.</option>
    					</select>
    					<select name="on_off">
    					<option value="on" >on</option>
    					<option value="off" >off</option>
    					</select>
    					<input type="submit" value="envoyer"> </form>
    que me conseille tu pour me permettre de mettre la position off et quelle soit prise en compte (que le rafraichissement s’arrête ) et que je puisse le remettre sur la position "on" en fonction de mon choix ??
    merci de la réponse et de l'aide

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

Discussions similaires

  1. conseil pour une requete sql
    Par viny dans le forum PostgreSQL
    Réponses: 6
    Dernier message: 31/08/2007, 08h54
  2. [AJAX] [vos avis] fonction "générique" pour les requetes
    Par gorgonite dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 18/07/2007, 19h40
  3. Réponses: 4
    Dernier message: 14/01/2007, 13h21
  4. [MySQL] Condition pour une Requete sql vide
    Par needles94000 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 17/03/2006, 18h03
  5. Fonction pour récuperer mon adresse IP
    Par néo333 dans le forum Web & réseau
    Réponses: 11
    Dernier message: 01/11/2003, 17h35

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