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

PHP & Base de données Discussion :

insérer des données avec mysql_query [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2013
    Messages : 39
    Par défaut insérer des données avec mysql_query
    salut les amis, j'ai un souci avec le code php que j'ai réalisé pour l'insertion de données dans ma Base de Données. Je ne reçois aucun message d'erreurs quand j'exécute mon code mais ma BD ne se remplit pas des données saisies.
    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
    <?php
    if(isset($_POST['submit']))
    {
    	$id = htmlentities(trim($_POST['id']));
    	$nom = htmlentities(trim($_POST['nom']));
    	$prenom = htmlentities(trim($_POST['prenom']));
    	$fonction = htmlentities(trim($_POST['fonction']));
    	$service = htmlentities(trim($_POST['service']));
    	$pseudo = htmlentities(trim($_POST['pseudo']));
    	$password = htmlentities(trim($_POST['password']));
    	$repassword = htmlentities(trim($_POST['repassword']));
     
    	if ($id AND $nom AND $prenom AND $fonction AND $service AND $pseudo AND $password AND $repassword)
    	{
    		if($password==$repassword)
    		{
    			if (strlen($password)>4)
    			{
    				$pass_hache = sha1('gz'.$_POST['password']);
    				$connect = mysql_connect('localhost', 'root', 'bnetd') or die ('Impossible de se connnecter à la Base de Données');
    				$mabd = mysql_select_db('biblio');
    				$reg = mysql_query ("SELECT * FROM agent WHERE pseudo='$pseudo' AND password='$password'"); 
    				$psan = mysql_num_rows($reg);
     
    				if($psan==0)
    				{
    					mysql_query ("INSERT INTO  VALUES ('$id', '$nom', '$prenom', '$fonction', '$service', '$pseudo', '$password')");
    					die ("Les données saisies ont été bien enregistrées. <a href='enregistrement_.php'> <strong> Nouvel Enregistrement </strong> </a>");
    				} else echo "Ce pseudo est déjà utilisé.";
    			}else echo "Le mot de passe est trop court. Veuillez saisir un mot de passe de plus de quatre (04) carartères. ";
    		}else echo "Les deux mots de passe doivent être identiques.";
    	}else echo "Veuillez renseigner tous les champs";
    }
    ?>

  2. #2
    Membre éprouvé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2012
    Messages
    111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2012
    Messages : 111
    Par défaut
    Bonjour,
    Et ce code te renvoie pas d’erreurs non plus?
    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
    <?php
    if(isset($_POST['submit']))
    {
    	$id = htmlentities(trim($_POST['id']));
    	$nom = htmlentities(trim($_POST['nom']));
    	$prenom = htmlentities(trim($_POST['prenom']));
    	$fonction = htmlentities(trim($_POST['fonction']));
    	$service = htmlentities(trim($_POST['service']));
    	$pseudo = htmlentities(trim($_POST['pseudo']));
    	$password = htmlentities(trim($_POST['password']));
    	$repassword = htmlentities(trim($_POST['repassword']));
     
    	if ($id AND $nom AND $prenom AND $fonction AND $service AND $pseudo AND $password AND $repassword)
    	{
    		if($password==$repassword)
    		{
    			if (strlen($password)>4)
    			{
    				$pass_hache = sha1('gz'.$_POST['password']);
    				$connect = mysql_connect('localhost', 'root', 'bnetd') or die ('Impossible de se connnecter à la Base de Données');
    				$mabd = mysql_select_db('biblio');
    				$reg = mysql_query ("SELECT * FROM agent WHERE pseudo='$pseudo' AND password='$password'"); 
    				$psan = mysql_num_rows($reg);
    				if($psan==0)
    				{
    					mysql_query ("INSERT INTO  VALUES ('$id', '$nom', '$prenom', '$fonction', '$service', '$pseudo', '$password')");
    					die ("Les données saisies ont été bien enregistrées. <a href='enregistrement_.php'> <strong> Nouvel Enregistrement </strong> </a>");
    				} else echo "Ce pseudo est déjà utilisé.";
    			}else echo "Le mot de passe est trop court. Veuillez saisir un mot de passe de plus de quatre (04) carartères. ";
    		}else echo "Les deux mots de passe doivent être identiques.";
    	}else echo "Veuillez renseigner tous les champs";
    }else echo "C'est ici le problème";
    ?>
    Pourrais tu envoyer ta ligne?
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <INPUT type=submit name="xxx">

  3. #3
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2013
    Messages : 39
    Par défaut
    Salut quand tu me demandes d'ajouter ma ligne je ne comprends pas. fais tu allusion au code qui m'a permis de réaliser le formulaire? si oui le voici :
    Code html : 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
    <form method="post" action="enregistrement.php">
    	<fieldset class="projet">
    		<legend ><strong>NOUVEAU <strong></legend> </br><!-- Titre du fieldset -->
    		<table border="1" align="center">
    			<tr>
    				<th>MATRICULE  </th> 
    				<td><input type="text" name="id" id="id" size="15" maxlength="5" /> </td> <br/>
    			</tr>
    			<tr>
    				<th>NOM   </th> 
    				<td><input type="text" name="nom" id="nom" size="70" maxlength="30" /> </td>
    			</tr>
    			<tr>
    				<th>PRENOMS  </th> 
    				<td><input type="text" name="prenom" id="prenom" size="70" maxlength="50" /> </td>
    			</tr>
    			<tr>
    				<th>FONCTION   </th> 
    				<td><input type="text" name="fonction" id="fonction" size="70" maxlength="30" /> </td> 
    			</tr>
    			<tr>
    				<th>SERVICE  </th> 
    				<td><input type="text" name="service" id="service" size="30" maxlength="15" /> </td>
    			</tr>
    			<tr>
    				<th>PSEUDO OU LOGIN </th> 
    				<td><input type="text" name="pseudo" id="pseudo" size="30" maxlength="15" /> </td>
    			</tr>
    			<tr>
    				<th>MOT DE PASSE </th> 
    				<td><input type="password" name="password" id="password" size="30" maxlength="20" />  </td>
    			</tr>
    			<tr>
    				<th>CONFIRMATION  MOT DE PASSE </th> 
    				<td><input type="password" name="repassword" id="repassword" size="30" maxlength="20" />  </td>
    			</tr>
    			<tr>
    				<td colspan="2"><input type="submit" value="VALIDER" name="submit" id="boutonvalider" />  </td>
    			</tr>
    		</table>
    	</fieldset>
    </form>

  4. #4
    Membre éprouvé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2012
    Messages
    111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2012
    Messages : 111
    Par défaut
    Si je t'ai demandé la ligne du input submit c’était pour vérifier le nom que tu lui avais donné, ce qui est bon donc le problème n'est pas là.
    As tu testé mon premier code? avec le teste de ta variable. Te retourne t'il le message "C'est ici le problème"?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if(isset($_POST['submit']))
    		{
    ..}else echo "C'est ici le problème";
    Je pars manger je te répond après.

  5. #5
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2013
    Messages : 39
    Par défaut
    Aucun message d'erreurs ne s'affiche. La requête d'insertion de données s'exécute normalement mais aucune donnée n'est enregistrée ou présente dans la BD.

  6. #6
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2013
    Messages : 39
    Par défaut
    Ok. Bon appetit à toi.
    Oui le message "C'est ici le problème" s'affiche mais ça n'a pas d'incidence sur le code vue que mon souci demeure toujours. Je n'arrive toujours pas à insérer des infos dans ma BD.

  7. #7
    Membre éprouvé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2012
    Messages
    111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2012
    Messages : 111
    Par défaut
    sauf que si le message s'affiche c'est qu'il n’exécute rien et passe directement ta condition!
    donc ton problème est que la variable post est mal reçu.
    Pourrais tu écrire juste
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if(isset($_POST['submit']))
    		{
    ..}else print_r($_POST) ;
    Soit :
    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
    <?php
    if(isset($_POST['submit']))
    {
    	$id = htmlentities(trim($_POST['id']));
    	$nom = htmlentities(trim($_POST['nom']));
    	$prenom = htmlentities(trim($_POST['prenom']));
    	$fonction = htmlentities(trim($_POST['fonction']));
    	$service = htmlentities(trim($_POST['service']));
    	$pseudo = htmlentities(trim($_POST['pseudo']));
    	$password = htmlentities(trim($_POST['password']));
    	$repassword = htmlentities(trim($_POST['repassword']));
    	if ($id AND $nom AND $prenom AND $fonction AND $service AND $pseudo AND $password AND $repassword)
    	{
    		if($password==$repassword)
    		{
    			if (strlen($password)>4)
    			{
    				$pass_hache = sha1('gz'.$_POST['password']);
    				$connect = mysql_connect('localhost', 'root', 'bnetd') or die ('Impossible de se connnecter à la Base de Données');
    				$mabd = mysql_select_db('biblio');
    				$reg = mysql_query ("SELECT * FROM agent WHERE pseudo='$pseudo' AND password='$password'"); 
    				$psan = mysql_num_rows($reg);
    				if($psan==0)
    				{
    					mysql_query ("INSERT INTO  VALUES ('$id', '$nom', '$prenom', '$fonction', '$service', '$pseudo', '$password')");
    					die ("Les données saisies ont été bien enregistrées. <a href='enregistrement_.php'> <strong> Nouvel Enregistrement </strong> </a>");
    				} else echo "Ce pseudo est déjà utilisé.";							
    			}else echo "Le mot de passe est trop court. Veuillez saisir un mot de passe de plus de quatre (04) carartères. ";
    		}else echo "Les deux mots de passe doivent être identiques.";
    	}else echo "Veuillez renseigner tous les champs";
    }else print_r($_POST) ;
    ?>
    et m'écrire ce qui est renvoyé?
    cela te permettra de voir le nom des variables bien renseignées et ainsi d'agir en conséquence.

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

Discussions similaires

  1. Insérer des données avec une boucle while
    Par adnanedelphi dans le forum PHP & Base de données
    Réponses: 19
    Dernier message: 20/11/2011, 13h24
  2. Réponses: 3
    Dernier message: 08/06/2011, 10h36
  3. [MySQL] Insérer des données dans une table avec Foreach
    Par Gogad dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 07/04/2010, 08h53
  4. Réponses: 3
    Dernier message: 14/07/2009, 13h45
  5. [MySQL] Insérer des données avec identifiant autoincrémenté
    Par jrosenzw dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 03/04/2009, 15h36

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