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 :

[Conception] problème d'enregistrement de données avec apostrophes ds ma BD


Sujet :

PHP & Base de données

  1. #1
    Membre régulier Avatar de moonia
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    283
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 283
    Points : 82
    Points
    82
    Par défaut [Conception] problème d'enregistrement de données avec apostrophes ds ma BD
    Bonjour a tous,
    J’ai un grand problème,
    j'ai un formulaire a remplir(champ text) , le problème se pose quand je fais renter dans mon champ texte une phrase qui contient une apostrophe et la j'ai une erreur de syntaxe qui s’affiche

    Qlq pourra m’aider SVP

  2. #2
    Membre confirmé Avatar de stunti
    Inscrit en
    Mai 2006
    Messages
    520
    Détails du profil
    Informations personnelles :
    Âge : 46

    Informations forums :
    Inscription : Mai 2006
    Messages : 520
    Points : 594
    Points
    594
    Par défaut
    utilise htmlentities avant de mettre le texte dans ton champs.

  3. #3
    Membre régulier Avatar de moonia
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    283
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 283
    Points : 82
    Points
    82
    Par défaut
    c a d je ne saisi pas
    si j'ai cette ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input value="" name="radio3" type="radio">&nbsp;autre(s), à préciser :&nbsp;<input name="autres_a1" size="50" value="" type="text">
    ou je pourrai mettre se que tu m'as dit ??

  4. #4
    Membre confirmé Avatar de stunti
    Inscrit en
    Mai 2006
    Messages
    520
    Détails du profil
    Informations personnelles :
    Âge : 46

    Informations forums :
    Inscription : Mai 2006
    Messages : 520
    Points : 594
    Points
    594
    Par défaut
    ce n'est pas du PHP alors.
    Je n'ai pas du comprendre ton probleme.

    Quand est ce qu'il te dit que tu as une erreur ?

  5. #5
    Membre régulier Avatar de moonia
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    283
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 283
    Points : 82
    Points
    82
    Par défaut
    Citation Envoyé par moonia
    c a d je ne saisi pas
    si j'ai cette ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input value="" name="radio3" type="radio">&nbsp;autre(s), à préciser :&nbsp;<input name="autres_a1" size="50" value="" type="text">
    ou je pourrai mettre se que tu m'as dit ??

    la ligne en haut fais partie de mon formulaire ,je doit faire entrer des données et les enregistrer ds ma BD , le pb est le suivant si je fais rentrer comme données dans ce champ text ( test ) y pas d'erreur mais si a la place je met ( c'est içi ) par exemple , y a une erreur qui surgit de type
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Erreur de syntaxe près de 'est '
    c l'apostrophe qui me pose un pb

  6. #6
    Membre émérite

    Homme Profil pro
    Expert PHP
    Inscrit en
    Novembre 2004
    Messages
    2 127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Expert PHP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 127
    Points : 2 557
    Points
    2 557
    Par défaut
    bah j'ai pas bien compris non plus, tu mets ta valeur dans le input à la création de la page en PHP ?
    ou tu la récuperes et ca cause un probleme sur le traitement de cette valeur ?

  7. #7
    Membre régulier Avatar de moonia
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    283
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 283
    Points : 82
    Points
    82
    Par défaut
    Je ré explique
    J’ai un formulaire , qui contient des champ input ok
    comme suit:
    donner mon le nom de la formation

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    donner mon le nom de la formation<input id = "a_1" name="but_formation" size="161" value ="" type="text">
    ( note que ce nom va s'enregistrer apres ds une BD)

    donc si je vais rentrer comme nom le mot "test" , --> l'enregistrement ds la BD se fais normalement , mais si je fais rentrer comme nom " l'affaire" avec une apostrophe alors y une erreur qui surgit ( je ne peux pas enregister cette donnees ds ma BD)

    comment faire pour corriger ca SVP

  8. #8
    Membre émérite

    Homme Profil pro
    Expert PHP
    Inscrit en
    Novembre 2004
    Messages
    2 127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Expert PHP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 127
    Points : 2 557
    Points
    2 557
    Par défaut
    bah faut surtout nous montrer le code PHP, qui va aller enregistrer cela dans la BDD

    et faire un addslashes() ou htmlentities() avec ENT_QUOTES sur ta variable POST.

  9. #9
    Membre confirmé Avatar de stunti
    Inscrit en
    Mai 2006
    Messages
    520
    Détails du profil
    Informations personnelles :
    Âge : 46

    Informations forums :
    Inscription : Mai 2006
    Messages : 520
    Points : 594
    Points
    594
    Par défaut
    Je crois que j'ai compris.
    C 'est quand tu mets les donnees dans ta base ?
    dans ce cas, il faut faire un addslashes a la creation de ta requete d'insert.

    edit : Je suis un peu lent aujourd'hui

  10. #10
    Membre régulier Avatar de moonia
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    283
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 283
    Points : 82
    Points
    82
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    if($_POST['action'] == 'submitted')
    {
     
    /*--------------------------------------Partie A------------------------------------------------*/
    $nom = $_POST['nom_formation'];
    $add_user = sprintf("INSERT INTO donnees (id_user,but_formation,objectif_formation) VALUES ('$id','$but_formation')");
     
    ?>
    voici la partie du code php ,qcq je doit faire pour corriger ca svp

  11. #11
    Membre confirmé Avatar de stunti
    Inscrit en
    Mai 2006
    Messages
    520
    Détails du profil
    Informations personnelles :
    Âge : 46

    Informations forums :
    Inscription : Mai 2006
    Messages : 520
    Points : 594
    Points
    594
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $nom = $_POST['nom_formation'];
    a remplacer par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $nom = addslashes($_POST['nom_formation']);

  12. #12
    Membre émérite

    Homme Profil pro
    Expert PHP
    Inscrit en
    Novembre 2004
    Messages
    2 127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Expert PHP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 127
    Points : 2 557
    Points
    2 557
    Par défaut
    stunti >> bah tu vois tu as pigé , mais on t'a expliqué longtemps

  13. #13
    Membre régulier Avatar de moonia
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    283
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 283
    Points : 82
    Points
    82
    Par défaut
    merciiiiii ça marche un grand merci

  14. #14
    Membre éprouvé
    Avatar de SnakemaN
    Profil pro
    Bidouille-tout Android
    Inscrit en
    Juillet 2006
    Messages
    871
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Bidouille-tout Android

    Informations forums :
    Inscription : Juillet 2006
    Messages : 871
    Points : 1 118
    Points
    1 118
    Par défaut
    mais il faut faire attention si tu accepte les ' dans une requete SQL on pourrai faire plein de chose pas sympa du tout.....

    genre dans le champ texte tu met un truc du style :

    dtc' DROP TABLE donnees--'

  15. #15
    Membre émérite

    Homme Profil pro
    Expert PHP
    Inscrit en
    Novembre 2004
    Messages
    2 127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Expert PHP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 127
    Points : 2 557
    Points
    2 557
    Par défaut
    Citation Envoyé par SnakemaN
    mais il faut faire attention si tu accepte les ' dans une requete SQL on pourrai faire plein de chose pas sympa du tout.....

    genre dans le champ texte tu met un truc du style :

    dtc' DROP TABLE donnees--'
    bah il est accepte pas justement ... tu racontes quoi ?

  16. #16
    Membre éprouvé
    Avatar de SnakemaN
    Profil pro
    Bidouille-tout Android
    Inscrit en
    Juillet 2006
    Messages
    871
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Bidouille-tout Android

    Informations forums :
    Inscription : Juillet 2006
    Messages : 871
    Points : 1 118
    Points
    1 118
    Par défaut
    ben
    je croyais qu'il voulait justement accepter les ', ", ` et autre dans son son champ texte donc forcement ils vont passer dans la requete SQL

    Plus d'info ici : http://msdn2.microsoft.com/fr-fr/library/ms161953.aspx

  17. #17
    Membre émérite

    Homme Profil pro
    Expert PHP
    Inscrit en
    Novembre 2004
    Messages
    2 127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Expert PHP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 127
    Points : 2 557
    Points
    2 557
    Par défaut
    si tu lis le topic, quand tu vois addslashes et htmlentities, tu vois qu'il veut pas les accepter.

    tu as mal lu.

  18. #18
    Membre confirmé Avatar de stunti
    Inscrit en
    Mai 2006
    Messages
    520
    Détails du profil
    Informations personnelles :
    Âge : 46

    Informations forums :
    Inscription : Mai 2006
    Messages : 520
    Points : 594
    Points
    594
    Par défaut
    J'espere que c'est un probleme de lecture et pas de comprehension.

    Le but du addslashes est justement d'empecher l'injection SQL.

  19. #19
    Membre éprouvé
    Avatar de SnakemaN
    Profil pro
    Bidouille-tout Android
    Inscrit en
    Juillet 2006
    Messages
    871
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Bidouille-tout Android

    Informations forums :
    Inscription : Juillet 2006
    Messages : 871
    Points : 1 118
    Points
    1 118
    Par défaut
    oui oui apres un bon repas et un bon café on y voit mieux !

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

Discussions similaires

  1. [MySQL] Problème récupération données avec apostrophe
    Par Nata31 dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 21/07/2006, 17h26
  2. Réponses: 4
    Dernier message: 09/05/2006, 11h29
  3. Problème Update Base de données avec les composants ADO
    Par lingli dans le forum Bases de données
    Réponses: 5
    Dernier message: 20/04/2006, 01h41
  4. Problème d'affichage de données avec crystal report
    Par napegadie dans le forum VB 6 et antérieur
    Réponses: 19
    Dernier message: 07/12/2005, 16h45
  5. Réponses: 2
    Dernier message: 14/05/2004, 15h32

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