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 :

Requete d'insertion avec php


Sujet :

PHP & Base de données

  1. #1
    Candidat au Club
    Inscrit en
    Février 2005
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 3
    Points : 4
    Points
    4
    Par défaut Requete d'insertion avec php
    Ma requête d’insertion ne fonctionne pas lorsque j’utilise l’apostrophe dans la valeur d’un champ de la table concernée
    J’utilise php et SQL Server

    Voici le formulaire de saisie
    Libellé de la Salle :
    Localisation :


    Code de connection
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $connect = odbc_connect("odbc_scolarite","","");
    //initialisation des variables
    $ sal_lib= $_POST['txt_ sal_localisation'];  
    $ sal_localisation= $_POST['txt_ sal_localisation];
    //Requetes d'insertion
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $query = "insert into TR_SALLE_SAL values('$sal_lib','$sal_localisation')";
    odbc_exec($connect, $query);
    Si on saisie dans le formulaire:
    Libellé de la Salle : Labo 1
    Localisation : Salle d informatique // sans apostrophe :
    L’insertion se passe correctement.

    Par contre Si on saisie :
    Libellé de la Salle : Labo 1
    Localisation : Salle d’informatique // avec l’apostrophe :
    L’insertion échoue avec un message du genre informatique n’est pas un nom de colonne.

    De plus lorsque dans l’analyseur de requête de SQL Serveur je lance la commande suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    insert into TR_SALLE_SAL values(' Labo 1,' Salle d’’informatique’ )
    // avce 2 apostrophes successifs, l’insertion se passe correctement également.

    Que faire donc pour gérer les éventuels apostrophes que l’utilisateur de l’application pourrait saisir ?
    Merci !!!
    Images attachées Images attachées  

  2. #2
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Essaie de remplacer ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $query = "insert into TR_SALLE_SAL values('$sal_lib','$sal_localisation')";
    odbc_exec($connect, $query);
    par ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $query = odbc_prepare($connect, "insert into TR_SALLE_SAL values(?, ?)";
    $res   = odbc_execute($query, array($sal_lib, $sal_localisation));

Discussions similaires

  1. Requete deffectueuse Insert avec select
    Par Dargos dans le forum Langage SQL
    Réponses: 3
    Dernier message: 10/05/2007, 13h58
  2. requete d'insertion avec liste déroulantes avec deux colonnes
    Par maxeur dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 25/01/2007, 14h56
  3. Requete d'insertion avec n° auto
    Par zapatta dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 24/07/2006, 10h37
  4. Réponses: 31
    Dernier message: 28/04/2006, 11h09
  5. [PB] requete d'insertion avec group by
    Par warraf dans le forum Langage SQL
    Réponses: 4
    Dernier message: 30/11/2005, 07h01

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