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 :

Code impure & form/variables


Sujet :

PHP & Base de données

  1. #1
    Membre éclairé Avatar de Casio
    Homme Profil pro
    Historien numérique
    Inscrit en
    Novembre 2005
    Messages
    312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Historien numérique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 312
    Par défaut Code impure & form/variables
    Salutations,

    Je galère en ce moment pas mal, n'étant pas du tout un pro. du PHP, sur un code sensé m'aider à déléguer un maximum en interne dans une assos.

    L'idée est de gérer un inventaire de doublons en MySQL sans donner un accès PHPMyAdmin aux membres, mais juste un mini-template-maison avec juste ce qu'il faut remplir.

    J'ai utilisé donc un formulaire HTML avec une action PHP/Variables et ceci fonctionne bien pour l'instant, en deux pages (l'une pour la saisie (saisie.php) et l'autre pour le listing simple (invent-lst.php). De cette manière, ceux qui aide à référencer travaillent à la chaine sur saisie.php et ceux qui veulent juste pointer l'inventaire via invent-lst.php.
    A savoir, que j'ai rajouté aussi un include de invent-lst.php après la saisie d'une fiche (donc dans saisie.php).

    Bref, j'espère me faire comprendre .

    Actuellement voici le code :

    saisie.php :
    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
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    <?php
     
    include 'invent-data.php';
     
    $connexion = mysql_connect("$chemin_db", "$login", "$pass");
    //sélection de la base de données:
    $db  = mysql_select_db( $database ) ;
    $id = "Id";
    $sql = "SELECT * FROM $table";
    $combien = mysql_db_query($database, $sql, $connexion);
    $abo = mysql_num_rows($combien);
    $abos = $abo+1;
    $dispo = "Dispo";
    $type = "Type";
    $etat = "Etat";
    $ref = "Ref";
    $date = "Date";
    $commentaire = "Commentaire";
    $donateur = "Donateur";
    $collection = "Collection";
    $acqui = "Acqui";
    $valorisation = "Valorisation";
    $ecart = "Ecart";
     
    $pageincss = $_GET[page].".php";
     
    // Debug
    // echo $table."<br>";
    // echo $abo."<br>";
     
    // Moteur :
     
    $result_dispo = mysql_query("SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '$table' AND COLUMN_NAME = '$dispo'") or die (mysql_error());
    $row_dispo = mysql_fetch_array($result_dispo);
    $enumList_dispo = explode(",", str_replace("'", "", substr($row_dispo['COLUMN_TYPE'], 5, (strlen($row_dispo['COLUMN_TYPE'])-6))));
    $enumList_com_dispo = explode(",", str_replace("'", "", substr($row_dispo['COLUMN_COMMENT'], 0, (strlen($row_dispo['COLUMN_COMMENT'])))));
     
    $result_type = mysql_query("SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '$table' AND COLUMN_NAME = '$type'") or die (mysql_error());
    $row_type = mysql_fetch_array($result_type);
    $enumList_type = explode(",", str_replace("'", "", substr($row_type['COLUMN_TYPE'], 5, (strlen($row_type['COLUMN_TYPE'])-6))));
    $enumList_com_type = explode(",", str_replace("'", "", substr($row_type['COLUMN_COMMENT'], 0, (strlen($row_type['COLUMN_COMMENT'])))));
     
    $result_etat = mysql_query("SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '$table' AND COLUMN_NAME = '$etat'") or die (mysql_error());
    $row_etat = mysql_fetch_array($result_etat);
    $enumList_etat = explode(",", str_replace("'", "", substr($row_etat['COLUMN_TYPE'], 5, (strlen($row_etat['COLUMN_TYPE'])-6))));
    $enumList_com_etat = explode(",", str_replace("'", "", substr($row_etat['COLUMN_COMMENT'], 0, (strlen($row_etat['COLUMN_COMMENT'])))));
     
    $result_ref = mysql_query("SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '$table' AND COLUMN_NAME = '$ref'") or die (mysql_error());
    $row_ref = mysql_fetch_array($result_ref);
    $enumList_ref = explode(",", str_replace("'", "", substr($row_ref['COLUMN_TYPE'], 5, (strlen($row_ref['COLUMN_TYPE'])-6))));
    $enumList_com_ref = explode(",", str_replace("'", "", substr($row_ref['COLUMN_COMMENT'], 0, (strlen($row_ref['COLUMN_COMMENT'])))));
     
    $result_date = mysql_query("SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '$table' AND COLUMN_NAME = '$date'") or die (mysql_error());
    $row_date = mysql_fetch_array($result_date);
    $enumList_date = explode(",", str_replace("'", "", substr($row_date['COLUMN_TYPE'], 5, (strlen($row_date['COLUMN_TYPE'])-6))));
    $enumList_com_date = explode(",", str_replace("'", "", substr($row_date['COLUMN_COMMENT'], 0, (strlen($row_date['COLUMN_COMMENT'])))));
     
    $result_commentaire = mysql_query("SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '$table' AND COLUMN_NAME ='$commentaire'") or die (mysql_error());
    $row_commentaire = mysql_fetch_array($result_commentaire);
    $enumList_commentaire = explode(",", str_replace("'", "", substr($row_commentaire['COLUMN_TYPE'], 5, (strlen($row_commentaire['COLUMN_TYPE'])-6))));
    $enumList_com_commentaire = explode(",", str_replace("'", "", substr($row_commentaire['COLUMN_COMMENT'], 0, (strlen($row_commentaire['COLUMN_COMMENT'])))));
     
    $result_donateur = mysql_query("SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '$table' AND COLUMN_NAME ='$donateur'") or die (mysql_error());
    $row_donateur = mysql_fetch_array($result_donateur);
    $enumList_donateur = explode(",", str_replace("'", "", substr($row_donateur['COLUMN_TYPE'], 5, (strlen($row_donateur['COLUMN_TYPE'])-6))));
    $enumList_com_donateur = explode(",", str_replace("'", "", substr($row_donateur['COLUMN_COMMENT'], 0, (strlen($row_donateur['COLUMN_COMMENT'])))));
     
    $result_collection = mysql_query("SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '$table' AND COLUMN_NAME ='$collection'") or die (mysql_error());
    $row_collection = mysql_fetch_array($result_collection);
    $enumList_collection = explode(",", str_replace("'", "", substr($row_collection['COLUMN_TYPE'], 5, (strlen($row_collection['COLUMN_TYPE'])-6))));
    $enumList_com_collection = explode(",", str_replace("'", "", substr($row_collection['COLUMN_COMMENT'], 0, (strlen($row_collection['COLUMN_COMMENT'])))));
     
    $result_acqui = mysql_query("SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '$table' AND COLUMN_NAME ='$acqui'") or die (mysql_error());
    $row_acqui = mysql_fetch_array($result_acqui);
    $enumList_acqui = explode(",", str_replace("'", "", substr($row_acqui['COLUMN_TYPE'], 5, (strlen($row_acqui['COLUMN_TYPE'])-6))));
    $enumList_com_acqui = explode(",", str_replace("'", "", substr($row_acqui['COLUMN_COMMENT'], 0, (strlen($row_acqui['COLUMN_COMMENT'])))));
     
    $result_valorisation = mysql_query("SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '$table' AND COLUMN_NAME ='$valorisation'") or die (mysql_error());
    $row_valorisation = mysql_fetch_array($result_valorisation);
    $enumList_valorisation = explode(",", str_replace("'", "", substr($row_valorisation['COLUMN_TYPE'], 5, (strlen($row_valorisation['COLUMN_TYPE'])-6))));
    $enumList_com_valorisation = explode(",", str_replace("'", "", substr($row_valorisation['COLUMN_COMMENT'], 0, (strlen($row_valorisation['COLUMN_COMMENT'])))));
     
    $result_ecart = mysql_query("SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '$table' AND COLUMN_NAME ='$ecart'") or die (mysql_error());
    $row_ecart = mysql_fetch_array($result_ecart);
    $enumList_ecart = explode(",", str_replace("'", "", substr($row_ecart['COLUMN_TYPE'], 5, (strlen($row_ecart['COLUMN_TYPE'])-6))));
    $enumList_com_ecart = explode(",", str_replace("'", "", substr($row_ecart['COLUMN_COMMENT'], 0, (strlen($row_ecart['COLUMN_COMMENT'])))));
    ?>
     
    <form name="saisiedestock" action="saisie.php?page=invent-envoi" method="Post">
     
    <table align="center" style="border:1px solid black;" bordercolor="#000000">
    	<tr align="center" style="border:1px solid black;" bordercolor="#000000">
        	<td title="Num&eacute;ro d'inventaire.">Fiche N&deg;</td>
            <td title="<? foreach($enumList_com_dispo as $comment_dispo) { echo $comment_dispo; } ?>">Dispo.</td>
            <td title="<? foreach($enumList_com_type as $comment_type) { echo $comment_type; } ?>">Type</td>
            <td title="<? foreach($enumList_com_etat as $comment_etat) { echo $comment_etat; } ?>">Etat</td>
            <td title="<? foreach($enumList_com_ref as $comment_ref) { echo $comment_ref; } ?>">Agent</td>
            <td title="<? foreach($enumList_com_date as $comment_date) { echo $comment_date; } ?>">Date</td>
            <td title="<? foreach($enumList_com_commentaire as $comment_commentaire) { echo $comment_commentaire; } ?>">Commentaire</td>
            <td title="<? foreach($enumList_com_donateur as $comment_donateur) { echo $comment_donateur; } ?>">Donateur</td>
            <td title="<? foreach($enumList_com_collection as $comment_collection) { echo $comment_collection; } ?>">Collection</td>
            <td title="<? foreach($enumList_com_acqui as $comment_acqui) { echo $comment_acqui; } ?>">Acqui.</td>
            <td title="<? foreach($enumList_com_valorisation as $comment_valorisation) { echo $comment_valorisation; } ?>">Valorisation</td>
            <td title="<? foreach($enumList_com_ecart as $comment_ecart) { echo $comment_ecart; } ?>">Ecart</td>
            <td title="Insertion de la fiche." bgcolor="#999999"><font color="#FFFFFF">Validation</font></td>
    	</tr>
        <tr align="center" style="border:1px solid black;" bordercolor="#000000">
        	<td>
    		<?php echo $abos; ?>
            </td>
            <td>
            <?php
            echo "<select name=\"$dispo\">";
            foreach($enumList_dispo as $value_dispo) {
                echo "<option ";
    			if( $value_dispo == "Oui" ) echo 'selected="selected"';
    			echo " value=\"$value_dispo\">$value_dispo</option>";
    		}
            echo "</select>";
    		?>
    		</td>
            <td>
            <?php
            echo "<select name=\"$type\">";
            foreach($enumList_type as $value_type) {
                echo "<option ";
    			if( $value_Type == "?" ) echo 'selected="selected"';
    			echo " value=\"$value_type\">$value_type</option>";
    		}
    		echo "</select>";
    		?>
            </td>
            <td>
            <?php
            echo "<select name=\"$etat\">";
            foreach($enumList_etat as $value_etat) {
                echo "<option ";
    			if( $value_etat == "?" ) echo 'selected="selected"';
    			echo " value=\"$value_etat\">$value_etat</option>";
            }
    		echo "</select>";
    		?>
            </td>
            <td>
            <?php
            echo "<select name=\"$ref\">";
            foreach($enumList_ref as $value_ref) {
                echo "<option ";
    			if( $value_ref == "?" ) echo 'selected="selected"';
    			echo " value=\"$value_ref\">$value_ref</option>";
            }
    		echo "</select>";
    		?>
            </td>
            <td>
            <?php
            foreach($enumList_date as $value_date) {
                echo "<TEXTAREA name=\"$date\" value=\"$value_date\" rows=\"2\" cols=\"10\">".date('Y-m-d H:i:s')."</TEXTAREA>";
    		}
    		?>
            </td>
            <td>
            <?php
            foreach($enumList_commentaire as $value_commentaire) {
                echo "<TEXTAREA name=\"$commentaire\" value=\"$value_commentaire\" rows=\"2\" cols=\"20\">$value_commentaire</TEXTAREA>";
            }
    		?>
            </td>
            <td>
            <?php
            foreach($enumList_donateur as $value_donateur) {
                echo "<TEXTAREA name=\"$donateur\" value=\"$value_donateur\" rows=\"2\" cols=\"15\">?</TEXTAREA>";
            }
    		?>
            </td>
            <td>
            <?php
    		echo "<select name=\"$collection\">";
            foreach($enumList_collection as $value_collection) {
                echo "<option ";
    			if( $value_collection == "WDA" ) echo 'selected="selected"';
    			echo " value=\"$value_collection\">$value_collection</option>";
    		}
    		echo "</select>";
            ?>
            </td>
            <td>
            <?php
    		echo "<select name=\"$acqui\">";
            foreach($enumList_acqui as $value_acqui) {
                echo "<option ";
    			if( $value_acqui == "Don" ) echo 'selected="selected"';
    			echo " value=\"$value_acqui\">$value_acqui</option>";
    		}
    		echo "</select>";
            ?>
            </td>
            <td>
            <?php
    		echo "<select name=\"$valorisation\">";
            foreach($enumList_valorisation as $value_valorisation) {
                echo "<option ";
    			if( $value_valorisation == "Oui" ) echo 'selected="selected"';
    			echo " value=\"$value_valorisation\">$value_valorisation</option>";
    		}
    		echo "</select>";
            ?>
            </td>
            <td>
            <?php
    		echo "<select name=\"$ecart\">";
            foreach($enumList_ecart as $value_ecart) {
                echo "<option ";
    			if( $value_ecart == "Non" ) echo 'selected="selected"';
    			echo " value=\"$value_ecart\">$value_ecart</option>";
    		}
    		echo "</select>";
            ?>
            </td>
            <td bgcolor="#999999"><input value="<=- OK !" type="submit" border="0" name="action"></form></td>
    	</tr>
    </table>
     
    <br /><br />
     
    <table align="center" border="0" width="90%">
    	<tr>
        	<td align="center">
    		<?
            //test si page est vide vers affichage wda
            if($_GET['page'] == ""){ echo "<br /><br /><br /><div aligne=\"center\"><b>Remplir le formulaire ci-dessus !</b></div><br /><br /><div align=\"Right\"><font size=\"-1\">Connect&eacute; en tant que : <font color=\"#990000\">".$_SERVER["REDIRECT_REMOTE_USER"]."</font></font></div>"; }
     
            //test page non vide et existante
            if (file_exists($pageincss)) { include"$pageincss"; }
            ?>
            </td>
    	</tr>
    </table>
    invent-envoi.php :
    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
    <?php
     
    include 'invent-data.php';
     
    // Passage de la mise en variable compatible PHP5
    $dispo = $_POST['Dispo'];
    $type = $_POST['Type'];
    $etat = $_POST['Etat'];
    $ref = $_POST['Ref'];
    $date = $_POST['Date'];
    $commentaire = $_POST['Commentaire'];
    $donateur = $_POST['Donateur'];
    $collection = $_POST['Collection'];
    $acqui = $_POST['Acqui'];
    $valorisation = $_POST['Valorisation'];
    $ecart = $_POST['Ecart'];
    // Debug
    //echo $type;
    //echo $table;
    // Fin de mise en variable PHP5
     
    $connexion = mysql_connect("$chemin_db" , "$login" , "$pass");
    $sql = "SELECT * FROM $table";
    $combien = mysql_db_query($database, $sql, $connexion);
    $abo = mysql_num_rows($combien);
    $abos = $abo+1;
     
    mysql_select_db($database , $connexion);
    $sqlcheck = "SELECT * FROM $table where Type='$type' and Ref='$ref' and Commentaire='$commentaire'";
    $result = mysql_db_query($database, $sqlcheck, $connexion);
    $compte_lignes = mysql_num_rows($result);
    if($compte_lignes == 1):
    	?>
    		<b>Le lot "<font color="#CC0000"><? echo $type; ?></font> <font color="#CC0000"><? echo $etat; ?>"</font> donn&eacute; par "<font color="#CC0000"><? echo $donateur; ?></font>" et r&eacute;f&eacute;ren&ccedil;&eacute; par "<font color="#CC0000"><? echo $ref; ?></font>" pour la collection "<font color="#CC0000"><? echo $collection; ?></font>" est d&eacute;j&agrave; inscrite dans la base '<font color="#CC0000"><? echo $table; ?></font>' !</b><br /><br />
    		<strong>R&eacute;-&eacute;ssayez SvP !</strong><br /><br /><br />
    		<a href="http://wda-fr.org"><img alt="WDA." src="/pict/wda.gif" border="0"></a><br /></p></div>
    	<?php
    else:
     
    // Contenu et traitement
     
    // Insertion SQL
    $sql2 = "INSERT INTO $table (Dispo, Type, Etat, Ref, Date, Commentaire, Donateur, Collection, Acqui, Valorisation, Ecart) VALUES ('$dispo','$type','$etat','$ref','$date','$commentaire','$donateur','$collection','$acqui','$valorisation','$ecart')";
    mysql_query($sql2);
    ?>
    <div class="index">
    <p>Le lot "<font color="#CC0000"><? echo $type; ?></font> <font color="#CC0000"><? echo $etat; ?></font>" donn&eacute; par "<font color="#CC0000"><? echo $donateur; ?></font>" et r&eacute;f&eacute;ren&ccedil;&eacute; par "<font color="#CC0000"><? echo $ref; ?></font>" pour la collection "<font color="#CC0000"><? echo $collection; ?></font>" est inscrit &agrave; pr&eacute;sent dans la base '<font color="#CC0000"><? echo $table; ?></font>'.<br />
    Nombre de lots inventori&eacute; &agrave;s ce jour : <b><font color="#CC0000"><? echo $abos ?></font></b><br /><br />Merci !<br /><br />
    <a href="saisie.php"><strong>-=> Nouvelle insertion <=-</strong></a><br /></p></div>
     
    <?php
    endif;
     
    mysql_close($connexion);
     
    include 'invent-lst.php';
    ?>
    Et la troisième page qui liste le contenu :
    invent-lst.php :
    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
    <style type="text/css">
    	.couleur1 {
    		background-color: #F7F7F7;
    	}
     
    	.couleur2 {
    		background-color: #D1EDC5;
    	}
    	.couleur3 {
    		background-color: #F66;
    	}
    </style>
     
    <?php
     
    include 'invent-data.php';
     
    $connexion = mysql_connect("$chemin_db", "$login", "$pass");
    $sql = "SELECT * FROM $table";
    $combien = mysql_db_query($database, $sql, $connexion);
    $abo = mysql_num_rows($combien);
    $abos = $abo+1;
    $id = "Id";
    $dispo = "Dispo";
    $type = "Type";
    $etat = "Etat";
    $ref = "Ref";
    $date = "Date";
    $commentaire = "Commentaire";
    $donateur = "Donateur";
    $collection = "Collection";
    $acqui = "Acqui";
    $valorisation = "Valorisation";
    $ecart = "Ecart";
     
    $pageincss = $_GET[page].".php";
     
    // Moteur :
     
    $select = "SELECT * FROM $table WHERE `Dispo` <> 'Non' ORDER BY $id"; // Recherche des catégories APRES verification de l'inventaire
    $result = mysql_query($select) or die ('Erreur : '.mysql_error() );
    $req = mysql_query($select) or die('Erreur SQL !<br />'.$select.'<br />'.mysql_error());
    ?>
     
    <div align="center"><font size="+1">Inventaire en date du : </font><font color="#FF0000"><strong><? echo date('Y-m-d'); ?></strong></font></div><br />
     
    <table align="center" style="border:1px solid black;" bordercolor="#000000">
    	<tr align="center" style="border:1px solid black;" bordercolor="#000000" bgcolor="#CCCCCC">
        	<td><strong>ID</strong></td>
            <td><strong>Dispo.</strong></td>
            <td><strong>Type</strong></td>
            <td><strong>Etat</strong></td>
            <td><strong>Agent</strong></td>
            <td><strong>Date</strong></td>
            <td><strong>Commentaire</strong></td>
            <td><strong>Donateur</strong></td>
            <td><strong>Collection</strong></td>
            <td><strong>Acqui.</strong></td>
            <td><strong>Valorisation</strong></td>
            <td><strong>Ecart</strong></td>
            <td></td>
    	</tr>
    	<?php
        // On fait une boucle qui va faire un tour pour chaque enregistrement
        $i = 0;
        while($data = mysql_fetch_assoc($req))
            {
    		?>
            <tr align="center" style="border:1px solid black;" bordercolor="#000000" <?php if($data['Ecart'] == "Oui") { echo "class=\"couleur3\""; $i = (($i++%2)+1); } else { echo "class=\"couleur".(($i++%2)+1)."\""; } ?>>
                <td><?php echo htmlspecialchars($data['Id']); ?></td>
                <td><?php echo htmlspecialchars($data['Dispo']); ?></td>
                <td><?php echo htmlspecialchars($data['Type']); ?></td>
                <td><?php echo htmlspecialchars($data['Etat']); ?></td>
                <td><?php echo htmlspecialchars($data['Ref']); ?></td>
                <td><?php echo htmlspecialchars($data['Date']); ?></td>
                <td align="left"><?php echo htmlspecialchars($data['Commentaire']); ?></td>
                <td><?php echo htmlspecialchars($data['Donateur']); ?></td>
                <td><?php echo htmlspecialchars($data['Collection']); ?></td>
                <td><?php if($data['Acqui'] == "Achat") { echo "<font color=\"#990000\">".htmlspecialchars($data['Acqui'])."</font>"; } else { echo htmlspecialchars($data['Acqui']); } ?></td>
                <td><?php if($data['Valorisation'] == "Oui") { echo "<img src=\"http://wda-fr.org/test/SQL/Destock/dollars.png\" title=\"Oui\" border=\"0\""; } else { echo htmlspecialchars($data['Valorisation']); } ?></td>
                <td><?php echo htmlspecialchars($data['Ecart']); ?></td>
                <td><?php echo "<a href=\"modif.php?idFiche=".$data['Id']."\">Modifier</a>"; ?></td>
            </tr>
    		<?php 
            } 
        	?>
    	<tr>
        	<td colspan="10" align="right"><em>Nombre d'enrengistrements : <font color="#FF0000"><strong><? echo $abo; ?></strong></font> !</em></td>
    </table>
     
    <br /><br />
     
    <?php
    mysql_close($connexion);
    ?>
    Bon, je sais, c'est moche, redondant et loin d'être optimisé, mais, pour ma défense, prenez juste en considération que je suis un gros newbie. [smile]

    Mes questions :
    1/ Le code est-il réellement immonde ? Si oui, comment l'optimiser ?
    2/ Je souhaite y rajouter la possibilité via invent-lst.php de supprimer un enregistrement (ou tout du moins modifier le contenu du champ 'Dispo'. de 'Oui' à 'Non') juste en cliquant sur un lien 'Supprimer' à chaque fin de ligne du listing de invent-lst.php ou, au mieux, de pouvoir ré-éditer la fiche via saisie.php ou une nouvelle page nommée modif.php (tests en cours actuellement comme vous pouvez le voir dans le code). Mais je n'arrive pas à grand chose car les champs ne prennent pas les bonnes variables... [decu] Et vu le bordel de l'ensemble, je me dis qu'il faudrait peut-être commencer par faire un peu de ménage.
    3/ Question subsidiaire : On me parle d'une évolution à venir du PHP en PDO (?!?), et du coup, je me demande si cela ne peut pas être initié maintenant, mais vu déjà que je ne connais rien au PHP (voir l'ampleur des dégâts ci-haut), est-ce vraiment raisonnable, surtout en se basant sur le concept que je suis hébergé chez 1and1 qui sont un peu en retard généralement ?

    Bref, tout avis bienvenu

    A vous lire,

  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
    1 - Je pense que tu as enfreint le principe de base qui est de "faire simple"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $commentaire = "Commentaire";
    Tu gères un petit developpement en interne : il n'a ni besoin de pouvoir être personnalisé ni de pouvoir subir de grosses évolutions.
    Tu n'as donc pas besoin d'avoir les noms des colonnes en variable.
    Toutes ces variables en moins, ca t'apportera de la lisibilité dans ton code.

    En parlant de lisibilité, indente proprement ton code. Cela permet de voir tout de suite les enchainements logiques.

    Pour les parties répétitives, pense "fonction".
    On le voit bien sur tes <select> puisque tu as mis des variables partout : c'est toujour la même chose avec 2 noms qui changent.
    Ca donc donc une fonction avec 2 paramètres.

    Quel est le but de ces pâtés ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $result_donateur = mysql_query("SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '$table' AND COLUMN_NAME ='$donateur'") or die (mysql_error());
    $row_donateur = mysql_fetch_array($result_donateur);
    $enumList_donateur = explode(",", str_replace("'", "", substr($row_donateur['COLUMN_TYPE'], 5, (strlen($row_donateur['COLUMN_TYPE'])-6))));
    $enumList_com_donateur = explode(",", str_replace("'", "", substr($row_donateur['COLUMN_COMMENT'], 0, (strlen($row_donateur['COLUMN_COMMENT'])))));
    Au passage
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    substr($row_donateur['COLUMN_COMMENT'], 0, (strlen($row_donateur['COLUMN_COMMENT']))
    de 0 à la taille de la chaine, c'est la chaine entière non ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    substr($row_donateur['COLUMN_TYPE'], 5, (strlen($row_donateur['COLUMN_TYPE'])-6)))
    substr() permet des découpage dans le sens inverse (voir la doc)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    substr($row_donateur['COLUMN_TYPE'], 5, -6)
    2 - le principe est simple :
    - un lien avec l'id passé en paramètre pagesuppression.php?id=5656
    - et dans pagesuppression.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if (isset($_GET['id'])) {
            mysql_query('DELETE FROM tatable WHERE tonid = ' .intval($_GET['id']);
    }
    c'est tout.

    3 - PDO est déjà la mais il ne t'aidera pas a avoir un code plus propre.

    Et pour finir, quand tu ecris un message sur plusieurs forums, pense à adapter les codes spécifiques.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre éclairé Avatar de Casio
    Homme Profil pro
    Historien numérique
    Inscrit en
    Novembre 2005
    Messages
    312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Historien numérique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 312
    Par défaut
    Merci de ce retour ;-)

    Citation Envoyé par sabotage Voir le message
    (...)Tu gères un petit developpement en interne : il n'a ni besoin de pouvoir être personnalisé ni de pouvoir subir de grosses évolutions.
    Tu n'as donc pas besoin d'avoir les noms des colonnes en variable.
    Toutes ces variables en moins, ca t'apportera de la lisibilité dans ton code.

    (...)

    Quel est le but de ces pâtés ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $result_donateur = mysql_query("SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '$table' AND COLUMN_NAME ='$donateur'") or die (mysql_error());
    $row_donateur = mysql_fetch_array($result_donateur);
    $enumList_donateur = explode(",", str_replace("'", "", substr($row_donateur['COLUMN_TYPE'], 5, (strlen($row_donateur['COLUMN_TYPE'])-6))));
    $enumList_com_donateur = explode(",", str_replace("'", "", substr($row_donateur['COLUMN_COMMENT'], 0, (strlen($row_donateur['COLUMN_COMMENT'])))));
    (...)
    L'idée est de sortir les commentaires des champs SQL pour les rajouter en <title> dans le formulaire. En gros, ne pas faire 36.000 modifs (SQL + PHP) à chaque fois et s'appuyer pour du plus pérenne sur la base SQL.
    Les bénévoles qui remplissent le formulaire ne savent plus forcement ce que veux dire tel ou tel champs.
    En effet, si une soluce existe pour sortir les commentaires sans cette routine lourde et rebarbative...

    Citation Envoyé par sabotage Voir le message
    (...)
    Au passage
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    substr($row_donateur['COLUMN_COMMENT'], 0, (strlen($row_donateur['COLUMN_COMMENT']))
    de 0 à la taille de la chaine, c'est la chaine entière non ?
    (...)
    Méa culpa... A force des faire des copiés/collés des codes trouvés et ne pas y réfléchir en reverse-ingeneering, je me retrouve à faire de la logique pure.

    Citation Envoyé par sabotage Voir le message
    (...)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    substr($row_donateur['COLUMN_TYPE'], 5, (strlen($row_donateur['COLUMN_TYPE'])-6)))
    substr() permet des découpage dans le sens inverse (voir la doc)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    substr($row_donateur['COLUMN_TYPE'], 5, -6)
    (...)
    Ca ne marche pas. Cela me donne des champs vides ou incomplets sur les 3/4 des variables.

    Citation Envoyé par sabotage Voir le message
    (...)
    2 - le principe est simple :
    - un lien avec l'id passé en paramètre pagesuppression.php?id=5656
    - et dans pagesuppression.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if (isset($_GET['id'])) {
            mysql_query('DELETE FROM tatable WHERE tonid = ' .intval($_GET['id']);
    }
    c'est tout.
    (...)
    Je vais checker...

    Citation Envoyé par sabotage Voir le message
    (...)
    3 - PDO est déjà la mais il ne t'aidera pas a avoir un code plus propre.

    Et pour finir, quand tu écris un message sur plusieurs forums, pense à adapter les codes spécifiques.
    Hummm, comme je ne sais pas vraiment ce que c'est, je risque de me trouver confronter à ce pb bien rapidement si mon code global est récupéré à droite à gauche...

    Désolé pour le double-post, j'avais en effet posté cela initialement sur Alsa-Créations, mais à part me faire ridiculiser, je n'ai eu aucun retours constructifs chez eux.

  4. #4
    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
    Je ne vois pas l'avantage d'utiliser le commentaire des colonnes mysql.
    Pour moi les informations que tu dois fournir à l'utilisateur font partie de l'interface, pas de la base de données.

    Tu peux continuer comme tu le fais mais simplifie le, en recuperant tous les commentaires dans une seule requête par exemple.
    Pour ton "-6" je suppose qu'il sert à enlever la partie entre parenthèses dans le type de colonne ... mais du coup ça marche pour "varchar(32)" mais pas pour "bigint(21) unsigned" par exemple.
    sinon ça serait substr($row_donateur['COLUMN_TYPE'], 0, -4) par rapport à ce que je t'avais dit.
    Moi je pense que l'utilisateur n'a pas besoin d'avoir cette information.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre éclairé Avatar de Casio
    Homme Profil pro
    Historien numérique
    Inscrit en
    Novembre 2005
    Messages
    312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Historien numérique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 312
    Par défaut
    Citation Envoyé par sabotage Voir le message
    Je ne vois pas l'avantage d'utiliser le commentaire des colonnes mysql.
    Pour moi les informations que tu dois fournir à l'utilisateur font partie de l'interface, pas de la base de données.
    (...)
    Moi je pense que l'utilisateur n'a pas besoin d'avoir cette information.
    L'idée est juste de centraliser ce qu'il à à sauvegarder sur le SQL, et non sur le PHP. Y compris les commentaires de guide de saisie. Cela pour éviter d'avoir à recopier cela en SQL et en PHP. Sans compter qu'a chaque modif. on risque de ne pas le changer correctement des deux cotés et cela peut induire en erreur l'agent d'inventaire. Nop ? Une autre idée ?

    Citation Envoyé par sabotage Voir le message
    (...)
    Tu peux continuer comme tu le fais mais simplifie le, en recuperant tous les commentaires dans une seule requête par exemple.
    (...)
    Je comprends la que tu me parle de la partie initialement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    (...)
    $result_dispo = mysql_query("SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '$table' AND COLUMN_NAME = '$dispo'") or die (mysql_error());
    $row_dispo = mysql_fetch_array($result_dispo);
    $enumList_dispo = explode(",", str_replace("'", "", substr($row_dispo['COLUMN_TYPE'], 5, (strlen($row_dispo['COLUMN_TYPE'])-6))));
    $enumList_com_dispo = explode(",", str_replace("'", "", substr($row_dispo['COLUMN_COMMENT'], 0, (strlen($row_dispo['COLUMN_COMMENT'])))));
     
    $result_type = mysql_query("SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '$table' AND COLUMN_NAME = '$type'") or die (mysql_error());
    $row_type = mysql_fetch_array($result_type);
    $enumList_type = explode(",", str_replace("'", "", substr($row_type['COLUMN_TYPE'], 5, (strlen($row_type['COLUMN_TYPE'])-6))));
    $enumList_com_type = explode(",", str_replace("'", "", substr($row_type['COLUMN_COMMENT'], 0, (strlen($row_type['COLUMN_COMMENT'])))));
    (...)
    Mais je ne sais absolument pas comment concaténer cela. En le faisant, je pensait bien qu'il y avait un moyen , mais je n'ai pas trop compris la nomenclature.

    Pour les :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    (...)
    substr($row_donateur['COLUMN_TYPE'], 0, -4)
    (...)
    J'ai commencé le réglage champs par champs en y allant caractères par caractères..., merci...

    L'idée de base était vraiment que le contenu des champs SQL, le nom des champs ET leur commentaire soient tous regroupées sur la base SQL.

    Je vais essayer demain matin de continuer la mise en page et de bosser sur le champs de suppression de fiches. A ce sujet, comment faire plutôt qu'une suppression une modification de valeurs ? En gros, au lieu de supprimer la fiche, la passe dans le champ "Dispo" de "Oui" à "Non" en cliquant sur un "modifier" ?

    Merci de ton aide...

  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
    Ce que je disais c'est que le commentaire dans l'interface va être un guide d'utilisation comme "Saisir le truc qui fait le bidule sauf si blablabla".
    Ce qui n'a plus de rapport avec la base de données.

    Pour tout avoir d'un coup :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    $result = mysql_query("SELECT COLUMN_NAME, COLUMN_TYPE,  COLUMN_COMMENTFROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '$table'");
    while ($row_dispo = mysql_fetch_array($result)) {
     
    $type = explode("(",  $row_dispo['COLUMN_TYPE']);
     
    $tblInfoColum[$row['COLUMN_NAME']] = array(
       'type'=>$type[0],
       'comment'=> $row_dispo['COLUMN_COMMENT']
    );
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<td title="' . $tlbInfoColumn['Dispo']['comment'] . '">Dispo.</td>
    Par contre je n'ai pas compris ce que tu faisais ensuite avec le type de colonne dans un liste <select>.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Membre éclairé Avatar de Casio
    Homme Profil pro
    Historien numérique
    Inscrit en
    Novembre 2005
    Messages
    312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Historien numérique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 312
    Par défaut
    Merci de ton aide.

    En mettant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    $result = mysql_query("SELECT COLUMN_NAME, COLUMN_TYPE, COLUMN_COMMENTFROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '$table'");
    while ($row_dispo = mysql_fetch_array($result)) {
     
    $type = explode("(",  $row_dispo['COLUMN_TYPE']);
     
    $tblInfoColum[$row['COLUMN_NAME']] = array(
       'type'=>$type[0],
       'comment'=> $row_dispo['COLUMN_COMMENT']
    );
    }
    En test quelque part et en l'appelant via une table :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    -- Test :
     
    <table>
    <tr>
    <?php
    echo '<td title="' . $tblInfoColum['Dispo']['comment'] . '">1</td>';
    echo '<td title="' . $tblInfoColum['Commentaire']['comment'] . '">2</td>';
    ?>
    </tr>
    </table>
    Il me sort :
    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in saisie.php on line 103
    Et cela ne semble donc pas fonctionner (aucun title).

    Faute de frappe ?

  8. #8
    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
    Il manque un espace avant le "FROM"
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  9. #9
    Membre éclairé Avatar de Casio
    Homme Profil pro
    Historien numérique
    Inscrit en
    Novembre 2005
    Messages
    312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Historien numérique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 312
    Par défaut
    Citation Envoyé par sabotage Voir le message
    Il manque un espace avant le "FROM"
    Merci, en effet, j'avais mis du temps à trouver l'erreur, mais j'avais réussi à rajouter un espace.

    Il n'en reste pas moins, bien que le message d'erreur soit parti, que cela n'affiche rien. en regardant le code source rendu, le title du TD est vide.

    Any idea ?

  10. #10
    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
    debug :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var_dump($tblInfoColum);
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  11. #11
    Membre éclairé Avatar de Casio
    Homme Profil pro
    Historien numérique
    Inscrit en
    Novembre 2005
    Messages
    312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Historien numérique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 312
    Par défaut
    array(1) { [""]=> array(2) { ["type"]=> string(4) "enum" ["comment"]=> string(28) "Lot mis en écart temporaire." } }

  12. #12
    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
    petite faute :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $tblInfoColum[$row_dispo['COLUMN_NAME']] = array(
       'type'=>$type[0],
       'comment'=> $row_dispo['COLUMN_COMMENT']
    );
    Quand tu developpes, règles bien ton serveur pour qu'il affiche toutes les erreurs.
    Ca evite de passer trop de temps sur des erreurs comme ça.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  13. #13
    Membre éclairé Avatar de Casio
    Homme Profil pro
    Historien numérique
    Inscrit en
    Novembre 2005
    Messages
    312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Historien numérique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 312
    Par défaut
    Nickel, cela fonctionne à présent...
    Et pour être sur d'avoir compris, la cela m'affiche donc le champs des commentaires sans pb, mais si je veux dans un autre TD afficher le contenu en plus ?

    Citation Envoyé par sabotage Voir le message
    (...)Quand tu developpes, règles bien ton serveur pour qu'il affiche toutes les erreurs.
    Ca evite de passer trop de temps sur des erreurs comme ça.
    Je suis chez 1and1, en mutualisé, je doute de pouvoir faire cela...

  14. #14
    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
    Le contenu de quoi ?

    Pour les erreurs ça peut se définir dans le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    error_reporting(E_ALL);
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  15. #15
    Membre éclairé Avatar de Casio
    Homme Profil pro
    Historien numérique
    Inscrit en
    Novembre 2005
    Messages
    312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Historien numérique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 312
    Par défaut
    Citation Envoyé par sabotage Voir le message
    Le contenu de quoi ?
    (...)
    Le contenu de la table. La, cela m'affiche donc le commentaire des colonnes, si je veux aussi le contenu comprenant mes données ?

  16. #16
    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
    Il te faut une requête SELECT sur la table et une boucle pour tout afficher.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  17. #17
    Membre éclairé Avatar de Casio
    Homme Profil pro
    Historien numérique
    Inscrit en
    Novembre 2005
    Messages
    312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Historien numérique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 312
    Par défaut
    Oki, donc pour ça, j'utilise mon ancien code ?

  18. #18
    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
    je ne vois pas quelle partie dans ton code recupère les valeurs dans la table.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  19. #19
    Membre éclairé Avatar de Casio
    Homme Profil pro
    Historien numérique
    Inscrit en
    Novembre 2005
    Messages
    312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Historien numérique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 312
    Par défaut
    Je parle simplement du contenu de mes formulaires.

  20. #20
    Membre éclairé Avatar de Casio
    Homme Profil pro
    Historien numérique
    Inscrit en
    Novembre 2005
    Messages
    312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Historien numérique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 312
    Par défaut
    Par ex :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $tblInfoColum[$row_dispo['COLUMN_NAME']] = array(
       'type'=>$var[0],
       'comment'=> $row_dispo['COLUMN_COMMENT'],
       'var2'=> $row_dispo['COLUMN_TYPE']
    );
    }
    A t'il des chances de fonctionner ?
    J'essaye depuis 2 hrs, mais a part reprendre mon ancien code, je ne sais comment ressortir mes données champs par champs.

Discussions similaires

  1. Réponses: 7
    Dernier message: 11/03/2007, 09h35
  2. [Forms]Variable global en oracle form
    Par Sabact dans le forum Forms
    Réponses: 6
    Dernier message: 03/11/2006, 14h31
  3. Request.form + variable
    Par Phenomenium dans le forum ASP
    Réponses: 2
    Dernier message: 17/10/2006, 14h21
  4. [MySQL] code php dans une variable chaine php
    Par unmulot dans le forum PHP & Base de données
    Réponses: 13
    Dernier message: 11/07/2006, 10h48
  5. Mettre un code php dans une variable...
    Par kedare dans le forum Langage
    Réponses: 6
    Dernier message: 19/09/2005, 12h55

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