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

Langage PHP Discussion :

Récupération de données


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Novembre 2006
    Messages
    124
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 124
    Par défaut Récupération de données
    salut

    voila avec un script j'appelle des données d'une base sql et à certaines données
    j'ajoute un <input type=text name = > pour pourvoir entrer une nouvelle valeur

    Le tout dans un form

    donc j' incremente le name avec ma boucle


    et qd j'envois les données (post)

    je n'arrive pas a récupérer les données


    script appeldata


    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
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    <?php
    /**
     *
     *
     * @version $Id$
     * @copyright 2008
     */
    
    // recupération des data
    
    $sn = $_POST['sn'];
    $table = $_POST['listeproduit'];
    
    //selection de la table
    
    
    
    
    // on se connecte à MySQL
    $db = mysql_connect('localhost', 'login', 'pass');
    
    // on sélectionne la base
    mysql_select_db('base',$db);
    
    
    //récupération des nom de colonnes
    
    $fields=mysql_list_fields("base",$table);//récupère tout les champs d'un table
    $columns=mysql_num_fields($fields);// récupère le nombre de champs d'un table
    
    for($i=0;$i<$columns;$i++)
    {
    $col[$i] = mysql_field_name($fields,$i);
    
    }
    
    $sql = "SELECT * FROM `".$table."` WHERE Serial_Number = '".$sn."'";
    
    
    // on envoie la requête
    $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
    
    ?>
    
    <FORM Method="POST" Action="modifdata.php">
    
    <table >
    
    <?php
    
    while($data = mysql_fetch_assoc($req))
    
    {
        // on affiche les informations de l'enregistrement en cours
    
    for ($i=1; $i<$columns-2; ++$i)
    	{
    ?>
    
    <TR>
    <th align=left><?php echo $col[$i]; ?>  </th>
    <th> : &nbsp; </th>
    <th align=left><?php echo $data[$col[$i]]; ?></th>
    <th><?php if ($i>6)
    		{
    ?>
    <input type=text name=val<?php echo $i ; ?> >
    
    </th>
    
    <?php
    		}
    ?>
    </TR>
    <?php
    
    	}
    
    }
    
    
    ?>
    
    </table>
    
    
    <input type=hidden name=col value=<?php echo $columns ; ?>>
    <input type=hidden name=table value=<?php echo $table ; ?>>
    
    <INPUT type=submit value=Envoyer>
    
    
    </form>
    
    <?php
    
    mysql_close();
    
    ?>


    le script modifdata qui essaie de récupérer les data


    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
    <table>
     
    <?php
     
        // on affiche les informations de l'enregistrement en cours
     
    $table = $_POST['table'];
     
    $columns = $_POST['col'];
     
    echo $table;
    echo $columns;
     
     
    for ($i=7; $i<$columns-2; ++$i)
    	{
     
    $val[$i] = $_post[val.$i];
     
    echo val.$i;
     
    echo $val[$i];
     
    	}
     
     
    ?>

    $table et $ columns marche



    plz helpme


    bonne journée

  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
    Attention aux majuscules
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $val[$i] = $_POST[val.$i];
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre confirmé
    Inscrit en
    Novembre 2006
    Messages
    124
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 124
    Par défaut
    salut

    merci pour ta réponse

    çà marche


    merci



    ++

  4. #4
    Membre confirmé
    Inscrit en
    Novembre 2006
    Messages
    124
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 124
    Par défaut
    petite question secondaire toujours sur le meme script


    j'ai ajouté la récupération de la variable
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input type=hidden name=col<?php echo $i ; ?> value=<?php echo $col[$i]; ?>>
    ce sont en faite le nom des colonnes de la table


    donc ca marche mais comme les nom de mais colonnes on des espace

    il ne me fait apparaitre que la première lettre du nom


    la je sais pas du tout pour quoi


    j'avais déjà rencontré ce pb sur d'autre table que j'avais résolu en mettant un underscore a la place de l'espace mais la j'ai besoin de garder le nom comme il est.


    Merci pour l'aide


    bonne journée

  5. #5
    Membre confirmé
    Inscrit en
    Novembre 2006
    Messages
    124
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 124
    Par défaut
    salut

    bon j'ai fait un essaie de remplacer l'espace par un _ avec str_repace

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input type=hidden name=col<?php echo $i ; ?> value=<?php echo str_replace(" ", "_", $col[$i]); ?>>
    mais je n'ai toujours que la premiere lettre

    donc je suis plus sur que se soit l'espace qui gene



    je précise c'est nom de colonne je l'ai récupére bien dans le premier script appeldata

    mais je n'arrive pas a les envoyer dans le second

    ++

  6. #6
    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
    En HTML, les paramètres sont encadrés de guillemets.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="hidden" name="col<?php echo $i ; ?>" value="<?php echo $col[$i]; ?>" />
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

Discussions similaires

  1. Réponses: 4
    Dernier message: 05/04/2004, 10h09
  2. Réponses: 2
    Dernier message: 20/02/2004, 08h47
  3. [ DB2] => [ORACLE] Récupération de données
    Par LeDid dans le forum DB2
    Réponses: 3
    Dernier message: 25/06/2003, 17h10
  4. Réponses: 13
    Dernier message: 20/03/2003, 08h11
  5. [XMLRAD] récupération de donnée
    Par Mitch79 dans le forum XMLRAD
    Réponses: 7
    Dernier message: 30/01/2003, 15h36

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