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 :

[Conception] Probleme pour mettre ajour ma base de donne


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 163
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 163
    Par défaut [Conception] Probleme pour mettre ajour ma base de donne
    Voici mon code



    ca ca marche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $sql="UPDATE table SET field='toto' WHERE id='1'";
    mais ca ca marche pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if(isset($_POST['f_id'])) $f_id=addslashes($_POST['f_id']);
        else $f_id=addslashes("");
     
    $sql="UPDATE table SET field='toto' WHERE id='$f_id'";
    Aidez-moi!!
    Merci

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2005
    Messages
    88
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2005
    Messages : 88
    Par défaut
    Quelle est l'erreur?

    EDIT: "....'$var'..." ca a pas lair super.
    Essayes plutot "....".$var.".."

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2005
    Messages
    77
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 77
    Par défaut
    Bonjour,

    fais un echo de ta requête pour voir ce qu'elle t'affiche.

  4. #4
    Membre émérite Avatar de Hervé Saladin
    Homme Profil pro
    Ingénieur d'études en développement et déploiement d'applications
    Inscrit en
    Décembre 2004
    Messages
    647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur d'études en développement et déploiement d'applications
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2004
    Messages : 647
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    if(isset($_POST['f_id']))
         $f_id = $_POST['f_id'];
    else
         $f_id = '';
     
    $sql='UPDATE table SET field=\'toto\' WHERE id='.mysql_real_escape_string($f_id);

  5. #5
    Membre émérite
    Avatar de kankrelune
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    763
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 763
    Par défaut
    Euh arrête moi si je me trompe mais id est censé être un int dans ta table... non... .. ?

    donc

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if(isset($_POST['f_id']))
    {
          $sql = 'UPDATE table SET field=\'toto\' WHERE id='. (int) $_POST['f_id'];
          // traitement de la requete
    }
    else // f_id non soumis ça sert à rien de faire la requete
    
    @ tchaOo°

  6. #6
    Membre expérimenté
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 163
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 163
    Par défaut
    non, id est un id envoyé deèuis un formulaire avec la methode POST.

    il est recupéré (et d'autre donnéé) grace a:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    if(isset($_POST['f_id'])) $f_id=addslashes($_POST['f_id']);
        else $f_id=addslashes("");
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if(isset($_POST['f_id']))
         $f_id = $_POST['f_id'];
    else
         $f_id = "'';
    selon Hervé.

    En fait la conditon
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(isset($_POST['f_id']))
    n'est pas acceptee.

    En d'autre mot dans la requette SQL ci-dessous, $f_id est égale à ""
    ($nom est une autre avraible recupéré envoyé avec la methode POST, qui fonctionne)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql='UPDATE table SET nom='.$nom.' WEHERE id='.$f_id;

  7. #7
    Membre émérite
    Avatar de kankrelune
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    763
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 763
    Par défaut
    Je pense que tu confond id et int... id n'est pas un type de variable c'est juste le raccourcis pour identifiant... ton id est un nombre entier c'est donc un int (integer)... pour le reste... .. .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    if(isset($_POST['f_id']))
          $f_id = (int) $_POST['f_id'];
                else
                       $f_id = '';
    
    if(isset($_POST['nom']))
          $nom = $_POST['nom'];
                else
                       $nom = '';
    
    if(!empty($nom) && $f_id !== '')
    {
            $sql = 'UPDATE table SET field=\''.mysql_real_escape_string($nom).'\' WHERE id='.$f_id;
            // traitement de la requete
    }
    else // f_id ou nom non soumis ça sert à rien de faire la requete
    
    @ tchaOo°

    ps : t'es sur que ton champ nom s'appel field ? moi j'aurais plutot vu

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $sql = 'UPDATE table SET nom=\''.mysql_real_escape_string($nom).'\' WHERE id='.$f_id;
            

  8. #8
    Membre expérimenté
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 163
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 163
    Par défaut
    ben le id de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $sql = 'UPDATE table SET field=\''.mysql_real_escape_string($nom).'\' WHERE id='.$f_id;
    correspond a mon champs id de ma table qui est bien un int

  9. #9
    Membre émérite
    Avatar de kankrelune
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    763
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 763
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    if(isset($_POST['f_id']))
          $f_id = (int) $_POST['f_id'];
                else
                       $f_id = '';
    
    if(isset($_POST['f_slogan']))
          $f_slogan = $_POST['f_slogan'];
                else
                       $f_slogan = '';
    
    if(!empty($f_slogan) && $f_id !== '')
    {
            $sql = 'UPDATE user SET text_en=\''.mysql_real_escape_string($f_slogan).'\' WHERE id='.$f_id;
            // traitement de la requete
            mysql_query($sql) or die('ERROR SQL '.$sql.'<br>'.mysql_error());
    
    }
    else // f_id ou nom non soumis ça sert à rien de faire la requete
    
    @ tchaOo°

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 13/03/2010, 22h29
  2. Probleme pour mettre en ligne un formulaire
    Par sdblepas dans le forum Access
    Réponses: 2
    Dernier message: 04/06/2006, 17h08
  3. Probleme pour Mettre à Zero un StringGrid
    Par La_Bande_A_Zozo dans le forum C++Builder
    Réponses: 3
    Dernier message: 23/05/2006, 10h15
  4. Probleme pour mettre le 0 de fin apres un mot
    Par Asmod_D dans le forum C
    Réponses: 14
    Dernier message: 13/03/2006, 12h30
  5. Réponses: 2
    Dernier message: 08/08/2003, 17h30

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