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

Langage PHP Discussion :

Sûrement un problème dans ce bout de code


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 24
    Par défaut Sûrement un problème dans ce bout de code
    Bonjour à tous !

    Comme noté dans l'objet de ce post, je dois sûrement avoir un problème dans ce bout de code qui me sert à faire un update de ma base, mais je ne vois pas d'où ça vient... Probablement de mes '".."', ou quelque-chose comme ça !

    Voici le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $updateModifSofts = mysql_query("UPDATE boissons SET nom_boisson = '".$nomSoft."', contenance_boisson01 = '".$contenanceSoft."', prix_boisson01 = '".$prixSoft."' WHERE ID = $IDForm LIMIT 1") or die (mysql_error());
    L'update se fait, mais aucune valeur n'est enregistrée dans ma base !!!!
    Par contre, si je fais un echo de mon update, les valeurs sont bien retournées !

    Merci d'avance à tous ceux qui auront l'amabilité de trouver une solution à cet épineux problème que je ne parviens pas à résoudre !!!

  2. #2
    Membre Expert
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Par défaut
    Tu veux dire quoi par
    L'update se fait, mais aucune valeur n'est enregistrée dans ma base !!!!
    ?

    Les champs deviennent vides ?

    Comment récupères tu tes valeurs $nomSoft, $contenanceSoft, etc... ?

    D'un formulaire ?
    Si c'est le cas, il vaut mieux utiliser $_POST['nomSoft'] ou $_GET['nomSoft'] selon la method de ton formulaire.

  3. #3
    Membre expérimenté
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2009
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2009
    Messages : 127
    Par défaut Contenance ?
    Bonjour
    La contenance c'est une chaine, entier ou un réel ?
    Si la contenance est un entier alors
    contenance_boisson01 = " .$contenanceSoft." (sans les quotes)
    fonctionnerait mieux que
    contenance_boisson01 = '".$contenanceSoft."'

    Bon dev

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 24
    Par défaut
    Bonjour Seb33300 !

    Voici comment je récupère les valeurs des variables qui traitent mon formulaire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    if (isset($_POST['envoyer'])) {
    	$nomSoft = $_POST['nomSoft'];
    	$contenanceSoft = $_POST['contenanceSoft'];
    	$prixSoft = $_POST['prixSoft'];
    	$IDForm = $_POST['IDForm'];
     
    	$updateModifSofts = mysql_query("UPDATE boissons SET nom_boisson = '".$nomSoft."', contenance_boisson01 = '".$contenanceSoft."', prix_boisson01 = '".$prixSoft."' WHERE ID = $IDForm LIMIT 1") or die (mysql_error());
    	echo "UPDATE boissons SET nom_boisson = '$nomSoft', contenance_boisson01 = '$contenanceSoft', prix_boisson01 = '$prixSoft' WHERE ID = $IDForm LIMIT 1";
    }
    Effectivement, lorsque j'envoie mon formulaire, les champs en base restent vides, mais c'est bien la ligne concernée qui est modifiée, me semble-t-il.
    Ce qui me fait dire que l'update se fait bien. Mais je ne sais pourquoi, les valeurs passées dans mes variables ne sont pas trouvées lors de l'update.

    J'espère être assez clair... ???

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

    Informations forums :
    Inscription : Septembre 2006
    Messages : 24
    Par défaut
    bonjour mk !

    Les champs du formulaire doivent traiter des chaines. seul l'id qui est récupéré est un entier auto-incrémenté.

  6. #6
    Membre expérimenté
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2009
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2009
    Messages : 127
    Par défaut Ok nanti
    Ok

    Sinon pourquoi pas un probleme de virgules/points pour les chiffres ?

    Bon courage

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

    Informations forums :
    Inscription : Septembre 2006
    Messages : 24
    Par défaut
    mkweb,

    contenance_boisson01 est un champ de type varchar qui doit recevoir des contenances du type "25cl"...

    Donc, pas d'entiers ou de nombres à virgules !!!!

    arfff ! ça fait 3 jours que je bloque sur ce problème !!! ça devient plus que saoulant !!!! lollll

  8. #8
    Membre Expert Avatar de nosferapti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    1 157
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 1 157
    Par défaut
    Citation Envoyé par nanti Voir le message
    Par contre, si je fais un echo de mon update, les valeurs sont bien retournées !
    tu as essayé cette requête avec phpMyAdmin ?

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 24
    Par défaut
    A Nosférapti,

    Voici ce que j'obtiens en faisant l'echo sur l'update :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    UPDATE boissons 
    SET nom_boisson = 'Coca-Cola', contenance_boisson01 = '', prix_boisson01 = '3,00' 
    WHERE ID = 20 LIMIT 1
    J'ai testé cette requête sur myadmin et elle passe nickel !

    D'où mon incompréhention... !



    A mkweb :

    Je joins le fichier sql de ma base et de la table concernée !
    Fichiers attachés Fichiers attachés

  10. #10
    Membre Expert
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Par défaut
    Essaye d'afficher pour voir si tu récupère bien les valeur envoyées par ton formulaire.

  11. #11
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 24
    Par défaut
    Seb33300

    Tout semble correct !

    Voici le résultat du print_r :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Array ( [IDForm] => 20 [nomSoft] => Coca-Cola [contenanceSoft] => [prixSoft] => 3,00 [envoyer] => Modifier )
    ça m'énerve (comme le chante certains !)

  12. #12
    Membre chevronné Avatar de sohnic
    Femme Profil pro
    bioinfo
    Inscrit en
    Mai 2003
    Messages
    428
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : bioinfo

    Informations forums :
    Inscription : Mai 2003
    Messages : 428
    Par défaut
    Bonjour,
    Bon, c'est bête comme idée mais on ne sait jamais.
    Si j'ai tout suivi :
    - La chaine update est bonne, puisque l'echo retourne bien la requete avec les bonnes valeurs, et tu l'as validée manuellement avec myAdmin.
    - Pas d'erreur de connexion, sinon ton die mysql_error te l'aurait dit
    - Le champ à updater est modifié (valeurs vidées)... et là je m'interroge. Tu ne ferais pas un autre update plus bas dans ton code, sur ce meme champ mais avec une requete mal foutue ?

    Après, je ne vois pas....

    S.

  13. #13
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 24
    Par défaut
    Bonsoir Sohnic,

    J'utilise effectivement d'autres updates dans mon code, mais qui correspondent à d'autres champs (autres ID) !

    Il se peut que certains de ces updates soient, comme tu le dis, mal fichus !

    Je vais refaire un tour d'horizon pour vérifier cela et je reposterai dès que j'aurai terminé !!!

    Pourvu que ce soit ça !!!


Discussions similaires

  1. problème dans la création de code a barre
    Par asprog dans le forum Windows Forms
    Réponses: 6
    Dernier message: 09/05/2009, 15h27
  2. Réponses: 5
    Dernier message: 17/03/2008, 12h51
  3. wget suivi de l'URL dans un bout de code Java
    Par Inquirer94 dans le forum Entrée/Sortie
    Réponses: 1
    Dernier message: 26/03/2007, 15h53
  4. Réponses: 1
    Dernier message: 29/11/2005, 23h05
  5. Quel est le problème dans ce code ?
    Par Luther13 dans le forum C
    Réponses: 12
    Dernier message: 26/08/2003, 17h09

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