Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/03/2009, 12:57
kike278
 
Fecha de Ingreso: abril-2008
Mensajes: 62
Antigüedad: 16 años
Puntos: 1
De acuerdo Consulta Personalizada PHP MYSQL

Hola Saludos a Todos.
Les comento necesito realizar una consulta en donde el usuario pueda seleccionar que campos de la db quiere como resultado en su consulta.

Este es el codigo que utilizo para construir el formulario

[PHP

]<?php
$link = mysql_connect('localhost', 'xx', 'xx);
if (!$link) {
die('Could not connect to MySQL server: ' . mysql_error());
}

$dbname = 'xxx';
$db_selected = mysql_select_db($dbname, $link);
if (!$db_selected) {
die('Could not set $dbname: ' . mysql_error());
}

$query = "select * from candidatos ";
$res = mysql_query ($query);
$numfields = mysql_num_fields ($res);

for ($i=0; $i < $numfields; $i++) {
?><input name="<?=mysql_fieldname($res,$i) ?>" type="checkbox" value="<?=mysql_fieldname($res,$i) ?>"><?=mysql_fieldname($res,$i) ?></input><br/><?php
}
?>
<input type="submit" value="Aceptar" />
</form>
</body>
</html>
[/PHP]

Y este es el codigo con el q obtengo la consulta

Código PHP:
<?php
$link 
mysql_connect('localhost''xx, 'xxxx);
if (!
$link) {
   die(
'Could not connect to MySQL server: ' mysql_error());
}

$dbname 'contratacion';
$db_selected mysql_select_db($dbname$link);
if (!
$db_selected) {
   die(
'Could not set $dbname: ' mysql_error());
}

$fields implode(","$_POST);   
$query "select $fields from candidatos  ";
$res mysql_query ($query);
$numfields mysql_num_fields ($res);

echo 
"<table> \n <tr>";
for (
$i=0$i $numfields;  $i++) {
   echo 
"<th>" .mysql_field_name ($res$i). "</th>"
}
echo 
"</tr> \n";
while (
$row mysql_fetch_row ($res)) {
   echo 
"<tr><td>" .implode ($row"</td><td>"). "</td></tr> \n"
}
echo 
"</table> \n";
?>
Todo funciona a la perfeccion, el problema es que necesito que en el formulario los checkbox no tengan el nombre del campo de la bd si no un nombre q yo pueda asignarles para q el usuario los identifique, y en cuanto ala consulta solo darle un mejor formato a la tabla que obtengo.

Grax y saludos ...