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 :

Difficultés avec une syntaxe


Sujet :

PHP & Base de données

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 37
    Par défaut Difficultés avec une syntaxe, erreur lors d'une insertion dans une base de données
    Bonjour à tous,

    Je suis actuellement en train de créer le formulaire permettant la création d'un espace perso pour les utilisateurs de mon site web.

    Je rencontre le message d'erreur suivant :

    Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\xampp\htdocs\pages\espace_perso\creation_espace_perso.inc.php on line 220
    Une erreur est apparue !!!

    Merci de bien vouloir contacter notre service technique en cliquant ici.

    Code erreur : 7 - Page : index.php?page=creation_espace_perso

    Voici mon code source :

    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
     
    if (empty($titre_statut))
    {
    echo 'Veuillez nous indiquer votre Titre / statut.';
    }
     
    Etc ...
     
    else      
    {
    $db = mysql_connect('localhost', '...', '...') or die ('Une erreur est apparue !!!<br></br>Merci de bien vouloir contacter notre service technique en <a href="index.php?page=informations_societee" title="Informations sociétée" target="_blank">cliquant ici</a>.<br></br><span class="texte_attention_message_erreur">Code erreur : 1 - Page : index.php?page=creation_espace_perso</span>');
     
    mysql_select_db('base_utilisateurs',$db) or die ('Une erreur est apparue !!!<br></br>Merci de bien vouloir contacter notre service technique en <a href="index.php?page=informations_societee" title="Informations sociétée" target="_blank">cliquant ici</a>.<br></br><span class="texte_attention_message_erreur">Code erreur : 2 - Page : index.php?page=creation_espace_perso</span>');
     
    $identifiant_de_connexion=addslashes(htmlentities($_POST['identifiant_de_connexion']));
    $mot_de_passe_de_connexion=addslashes(htmlentities($_POST['mot_de_passe_de_connexion']));
     
    $verification_existant=mysql_query("SELECT * FROM base_utilisateurs WHERE $identifiant_de_connexion='identifiant_de_connexion' && $mot_de_passe_de_connexion='mot_de_passe_de_connexion'");
     
    if (mysql_num_rows($verification_existant)>=1)    <<<<<<<<<<<<< LIGNE 220 
    {
    echo 'L\'identifiant ou le Mot de passe que vous avez saisi<br>est déjà utilisé par un autre utilisateur.</br>Veuillez saisir un Identifiant et Mot de passe différent.';
    }
    else
    {
    mysql_select_db('newsletters',$db) or die ('Une erreur est apparue !!!<br></br>Merci de bien vouloir contacter notre service technique en <a href="index.php?page=informations_societee" title="Informations sociétée" target="_blank">cliquant ici</a>.<br></br><span class="texte_attention_message_erreur">Code erreur : 3 - Page : index.php?page=creation_espace_perso</span>');
     
    $sql_base_utilisateurs = "INSERT INTO base_utilisateurs (id, titre_statut, nom, prenom, jour_de_naissance, mois_de_naissance, annee_de_naissance, adresse, code_postal, ville, commune, pays, autre_pays, telephone_residentiel, telephone_mobile, identifiant_de_connexion, mot_de_passe_de_connexion, confirmer_mot_de_passe_de_connexion, adresse_email, confirmer_adresse_email, accord_ou_desaccord_pour_transmition, avertissements_legaux_et_c_g_u, different_entreprise_immobilier, antirobots)
     
    VALUES('', '$titre_statut', '$nom', '$prenom', '$jour_de_naissance', '$mois_de_naissance', '$annee_de_naissance', '$adresse', '$code_postal', '$ville', '$commune', '$pays', '$autre_pays', '$telephone_residentiel', '$telephone_mobile', '$identifiant_de_connexion', '$mot_de_passe_de_connexion', '$confirmer_mot_de_passe_de_connexion', '$adresse_email', '$confirmer_adresse_email', '$accord_ou_desaccord_pour_transmition', '$avertissements_legaux_et_c_g_u', '$different_entreprise_immobilier', '$antirobots')" or die ('Une erreur est apparue !!!<br></br>Merci de bien vouloir contacter notre service technique en <a href="index.php?page=informations_societee" title="Informations sociétée" target="_blank">cliquant ici</a>.<br></br><span class="texte_attention_message_erreur">Code erreur : 4 - Page : index.php?page=creation_espace_perso</span>');
     
    mysql_select_db('newsletters',$db) or die ('Une erreur est apparue !!!<br></br>Merci de bien vouloir contacter notre service technique en <a href="index.php?page=informations_societee" title="Informations sociétée" target="_blank">cliquant ici</a>.<br></br><span class="texte_attention_message_erreur">Code erreur : 5 - Page : index.php?page=creation_espace_perso</span>');
     
    $sql_newsletters = "INSERT INTO base_utilisateurs (id, choix_newsletters)
     
    VALUES('', '$choix_newsletters')" or die ('Une erreur est apparue !!!<br></br>Merci de bien vouloir contacter notre service technique en <a href="index.php?page=informations_societee" title="Informations sociétée" target="_blank">cliquant ici</a>.<br></br><span class="texte_attention_message_erreur">Code erreur : 6 - Page : index.php?page=creation_espace_perso</span>');
     
    mysql_query($sql_base_utilisateurs) or die ('Une erreur est apparue !!!<br></br>Merci de bien vouloir contacter notre service technique en <a href="index.php?page=informations_societee" title="Informations sociétée" target="_blank">cliquant ici</a>.<br></br><span class="texte_attention_message_erreur">Code erreur : 7 - Page : index.php?page=creation_espace_perso</span>');
     
    mysql_query($sql_newsletters) or die ('Une erreur est apparue !!!<br></br>Merci de bien vouloir contacter notre service technique en <a href="index.php?page=informations_societee" title="Informations sociétée" target="_blank">cliquant ici</a>.<br></br><span class="texte_attention_message_erreur">Code erreur : 8 - Page : index.php?page=creation_espace_perso</span>');
    {
    echo "<script language='javascript'>"; 
    echo 'document.location.href= "index.php?page=premiere_connexion_espace_perso"';
    echo "</script>";
    } 
    mysql_close();
    }
    }
    ?>
    J'ai essayer plusieurs expressions différentes mais j'obtient toujours le même message.

    Auriez vous une petite idée ?

    Merci par avance.

    Velkan.

  2. #2
    Membre expérimenté
    Homme Profil pro
    Programmeur Delphi
    Inscrit en
    Octobre 2006
    Messages
    183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Programmeur Delphi
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2006
    Messages : 183
    Par défaut
    Slt

    en ayant survoler ton code
    je pense que l'erreur provient de ta requête

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ("SELECT * FROM base_utilisateurs WHERE $identifiant_de_connexion='identifiant_de_connexion' && $mot_de_passe_de_connexion='mot_de_passe_de_connexion'");
    essaye plutôt ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ("SELECT * FROM base_utilisateurs WHERE idconnexion = $identifiant_de_connexion and password = '$mot_de_passe_de_connexion'");

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 37
    Par défaut Reponse ...
    Re bonjour,

    Tout d'abort merci pour cette réponse aussi rapide, moi qui ai chercher si longtemps !!!

    A présent la première partie du message d'erreur a disparue, en revanche j'obtient toujours mon message code erreur 7.

    Pourquoi ce dernier n'as t'il pas disparu avec le premier ?

    Puis-je apeller ma requette sql $sql_base_utilisateurs au lieu de $sql ?

    Cette dernière syntaxe est elle correcte ?

    Merci pour vos reponses.

    Velkan.

  4. #4
    Membre expérimenté
    Homme Profil pro
    Programmeur Delphi
    Inscrit en
    Octobre 2006
    Messages
    183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Programmeur Delphi
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2006
    Messages : 183
    Par défaut
    pour le moment, je ne comprends pas

    mais es-tu sûr de ton code suivant ???
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo 'document.location.href= "index.php?page=premiere_connexion_espace_perso"';
    essaye un peu ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo 'document.location.href= "index.php?page=&premiere_connexion_espace_perso"';

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 37
    Par défaut Reponse
    Bonjour à tous,

    Pour répondre à la question de Jaduta, le code source concernant le code dans le dernier post que tu a déposé, est correct et fonctionnel.

    J'ai continué à analiser mon code source, et je me demande si je n'ai pas fait une erreur syntaxique dans mes requettes d'insertion des informations dans les bases de données.

    En effet , le code erreur 7 que j'ai programmé, indique que l'enregistrement ne peut pas être trouvé dans la base de donnée suite à la validation du formulaire par l'utilisateur.

    Pouriez vous me dire si j'ai éfféctivement fait une erreur dans la saisie de mon code source au niveau de l'insertion des informations du formulaire dans la table de ma base de données.

    Je vous remercie par avance pour vos multiples réponses et sugestions.

    Cordialement.

    Velkan.

    PS : N'hesiter pas à me contacter pour tous besoins d'informations complémentaires.

  6. #6
    Membre chevronné
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 424
    Par défaut
    Dans la requête de jaduta il manque des quotes pour la première variable ($identifiant_de_connexion) : Remplace
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ("SELECT * FROM base_utilisateurs WHERE idconnexion = $identifiant_de_connexion and password = '$mot_de_passe_de_connexion'");
    Par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ("SELECT * FROM base_utilisateurs WHERE idconnexion = '$identifiant_de_connexion' and password = '$mot_de_passe_de_connexion'");

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 37
    Par défaut Reponse
    Bonsoir Eric93,

    Voici ci-dessous la manière dont j'ai agrémenté et disposé mon code source :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $verification_existant=mysql_query("SELECT * FROM base_utilisateurs WHERE identifiant_de_connexion='$identifiant_de_connexion' && mot_de_passe_de_connexion='$mot_de_passe_de_connexion'");
    Cette synthaxe est elle correcte ?

    Si cette dernière est correcte, cela signifie que le problème vient d'autre part, le souci étant que je n'arrive pas à trouver d'où.

    Merci de ton aide et bonne soirée.

    Cordialement.

    Velkan.

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 37
    Par défaut Plus d'infos
    Bonjour à tous,
    Afin de nous faciliter la compréhension de mon code source, je l'ai simplifié à l'essentiel et mis à jour par rapport
    au sources communiquées dans les tout premiers post.
    Je vous le dépose ci-dessous, avec quelques commentaires, qui j'espère vous aiderons.

    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
     
    <!-- Connexion au serveur -->
    $db = mysql_connect('localhost', '...', '...') or die ('Message erreur n°1');
    <!-- Connexion à la base de données -->
    mysql_select_db('base_utilisateurs',$db) or die ('Message erreur n°2');
    <!-- Récupération de l'identifiant et du mot de passe saisis -->
    $identifiant_de_connexion=addslashes(htmlentities($_POST['identifiant_de_connexion']));
    $mot_de_passe_de_connexion=addslashes(htmlentities($_POST['mot_de_passe_de_connexion']));
    <!-- Selection de l'identifiant et du mot de passe dans la base de données utilisateur dans le but de verifier l'existance d'un compte -->
    $verification_existant=mysql_query("SELECT * FROM base_utilisateurs WHERE identifiant_de_connexion='$identifiant_de_connexion' && mot_de_passe_de_connexion='$mot_de_passe_de_connexion'");
    <!-- Ici on indique à l'utilisateur qu'un compte existe déjà avec l'identifiant et le mot de passe saisis (si cela est nécéssaire) -->
    if (mysql_num_rows($verification_existant)>=1)
    {
    echo 'L\'identifiant ou le Mot de passe que vous avez saisi<br>est déjà utilisé par un autre utilisateur.</br>Veuillez saisir un Identifiant et Mot de passe différent,<br>puis compléter les champs manquants.';
    }
    else
    {
    <!-- On séléctionne la base utilisateur dans le but d'inserer les informations -->
    mysql_select_db('base_utilisateurs',$db) or die ('Message erreur n°3');
    <!-- On récupère puis insert les informations saisis dans le formulaire par l'utilisateur -->
    $sql_base_utilisateurs = "INSERT INTO base_utilisateurs (id, titre_statut, nom, prenom, jour_de_naissance, mois_de_naissance, annee_de_naissance, adresse, code_postal, ville, commune, pays, autre_pays, telephone_residentiel, telephone_mobile, identifiant_de_connexion, mot_de_passe_de_connexion, confirmer_mot_de_passe_de_connexion, adresse_email, confirmer_adresse_email, accord_ou_desaccord_pour_transmition, avertissements_legaux_et_c_g_u, different_entreprise_immobilier, antirobots)
    VALUES('', '$titre_statut', '$nom', '$prenom', '$jour_de_naissance', '$mois_de_naissance', '$annee_de_naissance', '$adresse', '$code_postal', '$ville', '$commune', '$pays', '$autre_pays', '$telephone_residentiel', '$telephone_mobile', '$identifiant_de_connexion', '$mot_de_passe_de_connexion', '$confirmer_mot_de_passe_de_connexion', '$adresse_email', '$confirmer_adresse_email', '$accord_ou_desaccord_pour_transmition', '$avertissements_legaux_et_c_g_u', '$different_entreprise_immobilier', '$antirobots')" or die ('Message erreur n°4');
    <!-- On vérifie que l'insertion des données est éfféctuée (Le problème rencontré est ici) -->
    mysql_query($sql_base_utilisateurs) or die ('Message erreur n°5');
    <!-- On séléctionne la base neswletters dans le but d'inserer les informations -->
    mysql_select_db('newsletters',$db) or die ('Message erreur n°6');
    <!-- On récupère puis insert les informations saisis dans le formulaire par l'utilisateur -->
    $sql_newsletters = "INSERT INTO newsletters (id, choix_newsletters)
    VALUES('', '$choix_newsletters')" or die ('Message erreur n°7');
    <!-- On vérifie que l'insertion des données est éfféctuée -->
    mysql_query($sql_newsletters) or die ('Message erreur n°8');
    <!-- Pour terminer on redirige l'utilisateur vers une autre page ... -->
    {
    echo "<script language='javascript'>"; 
    echo 'document.location.href= "index.php?page=premiere_connexion_espace_perso"';
    echo "</script>";
    } 
    mysql_close();
    }
    }
    Le code erreur est toujours le 5 (lors de la vérification de l'inclusion des informations dans ma base de donnée.)
    Je vous remercie pour votre aide, je ne comprend vraiment pas pourquoi mes informations ne sont pas enregistrées dans ma base.
    Cordialement.
    Velkan.

  9. #9
    Membre confirmé Avatar de greg13
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 144
    Par défaut
    Je comprends pas le sens de la ligne de code avec le die à la fin :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $sql_base_utilisateurs = "INSERT INTO base_utilisateurs (id, titre_statut, nom, prenom, jour_de_naissance, mois_de_naissance, annee_de_naissance, adresse, code_postal, ville, commune, pays, autre_pays, telephone_residentiel, telephone_mobile, identifiant_de_connexion, mot_de_passe_de_connexion, confirmer_mot_de_passe_de_connexion, adresse_email, confirmer_adresse_email, accord_ou_desaccord_pour_transmition, avertissements_legaux_et_c_g_u, different_entreprise_immobilier, antirobots)
    VALUES('', '$titre_statut', '$nom', '$prenom', '$jour_de_naissance', '$mois_de_naissance', '$annee_de_naissance', '$adresse', '$code_postal', '$ville', '$commune', '$pays', '$autre_pays', '$telephone_residentiel', '$telephone_mobile', '$identifiant_de_connexion', '$mot_de_passe_de_connexion', '$confirmer_mot_de_passe_de_connexion', '$adresse_email', '$confirmer_adresse_email', '$accord_ou_desaccord_pour_transmition', '$avertissements_legaux_et_c_g_u', '$different_entreprise_immobilier', '$antirobots')" or die ('Message erreur n°4');
    Le but est simplement de mettre la requete sous forme de chaine de caractères.

    De plus, si id est un champs à incrémentation automatique, pas besoin de le préciser dans la requête.

    Et pourrais tu faire un echo la variable $sql_base_utilisateurs pour voir ce qu'elle contient?
    Greg

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 37
    Par défaut Bonsoir à tous !!!
    Bonsoir à tous,

    J'ai modifier une grande partie de mon code et reussi à obtenir un echo de mon $sql.

    Voici mon nouveau code source complet.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $sql = "INSERT INTO base_utilisateurs (id, titre_statut, nom, prenom, jour_de_naissance, mois_de_naissance, annee_de_naissance, adresse, code_postal, ville, commune, pays, autre_pays, telephone_residentiel, telephone_mobile, identifiant_de_connexion, mot_de_passe_de_connexion, confirmer_mot_de_passe_de_connexion, adresse_email, confirmer_adresse_email, accord_ou_desaccord_pour_transmition, avertissements_legaux_et_c_g_u, different_entreprise_immobilier)
    VALUES('', '$titre_statut', '$nom', '$prenom', '$jour_de_naissance', '$mois_de_naissance', '$annee_de_naissance', '$adresse', '$code_postal', '$ville', '$commune', '$pays', '$autre_pays', '$telephone_residentiel', '$telephone_mobile', '$identifiant_de_connexion', '$mot_de_passe_de_connexion', '$confirmer_mot_de_passe_de_connexion', '$adresse_email', '$confirmer_adresse_email', '$accord_ou_desaccord_pour_transmition', '$avertissements_legaux_et_c_g_u', '$different_entreprise_immobilier')" or die ('<br>Une erreur est apparue !!!</br><br>Merci de bien vouloir contacter notre service technique</br><a href="index.php?page=informations_societee" title="Informations sociétée" target="_blank">cliquez ici pour obtenir nos coordonées</a>.<br></br><span class="texte_attention_message_erreur">Code erreur : 4 - Page : index.php?page=creation_espace_perso</span><br></br><a href="index.php?page=creation_espace_perso" title="Ressaisir les champs du formulaire.">Ressaisir les champs du formulaire.</a>');
    echo $sql;
    mysql_query($sql) or die ('<br>Une erreur est apparue !!!</br><br>Merci de bien vouloir contacter notre service technique</br><a href="index.php?page=informations_societee" title="Informations sociétée" target="_blank">cliquez ici pour obtenir nos coordonées</a>.<br></br><span class="texte_attention_message_erreur">Code erreur : 5 - Page : index.php?page=creation_espace_perso</span><br></br><a href="index.php?page=creation_espace_perso" title="Ressaisir les champs du formulaire.">Ressaisir les champs du formulaire.</a>');
    Voici le resultat du echo $sql :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    INSERT INTO base_utilisateurs (id, titre_statut, nom, prenom, jour_de_naissance, mois_de_naissance, annee_de_naissance, adresse, code_postal, ville, commune, pays, autre_pays, telephone_residentiel, telephone_mobile, identifiant_de_connexion, mot_de_passe_de_connexion, confirmer_mot_de_passe_de_connexion, adresse_email, confirmer_adresse_email, accord_ou_desaccord_pour_transmition, avertissements_legaux_et_c_g_u, different_entreprise_immobilier) VALUES('', 'Monsieur', 'x', 'x', '00', '00', '0000', 'x', '00000', 'x', 'x', 'France', 'x', '0000000000', '0000000000', 'x', 'x', 'x', 'xx@xx.xx', 'xx@xx.xx', 'accord_pour_transmition', 'acceptes', 'certification_ok')
    Le message d'erreur est toujours le code erreur 5.

    Quen penssez vous, je suis bloquer et ne trouve toujours pas la solution.

    Je vous remercie par avance.

    Cordialement.

    Velkan.

  11. #11
    Membre confirmé Avatar de greg13
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 144
    Par défaut
    Peux-tu nous montrer la description de la table base_utilisateur?

    Pourrais-tu utiliser la fonction mysql_error afin d'en savoir plus sur l'erreur qui se produit?

    Greg

  12. #12
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 37
    Par défaut Complément d'informations
    Bonjour à tous,

    Comme me l'a demandé Greg13, j'ai éfféctué un mysql_error que j'ai placé comme ci-dessous :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $sql_base_utilisateurs = "INSERT INTO base_utilisateurs(id, titre_statut, nom, prenom, jour_de_naissance, mois_de_naissance, annee_de_naissance, adresse, code_postal, ville, commune, pays, autre_pays, telephone_residentiel, telephone_mobile, identifiant_de_connexion, mot_de_passe_de_connexion, confirmer_mot_de_passe_de_connexion, adresse_email, confirmer_adresse_email, accord_ou_desaccord_pour_transmition, avertissements_legaux_et_c_g_u, different_entreprise_immobilier)
    VALUES('', '$titre_statut', '$nom', '$prenom', '$jour_de_naissance', '$mois_de_naissance', '$annee_de_naissance', '$adresse', '$code_postal', '$ville', '$commune', '$pays', '$autre_pays', '$telephone_residentiel', '$telephone_mobile', '$identifiant_de_connexion', '$mot_de_passe_de_connexion', '$confirmer_mot_de_passe_de_connexion', '$adresse_email', '$confirmer_adresse_email', '$accord_ou_desaccord_pour_transmition', '$avertissements_legaux_et_c_g_u', '$different_entreprise_immobilier')" or die ('<br>Une erreur est apparue !!!</br><br>Merci de bien vouloir contacter notre service technique</br><a href="index.php?page=informations_societee" title="Informations sociétée" target="_blank">cliquez ici pour obtenir nos coordonées</a>.<br></br><span class="texte_attention_message_erreur">Code erreur : 4 - Page : index.php?page=creation_espace_perso</span><br></br><a href="index.php?page=creation_espace_perso" title="Ressaisir les champs du formulaire.">Ressaisir les champs du formulaire.</a>');
    mysql_error();
    mysql_query($sql_base_utilisateurs) or die ('<br>Une erreur est apparue !!!</br><br>Merci de bien vouloir contacter notre service technique</br><a href="index.php?page=informations_societee" title="Informations sociétée" target="_blank">cliquez ici pour obtenir nos coordonées</a>.<br></br><span class="texte_attention_message_erreur">Code erreur : 5 - Page : index.php?page=creation_espace_perso</span><br></br><a href="index.php?page=creation_espace_perso" title="Ressaisir les champs du formulaire.">Ressaisir les champs du formulaire.</a>');
    Je n'obtiens aucun message d'erreur après le post du formulaire mis à part l'erreur 5.

    Je place en pièce jointe un imprimécran de ma base dans phpmyadmin.

    Je suis étonné, et ne comprend pas pourquoi cela ne fonctionne pas, car habituellement, j'arrive à faire une insertion dans une bdd.

    Je me tiens à votre disposition pour toutes infomations.

    Cordialement.

    Velkan.

  13. #13
    Membre confirmé Avatar de greg13
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 144
    Par défaut
    faudrait plutot mettre quelque chose comme ca, apres le mysql_query, et enleve temporairement le die du mysql query :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    mysql_query($sql_base_utilisateurs);
    echo 'Erreur mysql!!! : '. mysql_errno() . ": " . mysql_error() . "\n";
    Greg

  14. #14
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 37
    Par défaut Reponses ...
    Bonsoir à tous,

    Je viens de modifier le code afin d'obtenir un nouveau resultat.

    Comme Greg13 me l'as conseillé, j'ai placer le fragment de code et retiré le die.

    A présent j'obtient un resultat totalement différent, mais qui confirme une partie du problème.

    Suite aux modifications et à la validation du formulaire, j'arrive à aller au delà de l'inscription.

    En revanche, lorsque je controle les informations dans ma base de données, je constate que la table base_utilisateurs ne contient aucun enregistrement (l'insertion ne se fait toujours pas), alors que la base newsletters contient un enregistrement (ici l'insertion s'effectue).

    Je replace ci dessous une grande partir de mon code source afin que vous puissiez me donner votre avis sur cette insertion incorrecte.

    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
     
    mysql_select_db('base_utilisateurs',$db) or die ('Code erreur');
    $identifiant_de_connexion=addslashes(htmlentities($_POST['identifiant_de_connexion']));
    $mot_de_passe_de_connexion=addslashes(htmlentities($_POST['mot_de_passe_de_connexion']));
    $verification_existant_base_utilisateurs=mysql_query("SELECT * FROM base_utilisateurs WHERE identifiant_de_connexion='$identifiant_de_connexion' && mot_de_passe_de_connexion='$mot_de_passe_de_connexion'");
    if (mysql_num_rows($verification_existant_base_utilisateurs)>=1)
    {
    echo 'L\'identifiant ou le Mot de passe que vous avez saisi<br>est déjà utilisé par un autre utilisateur.</br>Veuillez saisir un Identifiant et Mot de passe différent,<br>puis compléter les champs manquants.';
    }
    else
    {
    mysql_select_db('base_utilisateurs',$db) or die ('Code erreur');
    $sql_base_utilisateurs = "INSERT INTO base_utilisateurs(id, titre_statut, nom, prenom, jour_de_naissance, mois_de_naissance, annee_de_naissance, adresse, code_postal, ville, commune, pays, autre_pays, telephone_residentiel, telephone_mobile, identifiant_de_connexion, mot_de_passe_de_connexion, confirmer_mot_de_passe_de_connexion, adresse_email, confirmer_adresse_email, accord_ou_desaccord_pour_transmition, avertissements_legaux_et_c_g_u, different_entreprise_immobilier)
    VALUES('', '$titre_statut', '$nom', '$prenom', '$jour_de_naissance', '$mois_de_naissance', '$annee_de_naissance', '$adresse', '$code_postal', '$ville', '$commune', '$pays', '$autre_pays', '$telephone_residentiel', '$telephone_mobile', '$identifiant_de_connexion', '$mot_de_passe_de_connexion', '$confirmer_mot_de_passe_de_connexion', '$adresse_email', '$confirmer_adresse_email', '$accord_ou_desaccord_pour_transmition', '$avertissements_legaux_et_c_g_u', '$different_entreprise_immobilier')" or die ('Code erreur');
    mysql_query($sql_base_utilisateurs);
    echo 'Erreur mysql!!! : '. mysql_errno() . ": " . mysql_error() . "\n";
    $adresse_email=addslashes(htmlentities($_POST['adresse_email']));
    $verification_existant_newsletters=mysql_query("SELECT * FROM newsletters WHERE adresse_email='$adresse_email'");
    if (mysql_num_rows($verification_existant_newsletters)>=1)
    {
    mysql_select_db('newsletters',$db) or die ('Code erreur');
    $sql_newsletters_update = 'UPDATE newsletters SET choix_newsletters="'.$choix_newsletters.'" WHERE adresse_email="'.$adresse_email.'"';
    mysql_query($sql_newsletters_update) or die ('Code erreur');
    }
    else
    {
    mysql_select_db('newsletters',$db) or die ('Code erreur');
    $sql_newsletters_insert = "INSERT INTO newsletters (id, adresse_email, choix_newsletters)
    VALUES('', '$adresse_email', '$choix_newsletters')" or die ('Code erreur');
    mysql_query($sql_newsletters_insert) or die ('Code erreur');
    {
    echo "<script language='javascript'>"; 
    echo 'document.location.href= "index.php?page=premiere_connexion_espace_perso"';
    echo "</script>";
    }
    Je vous remercie par avance.

    Velkan.
    Images attachées Images attachées  

Discussions similaires

  1. difficultés avec une fonction variadique
    Par minibus dans le forum Débuter
    Réponses: 1
    Dernier message: 24/07/2009, 14h02
  2. Difficultés avec une Gestion des Stocks
    Par lerorodu51 dans le forum Access
    Réponses: 15
    Dernier message: 24/06/2008, 08h02
  3. Besoin d'aide avec une syntaxe
    Par jvv 64 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 27/03/2007, 11h33
  4. [RegEx] Difficultés avec une expression réguliere
    Par saint-pere dans le forum Langage
    Réponses: 10
    Dernier message: 24/06/2006, 13h47
  5. [VBA] difficultés avec une requête INSERT
    Par elias dans le forum Access
    Réponses: 7
    Dernier message: 06/09/2005, 14h53

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