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 :

Calculer champ input saisi [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre confirmé Avatar de Shivas
    Inscrit en
    Juin 2004
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 126
    Par défaut Calculer champ input saisi
    Bonjour,

    J'ai un formulaire ou l'utilisateur saisi une recette de cuisine et renseigne les ingredients. Le nombre de champ input et variable l'utilisateur à la possibilité d'en renjouter. Je souhaite connaitre le nombre de champ input de sasie afin d'enregistrer les infos dans ma bdd.

    Code HTML

    <form method="post" onsubmit="return verifForm()" action="trait-ajout-recette.php" enctype="multipart/form-data" name="formulaire">

    Ingredient :<input type="text" name="ingredient1" value="" size="40">
    Qte : <input type="text" name="qte1" value=""><br>
    Ingredient :<input type="text" name="ingredient2" value=""size="40">
    Qte : <input type="text" name="qte2" value=""><br>
    Ingredient :<input type="text" name="ingredient3" value=""size="40">
    Qte : <input type="text" name="qte3" value=""><br>
    etc.......
    <a href="javascript:void(0)" id="plusing" onclick="affCache('ingredient')" > Plus d'ingredients</a>

    <div id="ingredient" style="display: none">
    Ingredient :<input type="text" name="ingredient11" value=""size="40">
    Qte : <input type="text" name="qte11" value=""></label><br>
    Ingredient :<input type="text" name="ingredient12" value=""size="40">
    Qte : <input type="text" name="qte12" value=""><br>
    Ingredient :<input type="text" name="ingredient13" value=""size="40">
    Qte : <input type="text" name="qte13" value=""><br>
    Ingredient :<input type="text" name="ingredient14" value=""size="40">
    Qte : <input type="text" name="qte14" value=""><br>
    Ingredient :<input type="text" name="ingredient15" value=""size="40">
    Qte : <input type="text" name="qte15" value=""><br>
    </div>

    Code php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    for ($i=1; $i<$nbchamp; $i++)
    Je souhaite recupérer le champ $nbchamp

    Merci

  2. #2
    Membre Expert Avatar de RunCodePhp
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2 962
    Détails du profil
    Informations personnelles :
    Localisation : Réunion

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2 962
    Par défaut
    Salut

    Il faudrait revoir la façon de nommer les noms des input, (ils sont surement rajouter via Javascript), générer le HTML comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <input type="text" name="ingredient[0]" value="" size="40" />
    <input type="text" name="ingredient[1]" value="" size="40" />
    Et commencer par 0, ce serait plus logique.

    Ensuite, pour savoir leur nombre devient moins important, mais il sera quand même possible :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $nombre_ingredients = $_POST['ingredient'];
    Mais là où ça devient très pratique, c'est au niveau du parcourt de chaque élément (avec un foreach), ce qui facilitera les vérifications par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    if (isset($_POST['ingredient']) && !empty($_POST['ingredient'])) {
        foreach ($_POST['ingredient'] as $ingredient) {
            if (!empty($ingredient)) {
                // On insère chaque ingrédient (avec $ingredient) dans une Bdd par exemple
            }
        }
    }

  3. #3
    Membre confirmé Avatar de Shivas
    Inscrit en
    Juin 2004
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 126
    Par défaut
    Merci beaucoup pour vos explications qui sont très claires. Affaire résolu

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

Discussions similaires

  1. Detecter la saisie dans un champ input text
    Par suckthewindow dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 21/08/2008, 11h52
  2. Calculer combien de jours entre 2 champ input
    Par HWICE dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 20/08/2008, 20h21
  3. saisie semi-automatique sur champs input sans submit du formulaire
    Par j0hnmerrick dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 24/10/2007, 17h54
  4. [champ input] Desactiver l'aide a la saisie d'IE
    Par fred777888999 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 18/10/2006, 14h53
  5. Calcul dans des champs de saisie
    Par leeloo076 dans le forum ASP
    Réponses: 4
    Dernier message: 07/04/2004, 10h09

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