Formulario + web modular

Iniciado por IWKY, 5 Enero 2009, 16:28 PM

0 Miembros y 1 Visitante están viendo este tema.

IWKY

Hola, estoy haciendo una web modular, y tengo un problema, resulta que en uno de los módulos hay un formulario, el cual debe llamar a otro modulo el cual valida e interactua con los datos del formulario, el problema viene cuando envío el formulario que no coge los datos del formulario, pongo los códigos para que se vea más claro.

Código (html4strict) [Seleccionar]

<!-- Formulario >
<form action="?cat=email" method="post" enctype="text/plain">
    <label for="nombre">Nombre:</label>
    <input type="text" name="nombre" size="30" maxlength="100">
</form>


Código (php) [Seleccionar]

/* Moudulo email.php */
$nombre=$_POST['nombre'];
echo $nombre;


Código (php) [Seleccionar]

/* index.php asi se cargan los modulos */

if (!empty( $_GET ['cat']))
  $modulo  =  $_GET ['cat'];
else
  $modulo  =  MODULO_DEFECTO ;

$path_modulo=MODULO_PATH . '/' . $conf[$modulo]['archivo'];

if(file_exists($path_modulo))
  include($path_modulo);


Como lo puedo hacer para que el email.php coja los valores del formulario.


Un saludo, y si hace falta algún dato más pidan lo.
Por internet libre http://red-sostenible.net/
El mejor momento de Dragon Ball Z --> Aqui

дٳŦ٭

Los está tomando... en mail.php pon print_r($_POST);


Con sangre andaluza :)


IWKY

Hola, pues la respuesta del comando print_r es Array ( ) o sea que deduzco que no le llegan los valores.
Supongo que es por lo siguiente, desde el form indico el modulo a cargar (?cat=email), si el form lo paso por get entonces me dice que no encuentra el modulo y me carga el modulo por defecto y si lo paso por post me carga el modulo pero me sale Array (), así pues deduzco que toma como modulo ?cat=email?nombre=XXX (en el caso de get).

Como puedo solucionarlo.

Un saludo.
Por internet libre http://red-sostenible.net/
El mejor momento de Dragon Ball Z --> Aqui

Karman

Cita de: IWKY en  6 Enero 2009, 21:34 PM
Hola, pues la respuesta del comando print_r es Array ( ) o sea que deduzco que no le llegan los valores.

incorrecto, tanto print_r como echo $_POST te va a devolver array porque $_POST es un array...

el problema está en el enctype="text/plain"... fijate:

index.php
Código (php) [Seleccionar]

<form action="?cat=email" method="post" >
    <label for="nombre">Nombre:</label>
    <input type="text" name="nombre" size="30" maxlength="100">
</form>

<?php
if (!empty( $_GET ['cat'])){
  
$modulo  =  $_GET ['cat'].'.php';
if(file_exists($modulo))
  
include($modulo);
}
?>



email.php
Código (php) [Seleccionar]

<?php
$nombre=$_POST['nombre'];
echo $nombre;
?>



S2

IWKY

Gracias, ya funciona ahora el print_r muestra lo siguiente Array ( [nombre] => XXX ), ahora me gustaría saber el porque el enctype no deja pasar los valores.

Un saludo
Por internet libre http://red-sostenible.net/
El mejor momento de Dragon Ball Z --> Aqui

Karman

eso no sabría decirte... ya una vez tuve problemas con enctype y me costó mucho solucionarlo... así que no sabría decirte...

S2

IWKY

Ok, intentare averiguarlo pero si alguien lo sabe pues que lo diga si es tan amable.

Un saludo.
Por internet libre http://red-sostenible.net/
El mejor momento de Dragon Ball Z --> Aqui