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 :

Savoir si c'est la première fois que l'on fait appel à un formulaire


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    593
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 593
    Points : 146
    Points
    146
    Par défaut Savoir si c'est la première fois que l'on fait appel à un formulaire
    Bonjour a tous.

    voila j'ai créer mon formulaire mais je voulais que l'utilisateur quand il clic sur le bouton Add, mon code php fasse une vérification si les champs requis sont bien remplis et ensuite il peut enregistrer dans la BDD.

    Oui cela marche mais lors du premier apel de cette pages.. il me marque que je dois completer les champs requis... je voudrais que mon application détecte si c'est la premiére fois que la page est chargée et donc ne rien faire.. par contre si l'utilisateur a cliquer sur Add alors a ce moment il peut me dire que je dois completer les champ requis.

    voici mon code pour l'instant :

    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
    58
    59
    60
    61
    62
    63
    64
    // si il y a au moins un champ non nul
    if ( $_POST['IFirstname']!="" || $_POST['ILastname']!="" || $_POST['IGender']!="" || $_POST['IPractice']!="" || $_POST['ITitle']!="" || $_POST['IMobile']!="" || $_POST['IMail']!="") 
    { 
    	// Check si tout les Input required sont définit et non nul
    	if ($_POST['IFirstname']!="" && $_POST['ILastname']!="" && $_POST['IGender']!="")
    	{
     
    	 // Récupération des données  	
     	$name=$_POST['ILastname'];
     	$firstname=$_POST['IFirstname'];
     	$gender=$_POST['IGender'];
     	$practice=$_POST['IPractice'];
     	$title=$_POST['ITitle'];
     	$mobile=$_POST['IMobile'];
     	$mail=$_POST['IMail'];
     	$active=1; // Personne active par defaut
     
     
     
     
     
      	// Connecxion au serveur mysql
     
      	// Connexion a la base de donnée : capgemini
     
     
      	// Verification si le Name est deja utilisé
      	$Resultat=mysql_query("SELECT * FROM `sales` WHERE `Name` LIKE '$name'");
      		if (mysql_numrows($Resultat)==0)
      		{	
        	// Le Name n'est pas encore utilisé => on enregistre le Sale	
    		echo "<center><font size=3 color=Red><i>vous avez enristrer un sales</i></font></center><br>";
      		$sql=mysql_query("INSERT INTO `sales`(Name, First_name, Gender, Practice, Title, Mobile, Email, Datecreation, Active) VALUES('$name','$firstname', '$gender', '$practice', '$title', '$mobile', '$mail', '".date("Y-m-d")."', '$active')");
      		}
      		else 
        		{
        		// comme il existe déjà un Sales avec ce Name, on va regarder si le Firstname est pareil... 
        		$Resultat=mysql_query("SELECT * FROM `sales` WHERE `First_name` LIKE '$firstname'");
      				if (mysql_numrows($Resultat)==0)
      				{	
        			// même Name mais pas le même Firstname .. donc on ajoute.. 	
    				echo "<center><font size=3 color=Red><i>vous avez enristrer un sales</i></font></center><br>";
      				$sql=mysql_query("INSERT INTO `sales`(Name, First_name, Gender, Practice, Title, Mobile, Email, Datecreation, Active) VALUES('$name','$firstname', '$gender', '$practice', '$title', '$mobile', '$mail', '".date("Y-m-d")."', '$active')");
      				}
    				else // le Name et le FirstName existe déjà !!! => avertir l'utilisateur
    		  		{
    		  		echo "<center><font size=3 color=Red><i>désolé ce Sales existe déjà</i></font></center><br>";
    		  		}
        		}		
     
      		// Fermeture de la base de donnée
      		mysql_close($connect);
    	}
      	else 
      	{
      	echo "<font size=3 color=Red><i><center>Veuillez compléter tout les champs obligatoires</center></i></font>";
      	}
     
    }
     
    else
    {
    echo "<font size=3 color=Red><i><center>1er fois</center></i></font>"; 
    }
    merci de votre aide

  2. #2
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 375
    Points
    16 375
    Par défaut
    Bonjour

    Tu peux ajouter un champ caché à ton formulaire. Ce champ sera toujours rempli à la soumission quelles que soient les valeurs des autres champs. Donc si ce champ n'est pas rempli, c'est qu'on pas encore soumis le formulaire, donc que c'est la première fois qu'on y accède

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    593
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 593
    Points : 146
    Points
    146
    Par défaut
    Oui c'est une bonne idée mais comment faire pour completer ce champ lors de la soumission ?

    merci

  4. #4
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 375
    Points
    16 375
    Par défaut
    Tout l'interet du champ caché, c'est que tu peut mettre n'importe quoi dedans à l'avance

    Donc tu peux construire ton formulaire comme ça :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <form>
      <input type="text" name="nom">
      <input type="hidden" name="validation" value="ok">
      <input type="submit" name="valider" value="Valider">
    </form>
    et tu testes si $_POST['validation'] existe. Si le formulaire a été soumis, ça vaudra ok (systématiquement) et sinon ce sera vide.

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    593
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 593
    Points : 146
    Points
    146
    Par défaut
    tout bêtement...

    j'étais parti avec des boucles et des boucles imbriquées.... mais je vois que 2 lignes suffisent... lol

    en tous cas merci je vais tester ca pour l'instant ca marche

    merci de ton coup de pouce

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

Discussions similaires

  1. CRUD générique est ce juste ce que j'ai fait?
    Par tifsa dans le forum Spring
    Réponses: 6
    Dernier message: 31/07/2013, 02h40
  2. trier par le nombre de fois que la valeur est présente
    Par Kage57 dans le forum Requêtes
    Réponses: 2
    Dernier message: 28/05/2009, 16h43
  3. Réponses: 6
    Dernier message: 28/02/2009, 16h57
  4. decrementer selection chaque fois que macro est appelée
    Par joeyd dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 28/09/2007, 19h05

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