Foros del Web » Programando para Internet » PHP »

checkbox y php

Estas en el tema de checkbox y php en el foro de PHP en Foros del Web. que curioso, que curioso... estoy haciendo una aplicacion en PHP. ahora mismo todabia no esta en internet y utilizo el Plesk (un panel de control ...
  #1 (permalink)  
Antiguo 01/01/2006, 16:55
Avatar de haron  
Fecha de Ingreso: febrero-2004
Ubicación: Cádiz (refinitivo)
Mensajes: 632
Antigüedad: 13 años, 9 meses
Puntos: 3
checkbox y php

que curioso, que curioso...

estoy haciendo una aplicacion en PHP. ahora mismo todabia no esta en internet y utilizo el Plesk (un panel de control de sitios web) para previsualizar el sitio.

la previsualizacion del sitio web tiene una url parecida a esta:
https://215.47.28.128:8443/siteprevi...ipaginaweb.org (inventada)

y el formulario es tan sencillo como este:
Código:
<?php
$item = $_REQUEST["item"];
print_r($item);
?>
<form action="untitled.php" method="post">
	<input type="checkbox" name="item[]" value="1" /> Uno<br />
	<input type="checkbox" name="item[]" value="2" checked="checked" /> Dos<br />
	<input type="checkbox" name="item[]" value="3" /> Tres<br />
	<input type="checkbox" name="item[]" value="4" checked="checked" /> Cuatro
	<p><input type="submit" value="Accept" /></p>
</form>
resulta que cuando pincho sobre el boton "Accept" no me muestra el array $item, porque esta vacio!!!

sin embargo si cambio method="post" por method="get" si me muestra los valores marcados.

a que puede ser esto?
sera por culpa de la previsualizacion? la url tan rara que le asigna?
__________________
Si ocurre algo importante, estamos afuera fumándonos unos cigarritos.
  #2 (permalink)  
Antiguo 01/01/2006, 18:35
 
Fecha de Ingreso: diciembre-2005
Ubicación: Madrid, España
Mensajes: 154
Antigüedad: 12 años
Puntos: 2
Tienes que suministrar más información sobre tu problema porque se entiende a medias.

Parece que tu página se auto-envía los parámetros que introduces en el formulario. Asegúrate si tu página se llama "untitled.php".

El formulario llama a ese "untitled.php" enviando los parámetros por POST o GET dependiendo del método que utilices.

En la recuperación de los mismos usa $_GET o $_POST, no $_REQUEST.

Saludos
  #3 (permalink)  
Antiguo 02/01/2006, 05:53
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
En el array superglobal $_REQUEST llega todo lo que esté en $_POST, $_GET y $_COOKIE .. realmente eso puede confundir y no hacer "tan" seguro el script .. sería recomendable que accedas al array contenedor de tus variables del formulario según el "method" que usastes (en tu caso POST)

Un saludo,
  #4 (permalink)  
Antiguo 02/01/2006, 07:07
Avatar de haron  
Fecha de Ingreso: febrero-2004
Ubicación: Cádiz (refinitivo)
Mensajes: 632
Antigüedad: 13 años, 9 meses
Puntos: 3
el script en PHP lo podeis encontrar en
http://www.serverstone.com/untitled.php

se trata de dos formularios identicos, lo que pasa es que uno de ellos utiliza "post" para pasar los parametros y otro utiliza "get".

el codigo fuente del script es este:
Código:
<?php
$item = $_REQUEST["item"];
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>

<body>
<?php
print_r($item);
?>
<h3>Using "post" method</h3>
<form action="untitled.php" method="post">
	<input type="checkbox" name="item[]" value="1" checked="checked" /> Uno<br />
	<input type="checkbox" name="item[]" value="2" /> Dos<br />
	<input type="checkbox" name="item[]" value="3" checked="checked" /> Tres<br />
	<input type="checkbox" name="item[]" value="4" /> Cuatro
	<p><input type="submit" value="Accept" /></p>
</form>

<h3>Using "get" method</h3>
<form action="untitled.php" method="get">
	<input type="checkbox" name="item[]" value="1" checked="checked" /> Uno<br />
	<input type="checkbox" name="item[]" value="2" /> Dos<br />
	<input type="checkbox" name="item[]" value="3" checked="checked" /> Tres<br />
	<input type="checkbox" name="item[]" value="4" /> Cuatro
	<p><input type="submit" value="Accept" /></p>
</form>
</body>
</html>
como podreis comprobar, en mi sitio web, el script funciona.

donde no funciona es en el servidor de mi cliente. no se si es un problema del php, o que lo estoy ejecutando desde la opcion de previsualizacion que viene con el Plesk.

en fin... gracias de todos modos por vuestra ayuda.
__________________
Si ocurre algo importante, estamos afuera fumándonos unos cigarritos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:03.