Comunidad de diseño web y desarrollo en internet online

Obtener datos de checkbox con php y mysql

Citar            
MensajeEscrito el 12 Dic 2012 11:08 am
Hola buenos días;

Estoy trabajando con php y mysql, tengo un archivo php(catalogo.php) el cual me muestra datos de una BD, estos datos mostrados tienen una casilla de selección mediante "checkbox" y funciona perfectamente.
El problema es que no consigo que se muestren los datos seleccionados por el "checkbox" en otro archivo llamado (mostrarproductos.php) , el cual es el que se encarga de mostrar los datos elegidos para mostrarlos en una sola linea.
¿Alguna idea de como poder mostrar los datos seleccionados?
A continuación dejo los codigos que estoy utilizando;

(catalogo.php)
<?php
include("configuracion.php");
$conexion = mysql_connect($huesped,$usuario,$clave)
or die ("no se puede conectar");
$db = mysql_select_db($basededatos,$conexion)
or die ("no se puede conectar");

//Creamos formulario con las listas de seleccion

$consulta = "SELECT * productos ORDER BY nombre_producto";
$resultado = mysql_query ($consulta)
or die ("No conexion");


echo "<form action='mostrarproductos.php' method='post'>\n";
echo "<table cellpadding='5' border='1'>";
$contador=1;
while ($fila = mysql_fetch_array($resultado))
{
extract($fila);
echo "<tr><td valign='top' width='15%'>\n";
echo "<input type='checkbox' nombre='interes'
valor='$nombre_producto'\n";
if ($contador == 1)
{
echo "revisado";
}
echo "><font size='+1'><b>$nombre_producto</b></font>";
echo "</td>
<td>$descripcion_producto</td>";
echo "</tr>";
$contador++;
}
echo "</table>";
echo "<p><input type='submit' valor='Escoge tu producto'>
</form>\n";
?>
(Este archivo muestra los productos en una tabla con el nombre del producto y su descripción)

(mostrarproductos.php)
<?php
include("configuracion.php");
$conexion = mysql_connect($huesped,$usuario,$clave)
or die ("no se puede conectar");
$db = mysql_select_db($basededatos,$conexion)
or die ("no se puede conectar");

//Mostramos los productos elegidos mediante checkbox

$consulta = "SELECT * FROM productos WHERE nombre_producto=\"{$_POST['interes']}\"";
$resultado = mysql_query ($consulta)
or die ("No conexion");

echo "<table cellspacing='10' border='0' cellpadding='0' width='100%'>";
echo "<tr><td colspan='5' align='right'>Ver<br><hr></td></tr>\n";

$contador=1;
while ($filas = mysql_num_rows($resultado))

{

extract($fila);
if ($contador == 1)
echo "<tr>\n";
echo "<td>{$fila['nombre_producto']}</td>\n";
echo "<td><font size='+1'>
<b>{$fila['descripcion_producto']}</b></font></td>\n";
{
echo "revisado";
}

$contador++;
}
echo "</table>";
?>
(Este archivo es el que me da problemas ya que no consigo que muestre nada)
Si alguien es tan amable de ayudar lo agradecería....
Saludos

Por salva75

1 de clabLevel



 

firefox
Citar            
MensajeEscrito el 12 Dic 2012 12:14 pm
Al inicio de mostrarproductos.php haz:

Código PHP :

echo "<pre>";
print_r($_POST);
echo "</pre>";


Para que veas exactamente lo que te llega por POST. Ten en cuenta que para los checkbox estos se envían si están seleccionados pero si no lo están, no se envían.

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 12 Dic 2012 02:33 pm

DriverOp escribió:

Al inicio de mostrarproductos.php haz:

Código PHP :

echo "<pre>";
print_r($_POST);
echo "</pre>";


Para que veas exactamente lo que te llega por POST. Ten en cuenta que para los checkbox estos se envían si están seleccionados pero si no lo están, no se envían.



He probado con lo que me comentas pero sigue sin mostrar los resultados, adjunto la url de mostrarproductos.php para que puedas ver el resultado que me da...
Si se te ocurren otras opciones te lo agradezco.
Saludos

URL

Por salva75

1 de clabLevel



 

firefox
Citar            
MensajeEscrito el 12 Dic 2012 04:28 pm
Que me des la URL de mostrarproductos.php no me sirve de nada puesto que el tipo de petición que se necesita para que esto funcione debe ser POST y eso solo se logra si se parte del formulario, en tu caso, el que está en catalogo.php.

Además, la URL en cuestión me muestra el resultado de la ejecución de PHP y no el código fuente del script.

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 12 Dic 2012 04:38 pm
Ok, el código del catalogo.php es el que he puesto anteriormente. Y el código de mostrarproductos.php es el que he modificado con lo que me has comentado antes, aquí lo dejo:

(mostrarproductos.php)

<?php
include("configuracion.php");
$conexion = mysql_connect($huesped,$usuario,$clave)
or die ("no se puede conectar");
$db = mysql_select_db($basededatos,$conexion)
or die ("no se puede conectar");

//Mostramos los productos elegidos mediante checkbox

$consulta = "SELECT * FROM productos WHERE nombre_producto=\"{$_POST['interes']}\"";
$resultado = mysql_query ($consulta)
or die ("No conexion");

echo "<pre>";
print_r($_POST);
echo "</pre>";

echo "<table cellspacing='10' border='0' cellpadding='0' width='100%'>";
echo "<tr><td colspan='5' align='right'>Ver<br><hr></td></tr>\n";

$contador=1;
while ($filas = mysql_num_rows($resultado))

{

extract($fila);
if ($contador == 1)
echo "<tr>\n";
echo "<td>{$fila['nombre_producto']}</td>\n";
echo "<td><font size='+1'>
<b>{$fila['descripcion_producto']}</b></font></td>\n";
{
echo "revisado";
}

$contador++;
}
echo "</table>";
?>

(Este archivo es el que me muestra la url indicada anteriormente)
Gracias

Por salva75

1 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.