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 :

Update avec des variables passé en parametre [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 12
    Points : 8
    Points
    8
    Par défaut Update avec des variables passé en parametre
    Bonsoir,

    voila j'ai un petit probleme, en effet j'ai une page qui récupère les données d'un formulaire (pré-remplit) et qui execute une requete UPDATE avec ces données.

    Les données sont transmises sous formes de variables, mais quand j'execute la requete il ne m'affiche aucune erreur et n'insère rien dans la base de données, par contre quand j'insère les données en dur ca marche... :s

    j'ai affiché chaque variable avec un echo et elles s'affichent nikel, je vois pas ou est le probleme.

    voici la requete :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $requete = $bdd->prepare('UPDATE porte SET reference = :ref, prix = :prix, photo = :photo, id_matiere = :mat, id_categorie = :cat, id_modele = :mod WHERE id_porte = :id_porte');
    $requete->execute(array('ref' => $ref,
    			'prix' => $prix,
    			'photo' => $imgfinale,
    			'mat' => $mat,
    			'cat' => $cat,
    			'mod' => $mod,
    			'id_porte' => $id_porte));
    et celle qui marche nikel:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $requete = $bdd->prepare('UPDATE porte SET reference = :ref, prix = :prix, photo = :photo, id_matiere = :mat, id_categorie = :cat, id_modele = :mod WHERE id_porte = :id_porte');
    $requete->execute(array('ref' => PRT_123456,
    			'prix' => 123456,
    			'photo' => "images/test.jpg",
    			'mat' => "test",
    			'cat' => "test",
    			'mod' => "test",
    			'id_porte' => 456));
    Merci

  2. #2
    Membre éclairé
    Inscrit en
    Juillet 2003
    Messages
    625
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 625
    Points : 673
    Points
    673
    Par défaut
    Bonsoir,

    peux tu afficher :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    echo '<pre>';
    print_r(array('ref' => $ref,
    			'prix' => $prix,
    			'photo' => $imgfinale,
    			'mat' => $mat,
    			'cat' => $cat,
    			'mod' => $mod,
    			'id_porte' => $id_porte));
    echo '</pre>';

    avant ta requête par exemple.

    Pour l'affichage des erreurs, essaye

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ini_set('display_errors',1);

    en haut de ta page
    Le savoir est utile que s'il est partagé par tous.
    /(bb|[^b]{2})/
    !sleep() ? array((string))

  3. #3
    Membre régulier Avatar de Linu6
    Profil pro
    Inscrit en
    Août 2007
    Messages
    227
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 227
    Points : 106
    Points
    106
    Par défaut
    Citation Envoyé par Somesa Voir le message
    Bonsoir,

    voila j'ai un petit probleme, en effet j'ai une page qui récupère les données d'un formulaire (pré-remplit) et qui execute une requete UPDATE avec ces données.

    Les données sont transmises sous formes de variables, mais quand j'execute la requete il ne m'affiche aucune erreur et n'insère rien dans la base de données, par contre quand j'insère les données en dur ca marche... :s

    j'ai affiché chaque variable avec un echo et elles s'affichent nikel, je vois pas ou est le probleme.

    voici la requete :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $requete = $bdd->prepare('UPDATE porte SET reference = :ref, prix = :prix, photo = :photo, id_matiere = :mat, id_categorie = :cat, id_modele = :mod WHERE id_porte = :id_porte');
    $requete->execute(array('ref' => $ref,
    			'prix' => $prix,
    			'photo' => $imgfinale,
    			'mat' => $mat,
    			'cat' => $cat,
    			'mod' => $mod,
    			'id_porte' => $id_porte));
    et celle qui marche nikel:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $requete = $bdd->prepare('UPDATE porte SET reference = :ref, prix = :prix, photo = :photo, id_matiere = :mat, id_categorie = :cat, id_modele = :mod WHERE id_porte = :id_porte');
    $requete->execute(array('ref' => PRT_123456,
    			'prix' => 123456,
    			'photo' => "images/test.jpg",
    			'mat' => "test",
    			'cat' => "test",
    			'mod' => "test",
    			'id_porte' => 456));
    Merci

    essaies comme ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $requete = $bdd->prepare('UPDATE porte SET reference = :ref, prix = :prix, photo = :photo, id_matiere = :mat, id_categorie = :cat, id_modele = :mod WHERE id_porte = :id_porte');
    $requete->execute(array('ref' => "'".$ref."'",
    			'prix' => "'".$prix."'",
    etc ...
     
    ));

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 12
    Points : 8
    Points
    8
    Par défaut
    @Linu6 : J'ai essayé cette méthode en premier en pensant que c'était une erreur de syntaxe mais ca ne fonctionnait toujours pas .. ^

    @syl2095 : Merci en effet en faisant un array je me suis rendu compte que chaque variable passait sauf "id_porte" qui était vide, erreur de ma part car j'ai passé cette variable sur la page précédente mais pas sur celle ci...

    désolé encore une erreur d'inattention...

    Je vous remercie pour votre aide qui m'a évité de longues recherches dans mon code

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 28/11/2005, 12h03
  2. petit souci avec des variables avec des fonctions psql
    Par dust62 dans le forum PostgreSQL
    Réponses: 4
    Dernier message: 02/04/2005, 13h45
  3. Réponses: 6
    Dernier message: 28/05/2004, 09h39
  4. paramétrer ADOConnection avec des variables
    Par ouckileou dans le forum Bases de données
    Réponses: 3
    Dernier message: 23/04/2004, 08h11
  5. UPDATE avec des variables Delphi ...
    Par Kokito dans le forum Bases de données
    Réponses: 3
    Dernier message: 08/03/2004, 22h35

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