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 :

Mise à jour de table [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de cflo91
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 113
    Par défaut Mise à jour de table
    Bonjour,

    voila je voudrai mettre à jour une table de ma base de donnée (avec UPDATE)
    mais le problème c'est que je voudrai mettre à jour que certain champs.

    En fait, l'utilisateur entre dans un formulaire les champs qu'il veut mettre à jour et derrière je met à jour les données mais je ne sais pas comment m'y prendre.
    Car je ne veux pas que l'utilisateur remplisse les champs dont il n'y a aucun changement.

    Merci d'avance pour votre aide.

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 138
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 138
    Par défaut
    ben la méthode classique et d'afficher le formulaire de modification de la meme manière que le formulaire d'ajout. Cependant, tu vas préremplier le formulaire de modification avec les données actuellement enregistrés dans ta base de donnes.
    Exemple:
    tu as une table bien avec id=1 et nom : "mon bien"

    tu généres un formulaire de modification:
    D'abors tu récupéres l'id de la ligne à modifier puis tu charges son contenu dans une variable $bien_modif
    Nom :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="text" name="nom" value="<?php echo $bien_modif[mon bien];?>">
    ensuite quand tu mettras à jour, tu fais un update sur tous les champs et voilà

  3. #3
    Membre confirmé Avatar de cflo91
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 113
    Par défaut
    ok,
    j'ai créé mon formulaire avec la methode POST, j'ai créé plusieurs champs:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <input type="text" name="marque" size="20" value="<?php echo $marque[marque];?>">
    <input type="text" name="modele" size="20" value="<?php echo
    $modele[modele];?>">
    J'ai au préalable chargé les variables $marque et $modele par leur valeur initiale.

    Quand je valide mon formulaire, ça m'enmène sur une autre page php qui lance la requete pour l'UPDATE:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $marque=$_POST['marque'];
    $modele=$_POST['modele'];                         
     
    $req="UPDATE VEHICULE SET * ; 
     
    $exec=mysql_query($req) or die ("Erreur : ".mysql_error());
    Hélas, les champs ne se mettent pas à jour....
    Je ne comprends pas pourquoi.

  4. #4
    Expert confirmé
    Avatar de N1bus
    Homme Profil pro
    Dev. Web & OpenERP
    Inscrit en
    Janvier 2003
    Messages
    2 827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Dev. Web & OpenERP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 827
    Par défaut
    $req="UPDATE VEHICULE SET * ;
    Il faut que tu spécifies le nom de la colonne à modifier ainsi que la valeur et quoi (id) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $req="UPDATE VEHICULE SET 
         champ_marque = '$marque', 
         champ_modele = '$modele' 
         WHERE id = '".$_POST['id']."'" ;

  5. #5
    Membre confirmé Avatar de cflo91
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    113
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 113
    Par défaut
    ok, par contre j'ai un autre problème sur la premiere page où il y a mon formulaire, quand je vais sur le site, ça m'affiche que la premiere lettre du champs et non le champ en entier, je ne sais pas pourquoi ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="text" name="Marque" size="20" value="<?php echo $Marque[marque];?>">
    si par exemple le champs Marque contient "peugeot", sur le site ça va afficher "p" dans le formulaire

    Pouvez vous m'expliquer comment faire pour tout afficher ?

  6. #6
    Expert confirmé
    Avatar de N1bus
    Homme Profil pro
    Dev. Web & OpenERP
    Inscrit en
    Janvier 2003
    Messages
    2 827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Dev. Web & OpenERP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 827
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="text" name="Marque" size="20" value="<?php echo $Marque[marque];?>">
    ça vient de là :
    $Marque[marque] : PHP l'interprete ainsi $Marque[0] et affiche le 1er caractère

    essayes ça :
    $Marque['marque']

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 23/12/2005, 22h32
  2. [ASE][12.0] Mise à jour de table
    Par Lps dans le forum Sybase
    Réponses: 9
    Dernier message: 09/12/2005, 14h28
  3. Programmer la mise à jour des tables attachées
    Par _developpeur_ dans le forum Access
    Réponses: 3
    Dernier message: 02/12/2005, 20h29
  4. Mise à jour des tables liées + TIMESTAMP
    Par Homegrown dans le forum Access
    Réponses: 11
    Dernier message: 25/04/2005, 21h52
  5. Mise à jour de table impossible après requête avec jointure
    Par sto dans le forum Bases de données
    Réponses: 5
    Dernier message: 17/03/2004, 13h24

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