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 :

Recupérer plusieurs $POST pour les mettre dans une table [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2007
    Messages : 758
    Points : 279
    Points
    279
    Par défaut Recupérer plusieurs $POST pour les mettre dans une table
    Bonsoir je m'explique j'ai une page avec une formulaire qui m'envoie les données saisies sur ma seconde page, ainsi je les reçois de cette facon :
    et ensuite avec tous les $POST je réalise un calcul en bas de page :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if ($_POST['grade'] =="Officier"){ echo($_POST['24s']*131.64)+($_POST['24w']*142.17)+($_POST['hs']*5.49)+($_POST['hw']*5.92);
    }
    if ($_POST['grade'] =="Sous Officier"){ echo ($_POST['24s']*106.08)+($_POST['24w']*114.57)+($_POST['820s']*53.04)+($_POST['820w']*57.28)+($_POST['208s']*53.04)+($_POST['208w']*57.28)+($_POST['815s']*30.94)+($_POST['815w']*33.42)+($_POST['1522s']*30.94)+($_POST['1522w']*33.42)+($_POST['1722s']*22.10)+($_POST['1722w']*23.87)+($_POST['228s']*44.20)+($_POST['228w']*47.74)+($_POST['hs']*4.42)+($_POST['hw']*4.77);
    }
    je souhaiterais enregistrer le résultat de ce calcul dans une table, mais je ne sais pas comment récupérer le résultat dans une variable afin de le sauvegarde dans une table de ma bd,
    Si vous pourriez m'aiguiller un peu merci d'avance

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 21
    Points : 30
    Points
    30
    Par défaut
    Il doit y avoir une subtilité qui m'a échappée, mais si tu veux seulement avoir le résultat du calcul entre le dans une variable, ensuite crée ta requête sql pour l'insérer dans la table voulue et voila...
    Non?

  3. #3
    Membre actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2007
    Messages : 758
    Points : 279
    Points
    279
    Par défaut
    oui j'ai voulu faire ca mais lorsque je fais ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <? 
    $code = ($_SESSION['name']) .' '. ($_SESSION['prenom']);
    $resultat = if ($_POST['grade'] =="Officier"){ echo($_POST['24s']*131.64)+($_POST['24w']*142.17)+($_POST['hs']*5.49)+($_POST['hw']*5.92);
    }
    mysql_connect($hostname, $username, $password);
    mysql_select_db($database);
    mysql_query("INSERT INTO vacations VALUES('', '" . $code . "', '" . $resultat . "')");
     
    ?>
    j'ai crée la variable résultat qui contien le calcul lorsque la personne choisis le grade d'officier dans le formulaire précedent mais il me dit "parse error" !

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 21
    Points : 30
    Points
    30
    Par défaut
    oula en effet c'est normal du coup.

    Alors soit tu pose ton if et tu définie tes variables a l'intérieur soit tu utilises la forme compact du if. Pour ma part je préfére la deuxieme et ¸a donne un truc genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $resultat = ($_POST['grade'] =="Officier")?(($_POST['24s']*131.64)+($_POST['24w']*142.17)+($_POST['hs']*5.49)+($_POST['hw']*5.92)):0;
    echo $resultat;
    tu peux aussi faire un switch sur la var $_POST['grade'] et ensuite mettre en place la valeur de la variable.

  5. #5
    Membre actif
    Inscrit en
    Mai 2010
    Messages
    177
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 177
    Points : 210
    Points
    210
    Par défaut
    Si j'étais toi, je ferais attention avec l'opérateur de comparaison "==" quand tu compares des strings, moi j'utilise l'opérateur de comparaison stricte "===" (ça m'est arrivé d'avoir de drôles de résultats).

    Aussi, je me permettrais d'ajouter que "echo" ne prend pas de parenthèses (il te donne une erreur quand tu en mets). Alors quand tu veux afficher quelque chose à l'écran c'est juste

    echo "Bonjour tout le monde";

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

Discussions similaires

  1. Récuperer les données d'un fichier txt pour les insérer dans une Table
    Par sandokhane dans le forum Bases de données
    Réponses: 47
    Dernier message: 31/05/2014, 15h10
  2. Recuperer le nom des onglets pour les mettre dans une colonne
    Par nico4566 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 21/03/2011, 17h23
  3. Réponses: 3
    Dernier message: 04/05/2009, 08h28
  4. Réponses: 5
    Dernier message: 21/02/2007, 16h12
  5. Réponses: 3
    Dernier message: 09/09/2006, 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