Afficher résultats base mysql -> tableau html horizontal
Bonjour,
Comment afficher les données d'une base mysql dans un tableau html sous la forme suivante :
* le tableau possède 2 lignes et 4 colonnes
* si toutes les données de ma base mysql ne rentrent pas toutes dans le 1er tableau html, alors un autre tableau se forme dessous le 1er avec toujours 2 lignes et 4 colonnes
Voici mon code php :
Code:
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
| <?php
echo '<div class="parameter1">';
echo '<div style="float:left"><strong>';
echo JText::_( 'CATEGORY' );
if ($db->f("parameter_description" )) {
echo " ";
echo mm_ToolTip($par_tran->parameter_description,$VM_LANG->_('PHPSHOP_PRODUCT_TYPE_PARAMETER_FORM_DESCRIPTION'));
}
echo " :</strong></div>";
$dropdown->render_control('',' name="category_id"');
echo '</div>';
$q = "SELECT * FROM #__{vm}_product_type_parameter ";
$q .= "WHERE product_type_id=$product_type_id ";
$q .= "ORDER BY parameter_list_order";
$db->setQuery($q);
$records = $db->_database->loadObjectList('');
// show list of parameters
echo "\n\n<!-- Default list of parameters - BEGIN -->\n";
foreach ($records as $field_num => $par_orig){
$par_tran = $records[$field_num];
if (in_array($par_orig->parameter_name,$skipparameter))
continue;
echo '<div class="parameter1">';
$parameter_type = $par_orig->parameter_type;
if ($parameter_type!="B" ) {
echo '<div style="float:left"><strong>';
echo $par_tran->parameter_label;
if ($db->f("parameter_description" )) {
echo " ";
echo mm_ToolTip($par_tran->parameter_description,$VM_LANG->_('PHPSHOP_PRODUCT_TYPE_PARAMETER_FORM_DESCRIPTION'));
}
echo " :</strong></div>";
$parameter_values= $par_orig->parameter_values;
$parameter_names = $par_tran->parameter_values;
$item_name = "product_type_$product_type_id"."_".$par_orig->parameter_name;
$get_item_value = vmGet($_REQUEST, $item_name, "" );
$get_item_value_comp = vmGet($_REQUEST, $item_name."_comp", "" );
// comparison
echo '<div style="float:right">';
if (!empty($parameter_values) && $par_orig->parameter_multiselect=="Y" ) {
if ($parameter_type == "V" ) { // type: Multiple Values
// Multiple section List of values - comparison FIND_IN_SET
echo "<input type=\"hidden\" name=\"".$item_name."_comp\" value=\"find_in_set_any\">";
}
else { // type: all other
// Multiple section List of values - no comparison
echo "<input type=\"hidden\" name=\"".$item_name."_comp\" value=\"in\" />\n";
}
}
else {
switch( $parameter_type ) {
case "C": // Char
if (!empty($parameter_values)) { // List of values - no comparison
echo "<input type=\"hidden\" name=\"".$item_name."_comp\" value=\"eq\" />\n";
break;
}
case "I": // Integer
case "F": // Float
case "D": // Date & Time
case "A": // Date
case "M": // Time
echo "<select class=\"inputbox\" name=\"".$item_name."_comp\">\n";
echo "<option value=\"lt\"".(($get_item_value_comp=="lt" )?" selected":"" )."><</option>\n";
echo "<option value=\"le\"".(($get_item_value_comp=="le" )?" selected":"" )."><=</option>\n";
echo "<option value=\"eq\"".(($get_item_value_comp=="eq" )?" selected":"" ).">=</option>\n";
echo "<option value=\"ge\"".((empty($get_item_value_comp)||$get_item_value_comp=="ge" )?" selected":"" ).">>=</option>\n";
echo "<option value=\"gt\"".(($get_item_value_comp=="gt" )?" selected":"" ).">></option>\n";
echo "<option value=\"ne\"".(($get_item_value_comp=="ne" )?" selected":"" )."><></option>\n";
echo "</select>";
break;
case "T": // Text
if (!empty($parameter_values)) { // List of values - no comparison
echo "<input type=\"hidden\" name=\"".$item_name."_comp\" value=\"texteq\" />\n";
break;
}
echo "<select class=\"inputbox\" name=\"".$item_name."_comp\">\n";
echo "<option value=\"like\"".(($get_item_value_comp=="like" )?" selected":"" ).">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_LIKE')."</option>\n";
echo "<option value=\"notlike\"".(($get_item_value_comp=="notlike" )?" selected":"" ).">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_IS_NOT_LIKE')."</option>\n";
echo "<option value=\"fulltext\"".(($get_item_value_comp=="fulltext" )?" selected":"" ).">".$VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_FULLTEXT')."</option>\n";
echo "</select>";
break;
case "V": // Multiple Value
echo "<input type=\"hidden\" name=\"".$item_name."_comp\" value=\"find_in_set\" />\n";
break;
case "S": // Short Text
default: // Default type Short Text
if (!empty($parameter_values)) { // List of values - no comparison
echo "<input type=\"hidden\" name=\"".$item_name."_comp\" value=\"texteq\" />\n";
break;
}
echo '<input type="hidden" name="'.$item_name.'_comp" value="like">';
}
}
echo '</div>';
echo '<br style="clear:both" />';
// List of values
if (!empty($parameter_values)) {
$fields=explode(";",$parameter_values);
$names = explode(";",$parameter_names);
echo "<select class=\"inputbox\" name=\"$item_name";
if ($par_orig->parameter_multiselect == "Y" ) {
$size = min(count($fields),6);
echo "[]\" multiple size=\"$size\">\n";
$selected_value = array();
$get_item_value = vmGet($_REQUEST, $item_name, array());
foreach($get_item_value as $value) {
$selected_value[$value] = 1;
}
foreach($fields as $key2=>$field) {
echo "<option value=\"$field\"".(($selected_value[$field]==1) ? " selected>" : ">" ). $names[$key2]."</option>\n";
}
}
else {
echo "\">\n";
echo "<option value=\"\">".$VM_LANG->_('PHPSHOP_SELECT')."</option>\n";
foreach($fields as $key2=>$field) {
echo "<option value=\"$field\"".(($get_item_value==$field) ? " selected>" : ">" ). $names[$key2] ."</option>\n";
}
}
echo "</select>";
}
else { // Input field
switch( $parameter_type ) {
case "I": // Integer
case "F": // Float
case "D": // Date & Time
case "A": // Date
case "M": // Time
echo "<input type=\"text\" class=\"inputbox\" name=\"$item_name\" value=\"$get_item_value\" size=\"20\" />";
break;
case "T": // Text
echo "<textarea class=\"inputbox\" name=\"$item_name\" cols=\"35\" rows=\"6\" >$get_item_value</textarea>";
break;
case "C": // Char
echo "<input type=\"text\" class=\"inputbox\" name=\"$item_name\" value=\"$get_item_value\" size=\"5\" />";
break;
case "S": // Short Text
default: // Default type Short Text
echo "<input type=\"text\" class=\"inputbox\" name=\"$item_name\" value=\"$get_item_value\" size=\"50\" />";
}
}
echo " ".$db->f("parameter_unit" );
switch( $parameter_type ) {
default:
break; // we don't need this trash output
case "D": // Date & Time
echo " (".$VM_LANG->_('PHPSHOP_PRODUCT_TYPE_PARAMETER_FORM_TYPE_DATE_FORMAT')." ";
echo $VM_LANG->_('PHPSHOP_PRODUCT_TYPE_PARAMETER_FORM_TYPE_TIME_FORMAT')." )";
break;
case "A": // Date
echo " (".$VM_LANG->_('PHPSHOP_PRODUCT_TYPE_PARAMETER_FORM_TYPE_DATE_FORMAT')." )";
break;
case "M": // Time
echo " (".$VM_LANG->_('PHPSHOP_PRODUCT_TYPE_PARAMETER_FORM_TYPE_TIME_FORMAT')." )";
break;
}
}
else { // Break line (type == "B" )
echo "<hr>";
}
echo '</div>';
}
echo "\n<!-- Default list of parameters - END -->\n\n";
// Add search according to price:
if (false)
{
$item_name = "price";
$get_item_value = vmGet($_REQUEST, $item_name, "" );
$get_item_value_comp = vmGet($_REQUEST, $item_name."_comp", "" );
echo "<tr>\n <td width=\"35%\" height=\"2\" valign=\"top\"><div align=\"right\"><strong>";
echo $VM_LANG->_('PHPSHOP_CART_PRICE')." :</strong></div>\n </td>\n";
// comparison
echo "<td width=\"10%\" height=\"2\" valign=\"top\" align=\"center\">\n";
echo "<select class=\"inputbox\" name=\"price_comp\">";
echo "<option value=\"lt\"".(($get_item_value_comp=="lt" )?" selected":"" )."><</option>\n";
echo "<option value=\"le\"".((empty($get_item_value_comp)||$get_item_value_comp=="le" )?" selected":"" )."><=</option>\n";
echo "<option value=\"eq\"".(($get_item_value_comp=="eq" )?" selected":"" ).">=</option>\n";
echo "<option value=\"ge\"".(($get_item_value_comp=="ge" )?" selected":"" ).">>=</option>\n";
echo "<option value=\"gt\"".(($get_item_value_comp=="gt" )?" selected":"" ).">></option>\n";
echo "<option value=\"ne\"".(($get_item_value_comp=="ne" )?" selected":"" )."><></option>\n";
echo "</select></td>";
// input text
echo "\n<td> <input type=\"text\" class=\"inputbox\" name=\"price\" value=\"$get_item_value\" size=\"20\" /></td>\n</tr>";
}
// Search Button
?>
<p></p>
<input type="submit" class="button" name="search" value="<?php echo $VM_LANG->_('PHPSHOP_SEARCH_TITLE') ?>">
<?php
} // end - There is a published Product Type
/** Changed Product Type - End */
?>
</form>
<p></p>
<?php
echo "<form action=\"".$sess->url( "option=com_virtuemart" ). "\" method=\"post\" name=\"reset\" style=\"display:inline;\">\n";
echo "<input type=\"submit\" class=\"button\" name=\"reset\" value=\"";
echo $VM_LANG->_('PHPSHOP_PARAMETER_SEARCH_RESET_FORM') ."\">\n</form>";
?> |
Les 2 variables qui m'intéressent, et dont je voudrais extraire les résultats sont :
parameter_name
et
parameter_values
La première variable irait afficher les résultats dans la 1ère ligne de mon tableau html et la deuxième variable irait afficher les résultats dans la 2ème ligne. Et donc à chaque nouveaux résultats à afficher, se crée une nouvelle colonne dans mon tableau html.
Si vous avez quelques pistes, merci ! 8O
documentation lue, mais ne correspond pas trop
salut jreaux62, merci pour ta réponse. c'est que des fois, il y a tellement d'infos qu'à la fin on ne sait plus ou chercher. j'ai pris connaissance de la doc que tu m'a fournis. cependant je ne suis pas arrivé à un résultat concluant.
mon bout de code php, au moyen de 2 variables, va chercher des résultats dans une table mysql. les 2 variables en question sont : parameter_name et parameter_values. le code php utilise une boucle foreach. la 1ère variable donne 14 résultats ainsi que la 2ème (il n'y aura pas d'autres résultats). avec ce code php, les résultats de ma table s'affiche sur une colonne unique, à la verticale, ce qui n'est pas très esthétique. comment remanier le code pour arriver à afficher 2 tableaux avec chacun 2 lignes et 7 colonnes (voir image http://www.heberger-image.fr/images/...html.jpeg.html).
merci pour les retours !