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 :

Vérifier DatePicker non vide


Sujet :

Langage PHP

  1. #1
    Membre éclairé
    Homme Profil pro
    Touche à tout
    Inscrit en
    Mai 2017
    Messages
    482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Allier (Auvergne)

    Informations professionnelles :
    Activité : Touche à tout

    Informations forums :
    Inscription : Mai 2017
    Messages : 482
    Par défaut Vérifier DatePicker non vide
    Bonjour,

    J'ai une menu dans lequel je sélectionne des valeurs pour une requête. Je voudrais contrôler que mes 2 DatePickers ne soient pas vides. Je ne sais pas si je dois faire le contrôle en PHP ou Javascript?

    Merci par avance.

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    En PHP c'est nécessaire, en Javascript c'est utile.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre éclairé
    Homme Profil pro
    Touche à tout
    Inscrit en
    Mai 2017
    Messages
    482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Allier (Auvergne)

    Informations professionnelles :
    Activité : Touche à tout

    Informations forums :
    Inscription : Mai 2017
    Messages : 482
    Par défaut
    Ok, alors comment lancer la fonction en PHP lors du clic bouton?

    En Javascript, c'est à peu près bon (le contrôle des champs est OK sauf que ma fonction s’exécute...

    Je voudrais que:
    -Si DatePickerStart > DatePickerEnd alors message 'date de fin supérieure à date de début',
    -Si DatePickerStart vide alors message 'Saisir date de début',
    -Si DatePickerEnd vide alors message 'Saisir date de fin',
    -Si tout est OK -> Requête.

    Mon code:
    Mon form:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <form name='Form1' action='QueryResult.php' method='POST'>
     
    	<p>Date de début:<BR><input class='combo' type='text' id='datepickerstart' name='DateStart'></p>
    	<p>Date de fin:<BR><input class='combo' type='text' id='datepickerend' name='DateEnd'></p><BR>
     	<button  class='btn_menu_1_valider' name='Valider' type='submit' onsubmit="CheckForm();">Lancer requête</button><BR>
     
    </form>
    Javascript:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <script type="text/javascript">
      function CheckForm(){
        if ((document.Form1.DateStart.value=="")||(document.Form1.DateEnd.value=="")){
    		alert("Vérifier les dates de requête!");
    		return;
    		}
    	else{ document.Form1.submit();
    		}
    	}
    </script>

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    En PHP c'est à la réception du formulaire que tu dois faire le test.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre éclairé
    Homme Profil pro
    Touche à tout
    Inscrit en
    Mai 2017
    Messages
    482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Allier (Auvergne)

    Informations professionnelles :
    Activité : Touche à tout

    Informations forums :
    Inscription : Mai 2017
    Messages : 482
    Par défaut
    C'est là que je bute dans la méthode...

    Quoique je fasse ma fonction s’exécute, je n'arrive pas à empêcher l’exécution...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    	<p>Date de début:<BR><input class='combo' type='text' id='datepickerstart' name='DateStart'></p><p1 class="error">* <?php echo $startDateErr;?></p1>
    	<p>Date de fin:<BR><input class='combo' type='text' id='datepickerend' name='DateEnd'></p><p1 class="error">* <?php echo $endDateErr;?></p1><BR>
    PHP:
    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
     
    <?php
    // define variables and set to empty values
    $startDateErr = $endDateErr = "";
     
    if ($_SERVER["REQUEST_METHOD"] == "POST") {
      if (empty($_POST["DateStart"])) {
        $startDateErr = "Saisir date de début";
      } else {
        //$startDateErr = test_input($_POST["startDateErr "]);
      }
     
      if (empty($_POST["DateEnd"])) {
        $endDateErr = "Saisir date de fin";
      } else {
        //$endDateErr = test_input($_POST["DateEnd"]);
      }
    }
     
    ?>

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    if ($startDateErr == '' && endDateErr  == '') {
      // traitement
    }
    else {
      // formulaire
    }
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Membre éclairé
    Homme Profil pro
    Touche à tout
    Inscrit en
    Mai 2017
    Messages
    482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Allier (Auvergne)

    Informations professionnelles :
    Activité : Touche à tout

    Informations forums :
    Inscription : Mai 2017
    Messages : 482
    Par défaut
    C'est bien là que je butte.. je dois mettre le 'else' en mauvaise position... et je ne sais pas comment lancer le formulaire en php...

    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
     
    <?php
    // define variables and set to empty values
    $startDateErr = $endDateErr = $GlobalDateErr = "";
     
    if ($_SERVER["REQUEST_METHOD"] == "POST") {
     
    	if (empty($_POST["DateStart"])) {
    		$startDateErr = "Saisir date de début";
    	}
    	if (empty($_POST["DateEnd"])) {
    		$endDateErr = "Saisir date de fin";
    	}
    	if ($_POST["DateEnd"]<$_POST["DateStart"]) {
        $GlobalDateErr = "Date de fin inférieure à la date de début";
    	}
    	else {
    		// formulaire ICI JE NE SAIS PAS COMMENT EXECUTER LE FORMULAIRE...
    		echo '<script>alert("Champs OK, lancement requête");</script>';
     
    	}
    }
    ?>

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

Discussions similaires

  1. Vérifier entré formulaire et ajouté si non-vide
    Par Xtremmax dans le forum VB.NET
    Réponses: 1
    Dernier message: 18/04/2011, 00h23
  2. Comment indiquer un critère chiane non vide
    Par le lynx dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 18/08/2005, 12h38
  3. Compter champs non vide
    Par szdavid dans le forum Oracle
    Réponses: 4
    Dernier message: 13/07/2005, 14h01
  4. vérifier deux champs vides
    Par mikky dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 02/06/2005, 14h04
  5. Réponses: 16
    Dernier message: 19/05/2005, 16h20

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