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 :

Post PHP - Problème certainement simple


Sujet :

PHP & Base de données

  1. #1
    Membre à l'essai
    Inscrit en
    Février 2011
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 14
    Points : 14
    Points
    14
    Par défaut Post PHP - Problème certainement simple
    Bonjour à tous,

    Je développe une caisse ultra light pour mon resto de pâtes fraiches.

    quelque chose m'échappe.

    J'ai 2 boutons, je souhaite simplement que en cliquant sur le bouton 1, ça mette à jour un champ de la dernière ligne de ma table et que en cliquant sur le bouton 2 ça mette à jour un autre champ de la dernière ligne de ma table.

    Exemple :

    Clic sur le bouton 1 : Update du champ cmd1 du max(id)
    Clic sur le bouton 2 : Update du champ cmd2 du max(id)

    le soucis est que j'ai beau retoucher, retourner le code, au lieu de faire update sur un seul champ, ça efface l'un et remplie l'autre.

    Mon code :

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <form method='POST' action='caisse.php' enctype='multipart/form-data'>	
    <input type="hidden" name="plat1" value="carbonara">
    <input type="submit" name="bouton1" value="carbonara">
    </form>
     
    <form method='POST' action='caisse.php' enctype='multipart/form-data'>
    <input type="hidden" name="plat2" value="4fromages">
    <input type="submit" name="bouton2" value="4fromages">
    </form>
     
    </form>

    puis

    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
    28
    29
    <?php 
    $c = mysql_connect("localhost","*****","*****") or die("connexion impossible"); 
    mysql_select_db("caisse") or die("base non trouvée"); 
    $sql = 'SELECT MAX(id) as id FROM tablecaisse';
    if($p = @mysql_query($sql,$c)){
    while($val = @mysql_fetch_array($p)){
    $maxid = $val["id"];	
     
     
    echo "Ticket N° $maxid";
     
    }
    }
     
     
    //affichage de la commande
    echo "
    <br><br>
     ";
     
     
    if(isset($_POST['bouton1']))      $plat1=$_POST['bouton1'];
    else      $plat1="";
    mysql_query(" UPDATE tablecaisse SET cmd1 ='$plat1' WHERE id='$maxid' LIMIT 1 ");
    if(isset($_POST['bouton2']))      $plat2=$_POST['bouton2'];
    else      $plat2="";
    mysql_query(" UPDATE tablecaisse SET cmd2 ='$plat2' WHERE id='$maxid' LIMIT 1 ");
    mysql_close();
    ?>
    Merci d'avance pour vos réponses.

  2. #2
    Membre averti Avatar de shell13010
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2008
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Distribution

    Informations forums :
    Inscription : Mars 2008
    Messages : 281
    Points : 314
    Points
    314
    Par défaut
    Je suis pas sur que MAX peut-être utilisable la ou tu la placer, mais c'est a confirmé?

    sinon j'aurais fait une rêquete simple de se type:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    UPDATE tablecaisse SET cmd2 ='.$plat2.' ORDER BY id DESC LIMIT 1;
    "Quelle prétention de prétendre que l'informatique est récente: Adam et Eve avaient déjà un Apple!"

  3. #3
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 496
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 496
    Points : 12 596
    Points
    12 596
    Par défaut
    on peut voir le schéma de la db ?

  4. #4
    Membre averti Avatar de bourvil
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    411
    Détails du profil
    Informations personnelles :
    Localisation : Israël

    Informations forums :
    Inscription : Juin 2002
    Messages : 411
    Points : 329
    Points
    329
    Par défaut
    C'est normal que le UPDATE se fasse sur les deux champs, tu as un pb non pas ds ta requete mais ds ton code PHP.

    voici ton code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    if(isset($_POST['bouton1']))      $plat1=$_POST['bouton1'];
    else      $plat1="";
    mysql_query(" UPDATE tablecaisse SET cmd1 ='$plat1' WHERE id='$maxid' LIMIT 1 ");
    if(isset($_POST['bouton2']))      $plat2=$_POST['bouton2'];
    else      $plat2="";
    mysql_query(" UPDATE tablecaisse SET cmd2 ='$plat2' WHERE id='$maxid' LIMIT 1 ");
    les "if" ne font que changer la valeur de $plat mais le update ce fait tjs.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    //si bouton1 alors update le champs cmd1
    if(isset($_POST['bouton1'])) 
    {   
       $plat1=$_POST['bouton1'];
       mysql_query(" UPDATE tablecaisse SET cmd1 ='$plat1' WHERE id='$maxid' LIMIT 1 ");
    }
    //si bouton2 alors update le champs cmd2
    elseif(isset($_POST['bouton2'])){
          $plat2=$_POST['bouton2'];
          mysql_query(" UPDATE tablecaisse SET cmd2 ='$plat2' WHERE id='$maxid' LIMIT 1 ");
    }
    Franchement, je suis capable du meilleur comme du pire, mais, dans le pire, c'est moi le meilleur.
    Coluche

  5. #5
    Membre à l'essai
    Inscrit en
    Février 2011
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 14
    Points : 14
    Points
    14
    Par défaut
    Merci pour votre aide

Discussions similaires

  1. Réponses: 11
    Dernier message: 18/05/2011, 09h34
  2. [AJAX] AJAX- POST - PHP
    Par BOLARD dans le forum AJAX
    Réponses: 2
    Dernier message: 11/02/2011, 08h18
  3. [httplib] Problème formulaire post PHP
    Par Gamoth dans le forum Réseau/Web
    Réponses: 4
    Dernier message: 27/03/2010, 13h40
  4. Problème certainement idiot, php et phpmyadmin
    Par phoque.r dans le forum Installation
    Réponses: 5
    Dernier message: 06/04/2007, 12h48
  5. [Débutant] Problème servlet simple
    Par davycrocket dans le forum Servlets/JSP
    Réponses: 7
    Dernier message: 30/06/2004, 09h24

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