Foros del Web » Programando para Internet » PHP »

Consulta formulario PHP

Estas en el tema de Consulta formulario PHP en el foro de PHP en Foros del Web. Hola a tod@s Hacía muchos años que no tocaba php, pero he necesitado hacer unas modificaciones a un código y me ha salido un problema. ...
  #1 (permalink)  
Antiguo 28/11/2013, 06:24
 
Fecha de Ingreso: agosto-2013
Mensajes: 2
Antigüedad: 10 años, 7 meses
Puntos: 0
Pregunta Consulta formulario PHP

Hola a tod@s

Hacía muchos años que no tocaba php, pero he necesitado hacer unas modificaciones a un código y me ha salido un problema.

Tengo un código que me está funcionando en localhost, pero no en un servidor externo (php 5.3.3, apache 2).

Describo un poco el problema.

Por un lado tengo el siguiente formulario:

<form action="<?php echo $url; ?>" name="form" method="post">
<input type="hidden" id="campo" name="campo" value="1" />
<input type="submit" value="Aceptar"/>
</form>

al hacer submit va a la url, pero allí $_POST['campo'] no contiene nada.

Como decía me funciona en local pero no en servidor.

El tema es que no tengo acceso al servidor y tengo que entregar versiones finales por lo que no puedo hacer trazas para ver por dónde va la cosa.

¿Alguien sabe qué puede estar pasando (si es un tema de configuración etc)
¿Hay alguna forma mejor de hacer esto?

Muchas gracias

Rosa
  #2 (permalink)  
Antiguo 28/11/2013, 06:28
 
Fecha de Ingreso: abril-2013
Mensajes: 24
Antigüedad: 11 años
Puntos: 0
Respuesta: Consulta formulario PHP

Amigo, podrias colocar el codigo del archivo que recibe el post para analizarlo igual, aunque esto me parece mas problema de configuracion del servidor externo, trata de recibir la variable con el metodo $_REQUEST['campo']; y me cuentas como te va.

Saludos
  #3 (permalink)  
Antiguo 28/11/2013, 06:28
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Consulta formulario PHP

RosaGarcia, no tiene sentido lo que comentas, en todo caso el formulario es HTML y aunque cambie el action debe funcionar exactamente igual.

En todo caso el problema puede estar en el script que recibe el formulario como ya te han mencionado, sabes que adivinar no se puede.

Revisa el manual, dicho ese aspecto no ha sufrido cambios: http://www.php.net/variables.external
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 28/11/2013, 06:30
 
Fecha de Ingreso: mayo-2011
Ubicación: Bs.As Argentina
Mensajes: 193
Antigüedad: 12 años, 10 meses
Puntos: 3
Respuesta: Consulta formulario PHP

Yo no utilizaría $_REQUEST es obseleto, utiliza POST.

Como dice raicerk podes poner el código?.

Y además que valor tiene url?.

Saludos
  #5 (permalink)  
Antiguo 28/11/2013, 08:35
 
Fecha de Ingreso: agosto-2013
Mensajes: 2
Antigüedad: 10 años, 7 meses
Puntos: 0
Respuesta: Consulta formulario PHP

Gracias por las respuestas, la verdad tengo el php un poco oxidado :(

A ver por aclarar un poco:

El archivo principal muestra un aviso, con un botón Aceptar que pertenece al formulario que describía antes.

<form action="<?php echo $url; ?>" name="form" method="post">
<input type="hidden" id="campo" name="campo" value="1" />
<input type="submit" value="Aceptar"/>
</form>

$url es $CFG->wwwroot es decir la dirección del servidor (en local es localhost/index.php , en remoto es http://www.servidor.es/index.php)

La página de recepción es la misma que la principal, sólamente que hago


if( $_POST['campo'] )
{
$_SESSION['campo'] = $_POST['campo'];
// esto es, si campo vale 1 (viene con valor 1 del hidden en el form) almacénalo en $_SESSION
}


if( $_SESSION['campo'] != 1)
{
//// muestra form con el aviso
}
else
{
/// ya no hay aviso
}

Básicamente es esto, mostrar un mensaje cada vez que el usuario se logee (pero solo 1 vez por eso almaceno en $_SESSION).

El caso es que al pulsar Aceptar en localhost se hace el submit y ya no se muestra el mensaje, pero en el servidor externo al Aceptar y hacer el submit vuelve a aparecer el mensaje.

La verdad es que creo recordar que esto se hacía así, no sé tal vez sea alguna configuración del servidor externo (no tengo acceso a él) o esta forma de hacerlo esté obsoleta o no sé

En caso de que fuera alguna configuración del servidor, ¿que podría ser por si pudiera mirarlo a partir de un phpinfo?

¿Alguna otra idea o forma de hacer lo que comento?

Gracias a todos
  #6 (permalink)  
Antiguo 28/11/2013, 08:39
Avatar de marlanga  
Fecha de Ingreso: enero-2011
Ubicación: Murcia
Mensajes: 1.024
Antigüedad: 13 años, 3 meses
Puntos: 206
Respuesta: Consulta formulario PHP

Utiliza if(isset($_POST['campo'])), o tendrás problemas con los falsy values. Con el SESSION, si existe la posibilidad de que el atributo "campo" no esté definido, igual.
  #7 (permalink)  
Antiguo 28/11/2013, 08:50
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Consulta formulario PHP

En todo caso, ¿es necesario el uso de variables de sesión?

Yo no lo creo, y si lo fuera, ¿dónde estás invocando session_start() en dicho código?

Vamos, hay muchas lagunas con el código que muestras, así de pronto a mi no me queda nada claro.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Etiquetas: formulario
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 03:43.