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 :

Modification d'une table?


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
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    388
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2013
    Messages : 388
    Par défaut Modification d'une table?
    bonsoir,
    J'ai modifié deux tables, il me reste une table, j'ai suivi le même processus pourtant ça ne fonctionne pas.
    Voici mon code:
    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
    20
    21
    22
    23
    24
    25
    26
    27
    <?php
    if (isset($_POST['submit']))
    { $id_pers=htmlentities(trim($_POST['id_pers']));
      $nom_pers=htmlentities(trim($_POST['nom_pers']));
      $prenom_pers=htmlentities(trim($_POST['prenom_pers']));
      $sexe=htmlentities(trim($_POST['sexe']));
      $date_naiss=htmlentities(trim($_POST['date_naiss']));
      $num_tel=htmlentities(trim($_POST['num_tel']));
      $code_service=htmlentities(trim($_POST['code_service']));
      $username=htmlentities(trim($_POST['username']));
      $password=htmlentities(trim($_POST['password']));
      $type=htmlentities(trim($_POST['type']));
     if ($id_pers&&$nom_pers&&$prenom_pers&&$sexe&&$date_naiss&&$num_tel&&$code_service&&$username&&$password&&$type){
    	 //Crypter le password ;*/
        $password=md5($password);
    	//Se connecter à la BDD
        $connect=mysql_connect('localhost','root','') or die(Error);
        mysql_select_db('bdd__messagerie'); //sélectionner BDD
     
    	$mod_pers=mysql_query("SELECT * FROM personne WHERE id_pers='$id_pers'")or die(mysql_error());
     
    	$query=mysql_query("UPDATE personne SET id_pers=$id_pers,nom_pers=$nom_pers,prenom_pers=$prenom_pers,sexe=$sexe,date_naiss=$date_naiss,num_tel=$num_tel,code_service=$code_service,login=$username,password=$password,type=$type WHERE id_pers=$id_pers"); //Requête sql
    	die("Le Compte a ete modifie <a href='Administrateur_page.php'>retour</a>"); 
     
    	}else die("Veuillez saisir tous les champs"); 
    }
    ?>
    Vous pouvez m'aidez SVP?
    Merci

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    A quoi sert ta premiere requête ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre éclairé
    Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    388
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2013
    Messages : 388
    Par défaut
    à sélectionner la ligne à modifier

  4. #4
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    ça m'étonnerait vu que tu n'exploites pas le résultat et que de toute façon, tu as une condition where dans ta requête d'UPDATE qui fait ça très bien.

    Au passage, une remarque concernant ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $id_pers=htmlentities(trim($_POST['id_pers']));
    [...]
    if ($id_pers&&$nom_pers&&$prenom_pers&&$sexe&&$date_naiss&&$num_tel&&$code_service&&$username&&$password&&$type)
    Sachant que toutes tes variables sont des String, le test va utiliser la conversion automatique en booléen
    Lors d'une conversion en booléen, les valeurs suivantes sont considérées comme FALSE :
    • le booléen FALSE, lui-même
    • l'entier 0 (zéro)
    • le nombre à virgule flottante 0.0 (zéro)
    • la chaîne vide, et la chaîne "0"
    • un tableau avec aucun élément
    • un objet avec aucun membre, ni variable (uniquement en PHP 4)
    • le type spécial NULL (incluant les variables non définies)
    • les objets SimpleXML créés depuis des balises vides
    Donc si jamais un de tes champs est vide ou vaut "0", tu n'entreras jamais dans la requête de mise à jour... Est-ce vraiment ce que tu souhaites ?
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  5. #5
    Membre éclairé
    Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    388
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2013
    Messages : 388
    Par défaut
    Merci pour l'explication
    Il est vrai que la condition du if oblige l'utilisateur à modifier tous les champs, ce que je ne souhaite pas, je voudrais qu'il ait le choix, je pourrais remplacer le and par un or

  6. #6
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    Tu peux aussi tester uniquement les champs obligatoires. Par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ($id_pers && $nom_pers)
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

Discussions similaires

  1. Ajout & modif d'une table vers l'autre
    Par BOTIGUA dans le forum Access
    Réponses: 1
    Dernier message: 17/02/2006, 18h00
  2. Tracer les modifications d'une table
    Par vinze11 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 17/02/2006, 13h44
  3. Vue non mise à jour après modification d'une table
    Par cybernet35 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 19/01/2006, 13h54
  4. date de dernière modification d'une table ?
    Par NiBicUs dans le forum Requêtes
    Réponses: 3
    Dernier message: 17/12/2004, 18h11
  5. Erreur lors de modification d'une table
    Par seb.49 dans le forum SQL
    Réponses: 11
    Dernier message: 13/01/2003, 17h16

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