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 :

Erreur dans une petite chaîne (mais elle me fait rager :P ) [PHP 5.0]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de amerex
    Homme Profil pro
    Analyste Support et Développement
    Inscrit en
    Septembre 2007
    Messages
    246
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Analyste Support et Développement
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2007
    Messages : 246
    Par défaut Erreur dans une petite chaîne (mais elle me fait rager :P )
    Bonjour à tous!!
    Je dois me rendre à l'évidence, passer une soirée à chercher pourquoi une chaîne me retourne une erreur ne résout pas nécessairement l'erreur héhé!

    Peut-être trouverez-vous ce qui cloche?

    Voici mon code:
    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $sql = 'UPDATE members SET Nom = "'.mysql_escape_string($_POST['nom']).'", Mail = "'.mysql_escape_string($_POST['courriel']).'", Sexe = "'.mysql_escape_string($_POST['gender']).'", Pays = "'.mysql_escape_string($_POST['pays']).'" WHERE User = ".'($_SESSION['login'])'."'; 
    				mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
    				header ('Location: tools.php');

    Et voici l'erreur renvoyée:
    Citation Envoyé par SQL
    Parse error: syntax error, unexpected '(' in /homepages/15/d250700788/htdocs/GW/signup3.php on line 10
    La ligne 10 est celle qui contient la chaîne UPDATE...

    Bref!! Si l'erreur vous saute aux yeux, dites moi le svp, je suis presqu'en train de tout effacer de mon disque héhéhé!!

  2. #2
    Membre Expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Par défaut
    Je pense que l'erreur est ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WHERE User = ".'($_SESSION['login'])'."';
    Mais c'est dans ce genre de cas que le fonctions sprintf montrent toute leur puissance :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $sql = 'UPDATE members SET Nom = "%s", Mail = "%s", Sexe = "%s", Pays = "%s" WHERE User = "%s"'; 
    $sql = sprintf( $sql, mysql_escape_string($_POST['nom']), mysql_escape_string($_POST['courriel']), mysql_escape_string($_POST['gender']),
    mysql_escape_string($_POST['pays']), ($_SESSION['login']) );
     
    mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
    header ('Location: tools.php');
    De plus, une alternative agréable à ce code pourra être effectuée en utilisant vprintf

  3. #3
    Membre éclairé Avatar de amerex
    Homme Profil pro
    Analyste Support et Développement
    Inscrit en
    Septembre 2007
    Messages
    246
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Analyste Support et Développement
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2007
    Messages : 246
    Par défaut
    Bonjour!
    J'ai testé ce code... le tout se passe très bien, sauf que dans ma base de données, les valeurs sont vides...!!

    Je vais regarder l'alternative du vprintf...

  4. #4
    Membre éclairé Avatar de amerex
    Homme Profil pro
    Analyste Support et Développement
    Inscrit en
    Septembre 2007
    Messages
    246
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Analyste Support et Développement
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2007
    Messages : 246
    Par défaut
    Stoppez tout!
    Ça marche!

    J'avais mit un header('Refresh: 4...') et ça rechargeait la page......... alors ça inscrivait des données innexistantes...

    Merci!!

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

Discussions similaires

  1. Erreur dans une boucle mais où
    Par Guillaume1701 dans le forum Débuter
    Réponses: 4
    Dernier message: 01/04/2014, 22h45
  2. [TPW] Erreur lors de l'ajout d'un élément dans une liste chaînée triée
    Par sangimed dans le forum Turbo Pascal
    Réponses: 5
    Dernier message: 18/01/2013, 22h37
  3. [Thread] Erreur dans une classe interne
    Par totof2308 dans le forum Général Java
    Réponses: 5
    Dernier message: 03/06/2004, 09h15
  4. Insertion d'un noeud dans une liste chaînée
    Par habib106 dans le forum Assembleur
    Réponses: 8
    Dernier message: 07/04/2004, 23h34
  5. Réponses: 3
    Dernier message: 09/05/2002, 02h39

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