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 champ texte [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    248
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 248
    Par défaut update champ texte
    Bonjour,
    J'ai un petit soucis de mise à jour dans ma base de données MySQL:
    Je récupère par $_POST une variable issue d'un champ texte.
    Dans PhpMyadmin, j'ai un champ chp18 défini: varchar(15).

    L'importation ne fonctionne pas... (Pour les champs numériques ça passe impec en revanche)
    C'est une histoire de guillemets non?
    Pourtant si je concatène:
    "" . $var18, la mise à jour ne fonctionne toujours pas...

  2. #2
    Membre éclairé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Août 2008
    Messages
    557
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2008
    Messages : 557
    Par défaut
    bonjour,

    tu devrais laisser au moins la ligne de code où tu concatènes.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    248
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 248
    Par défaut
    ok désolé:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $param1='quoi1a';
    	$param2=$_POST['res1'];
    Puis j'ai une requête qui est du style:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    update user set $param1 = 'param2' where ... ;
    Et en fin de compte le problème se situe en aval car l'erreur Mysql retournée est:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    update user set champ1= champ2=...
    en fin de compte c'est mon passage de varaible qui pose problème.

    res1 est le nom d'un champ texte qui a pour valeur : Chute (par exemple). Par contre il est désactivé via disabled, est ce l'origine du problème?

    Merci.

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    248
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 248
    Par défaut
    ok, donc en enlevant le disabled je récupère:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    update user set champ1=Chute
    et ce qu'il faudrait pour que l'update fonctionne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    update user set champ1="Chute"
    Il manque donc quelque chose dans
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $param2=$_POST['res1'];
    mais je n'arrive pas à trouver...
    Et ensuite comment gérer le disabled.
    Que d'ennuis lool

  5. #5
    Membre Expert Avatar de RunCodePhp
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2 962
    Détails du profil
    Informations personnelles :
    Localisation : Réunion

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2 962
    Par défaut
    en fin de compte c'est mon passage de varaible qui pose problème.
    Si tu ne reçois rien en POST, alors c'est ton formulaire qui ne va pas.
    Mais là aussi sans code, on peu ne pas dire grand chose.

    Pour mieux vérifier se que tu reçois (ou pas) en POST, fait un print_r($_POST), et si c'est des données en GET, print_r($_GET).

    Et ensuite comment gérer le disabled
    Le disabled de quoi ?
    J'ai l'impression que tu parts du principe qu'on a ton code sous les yeux
    Faut expliquer un peu plus, du code à l'appuie si nécessaire, on ne pas deviner

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    248
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 248
    Par défaut
    oui c'est bon, j'ai vérifié je reçois ma variable (en retirant la propriété disabled de la zone de texte);
    Maintenant, comment indiquer que je veux la variable post avec des guillemets autour?

  7. #7
    Membre Expert Avatar de RunCodePhp
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2 962
    Détails du profil
    Informations personnelles :
    Localisation : Réunion

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2 962
    Par défaut
    Citation Envoyé par granchef
    Maintenant, comment indiquer que je veux la variable post avec des guillemets autour?
    Mets y tout le temps des guillemets, MySQL transtype, (comme Php), ça marche, que ce soit un string ou un integer.

    Il y a que lorsque la valeur doit être nulle ou ça cause un problème, il ne faut pas de guillemet, et indiquer comme valeur NULL.
    C'est la seule exception à ma connaissance.

  8. #8
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    248
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 248
    Par défaut
    Loool! oui c'est vrai je suis dans mon truc, et je galère tellement que j'ai l'impression que vous êtes à côté

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    $param1='chp1';
    $param2=$_POST['res1'];
    $param3='chp2';
    $param4="$_POST['res2']";
     
    $sql=implode(',', $params);
    $requete = "UPDATE user SET $sql WHERE...
    Les variables res1 et res2 proviennent de champs texte, que j'avais désactivé dans le formulaire précédent.

    J'espère avoir été clair

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

Discussions similaires

  1. update d une table en fonction de champs texte
    Par saphi dans le forum Langage
    Réponses: 6
    Dernier message: 03/11/2009, 14h57
  2. Select/Update champs blob (texte)
    Par agimation dans le forum Powerbuilder
    Réponses: 4
    Dernier message: 22/09/2009, 10h06
  3. Update d'un champ texte
    Par bastringue dans le forum VBA Access
    Réponses: 2
    Dernier message: 25/09/2008, 10h44
  4. Update d'un champ Texte
    Par Glherbier dans le forum VBA Access
    Réponses: 1
    Dernier message: 12/08/2008, 16h35
  5. Probleme d'UPDATE sur un champ text
    Par Nip dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 08/07/2005, 11h35

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