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 :

Récupération de valeurs de champs dans formulaire


Sujet :

PHP & Base de données

  1. #1
    Membre éclairé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juin 2007
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2007
    Messages : 179
    Par défaut Récupération de valeurs de champs dans formulaire
    bonjour, voila mon code
    le while affcihe les données OK , le majprest recupére la valeur tapé OK
    mon PB si j'inclus les dernières lignes dans le while pour afficher toutes les données il est alors impossible de récupérer la valeur saisie l'erreur donne un indefine valeur !!!!!




    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
     
    $requete = "SELECT prestations ,nb, somprest,remprest  FROM tempprest " ; 
    $result = mysql_query ( $requete ) ; 
    echo "<table class=\"texte\" width=\"100%\" border=\"0\" bordercolor=\"#000066\" cellspacing=\"0\" align=\"center\">";
    echo "<tr>";
    echo "<th align=\"left\" bgcolor=\"#DBE8E8\">Prestations</th>";
    echo "<th align=\"center\" bgcolor=\"#DBE8E8\">Quantité</th>";
    echo "<th align=\"right\" bgcolor=\"#DBE8E8\">Total Prest.(€)</th>";
    echo "<th align=\"center\" bgcolor=\"#DBE8E8\">Remise</th>";
    echo "</tr>";
    while($row = mysql_fetch_array($result))
    {
    $colon1="<th align=\"left\">". stripslashes($row['prestations'])."&nbsp;</th>";
    $colon2="<th align=\"center\">". stripslashes($row['nb'])."&nbsp;</th>";
    $colon3="<th align=\"right\">". stripslashes($row['somprest'])." € &nbsp;</th>";
    }
    echo "</table>";
    ?>
     
    <tr>
    <th align="left"><? echo "$colon1"?> </th>
    <th align="center"><? echo "$colon2" ?> </th>
    <th align="right"><? echo "$colon3" ?></th>
    <th><input name="remiseprest"  type="Text" id="remiseprest1" onchange="majprest(this)" size="5"  style="COLOR : #0000FF; FONT-FAMILY: Verdana; FONT-SIZE: 10pt"></th>
    </tr>
    une idée serait la bienvenue

  2. #2
    Membre expérimenté Avatar de BlackSmith
    Inscrit en
    Mars 2008
    Messages
    181
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Mars 2008
    Messages : 181
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input name="remiseprest"  type="Text" id="remiseprest1" onchange="majprest(this)" size="5"  style="COLOR : #0000FF; FONT-FAMILY: Verdana; FONT-SIZE: 10pt">
    Il faut que tu change remiseprest par remiseprest_id, ou id et le numéro de ton enregistremement, idem pour l'id remiseprest1.

  3. #3
    Membre éclairé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juin 2007
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2007
    Messages : 179
    Par défaut re
    merci mais rien ne change,
    voici le code avec l'inclusion dans le while
    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
     
    $requete = "SELECT prestations ,nb, somprest,remprest  FROM tempprest " ; 
    $result = mysql_query ( $requete ) ; 
    echo "<table class=\"texte\" width=\"100%\" border=\"0\" bordercolor=\"#000066\" cellspacing=\"0\" align=\"center\">";
    echo "<tr>";
    echo "<th align=\"left\" bgcolor=\"#DBE8E8\">Prestations</th>";
    echo "<th align=\"center\" bgcolor=\"#DBE8E8\">Quantité</th>";
    echo "<th align=\"right\" bgcolor=\"#DBE8E8\">Total Prest.(€)</th>";
    echo "<th align=\"center\" bgcolor=\"#DBE8E8\">Remise</th>";
    echo "</tr>";
    while($row = mysql_fetch_array($result))
    {
    $colon1="<th align=\"left\">". stripslashes($row['prestations'])."&nbsp;</th>";
    $colon2="<th align=\"center\">". stripslashes($row['nb'])."&nbsp;</th>";
    $colon3="<th align=\"right\">". stripslashes($row['somprest'])." € &nbsp;</th>";
    ?>
    <tr>
    <th align="left"><? echo "$colon1"?> </th>
    <th align="center"><? echo "$colon2" ?> </th>
    <th align="right"><? echo "$colon3" ?></th>
    <th><input name="remiseprest"  type="Text" id="remiseprest1" onchange="majprest(this)" size="5"  style="COLOR : #0000FF; FONT-FAMILY: Verdana; FONT-SIZE: 10pt"></th>
    </tr>
    <?}
    echo "</table>";
    ?>

  4. #4
    Membre expérimenté Avatar de BlackSmith
    Inscrit en
    Mars 2008
    Messages
    181
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Mars 2008
    Messages : 181
    Par défaut
    Essaye avec le code suivant:

    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
    30
     
    <?php 
    $requete = "SELECT prestations ,nb, somprest,remprest  FROM tempprest " ; 
    $result = mysql_query ( $requete ) ; 
    ?>
    <table class="texte" width="100%" border="0" bordercolor="#000066" cellspacing="0" align="center">
    	<tr>
    		<th align="left" bgcolor="#DBE8E8">Prestations</th>
    		<th align="center" bgcolor="#DBE8E8">Quantité</th>
    		<th align="right" bgcolor="#DBE8E8">Total Prest.(€)</th>
    		<th align="center" bgcolor="#DBE8E8">Remise</th>
    	</tr>
    <?php
    $i = 0;
    while($row = mysql_fetch_array($result))
    {
    	?>
    	<tr>
    		<th align="left"><? echo stripslashes($row['prestations'])?> </th>
    		<th align="center"><? echo stripslashes($row['nb']) ?> </th>
    		<th align="right"><? echo stripslashes($row['somprest']) ?></th>
    		<th><input name="remiseprest_<?php echo $i; ?>"  type="Text" 
    id="remiseprest_<?php echo $i; ?>" onchange="majprest(this)" size="5"  
    style="COLOR : #0000FF; FONT-FAMILY: Verdana; FONT-SIZE: 10pt"></th>
    	</tr>
    	<?php
    	$i++;
    }
    ?>
    </table>

  5. #5
    Membre éclairé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juin 2007
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2007
    Messages : 179
    Par défaut re
    il y un PB dans la syntaxe
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    id="remiseprest_<?php echo $i; ?>"
    je travaille dessus de puis une matinée

    voila mon PB
    j'ai une table avec des enregistrements,
    prestation, remise (vaut 0)
    je dois les recupérer
    pour chaque enregistrements je dois saisir une remise
    puis mettre à jour la table

    un plan plus simple peut être

  6. #6
    Membre expérimenté Avatar de BlackSmith
    Inscrit en
    Mars 2008
    Messages
    181
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Mars 2008
    Messages : 181
    Par défaut
    Il n'y a pas de problème dans ma syntaxe sachant qu'il faut un id unique pour chaque input.

  7. #7
    Membre éclairé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juin 2007
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2007
    Messages : 179
    Par défaut re
    OK pour l'id
    c'est linstruction php qui n'est pas reconnue en tant que tel

  8. #8
    Membre éclairé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juin 2007
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2007
    Messages : 179
    Par défaut
    bonjour,
    voici mon code à nouveau

    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
    30
    31
    32
    33
    34
    35
     
    $requete0 = "INSERT INTO tempprest SELECT prestations , COUNT(prestations) AS nb, SUM(prixhtmvt) AS somprest, '0' FROM tempfact1 WHERE client='$pseudo' && datesortie >='$datedeb' && datesortie <='$datefin' && neuf='$neuf' GROUP BY prestations" ; 
    $result0 = mysql_query ( $requete0 ) ;
                                    // selection et affichage des infos
    $requete = "SELECT prestations ,nb, somprest,remprest  FROM tempprest " ; 
    $result = mysql_query ( $requete ) ; 
    echo "<table class=\"texte\" width=\"100%\" border=\"0\" bordercolor=\"#000066\" cellspacing=\"0\" align=\"center\">";
    echo "<tr>";
    echo "<th align=\"left\" bgcolor=\"#DBE8E8\">Prestations</th>";
    echo "<th align=\"center\" bgcolor=\"#DBE8E8\">Quantité</th>";
    echo "<th align=\"right\" bgcolor=\"#DBE8E8\">Total Prest.(€)</th>";
    echo "<th align=\"center\" bgcolor=\"#DBE8E8\">Remise</th>";
    echo "</tr>";
    $i=1;
     
    while($row = mysql_fetch_array($result))
    {
    $vali=strval($i);
    $varremise=sprintf("remiseprest$vali");
    $colon1="<th align=\"left\">". stripslashes($row['prestations'])."&nbsp;</th>";
    $colon2="<th align=\"center\">". stripslashes($row['nb'])."&nbsp;</th>";
    $colon3="<th align=\"right\">". stripslashes($row['somprest'])." € &nbsp;</th>";
    ?>
    <tr>
    <th align="left"><? echo "$colon1"?> </th>
    <th align="center"><? echo "$colon2" ?> </th>
    <th align="right"><? echo "$colon3" ?></th>
    <th><input name='$varremise' type="Text" id='$varremise' onchange="majprest(this)" size="5"  style="COLOR : #0000FF; FONT-FAMILY: Verdana; FONT-SIZE: 10pt"></th>
    </tr>
    <?
    $i++;
    echo $varremise;
    }
    echo "</table>";
    ?>
    ma boucle fonctionne, le nom du champ change dans la boucle,
    le tableau s'affiche correctement,
    mais quand dans le formulaire je saisie dans l'input, mon "onchange" m'envoie bien dans ma fonction mais impossible de recupérer la valeur saisie.
    pour la recupérer j'utilise

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <script type="text/javascript" language="javascript">
    function majprest()
    {
     
    var affich=document.form1.$varremise.value
    alert("valeur de "+affich);
    }
    </script>
    8O

  9. #9
    Membre expérimenté Avatar de BlackSmith
    Inscrit en
    Mars 2008
    Messages
    181
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Mars 2008
    Messages : 181
    Par défaut
    Essaye avec le code js suivant.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <script type="text/javascript" language="javascript">
    function majprest(this)
    {
       var affich=this.value
       alert("valeur de "+affich);
    }
    </script>

  10. #10
    Membre éclairé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juin 2007
    Messages
    179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2007
    Messages : 179
    Par défaut Re:
    merci le bon code est ici

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <script type="text/javascript" language="javascript">
    function majprest()
    {
    var affich=$varremise.value;
    alert("valeur de "+affich);
    }
    </script>
    il me récupère bien la valeur du premier input
    mais quand je saisie dans le deuxième imput, c'est toujours la valeur du premier qui reste.
    faut t'il reinitialiser pourtant le nom de variable $varremise est correct aprés ma boucle puisque j'obtient "remiseprest1remiseprest2remiseprest3remiseprest4remiseprest5remiseprest6"


  11. #11
    Membre confirmé Avatar de nimbus_77
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    109
    Détails du profil
    Informations personnelles :
    Âge : 69
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 109
    Par défaut
    oui mais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    id="remiseprest_<?php echo $i; ?>" onchange="majprest(this)" size="5"  
    style="COLOR : #0000FF; FONT-FAMILY: Verdana; FONT-SIZE: 10pt"></th>
    	</tr>
    	<?php
    	$i++;
    bien, mais c'est du html/javascript/php maintenant ?

    et ensuite :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <script type="text/javascript" language="javascript">
    function majprest()
    {
    var affich=$varremise.value;
    alert("valeur de "+affich);
    }
    Pourquoi ?
    en php tu peux facilement récuperer tes donnees ?

    Je ne suis pas là .

    .

Discussions similaires

  1. [AC-2007] Selectionner une valeur de champs dans un sous formulaire
    Par Florinet dans le forum IHM
    Réponses: 3
    Dernier message: 05/10/2011, 09h27
  2. [PHP 5.3] Récupération valeurs case à cocher dans formulaire e-mail
    Par fidecourt dans le forum Langage
    Réponses: 4
    Dernier message: 08/03/2010, 19h04
  3. Selection de valeur de champs dans des sous formulaires
    Par Hydex dans le forum VBA Access
    Réponses: 5
    Dernier message: 05/06/2007, 15h17
  4. Réponses: 3
    Dernier message: 21/05/2007, 15h31
  5. Masquer champs dans formulaire
    Par Michel Hubert dans le forum Access
    Réponses: 1
    Dernier message: 03/05/2006, 15h23

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