Viernes 8 de Noviembre de 2024, 19:14
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación Web y Scripting
»
PHP
(Moderador:
F_Tanori
) »
Re: pasar variables de un formulario a otro y luego enviar p
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: Re: pasar variables de un formulario a otro y luego enviar p (Leído 4433 veces)
ymeza
Nuevo Miembro
Mensajes: 12
Re: pasar variables de un formulario a otro y luego enviar p
«
en:
Miércoles 15 de Octubre de 2003, 22:46 »
0
Hola:
Tengo un formulario en donde se recoge una informacion de entrada con un menu desplegable, este direcciona a otr en donde se obtiene la informacion que ya se encuentra en la base de datos consultada en cajas de texto, elijo una opcion en un menu desplegable para continuar con la transaccion, y me lleva a otro formulario que igualmente debo llenar.
Ahora quiero enviar toda esa informacion por correo electronico, cabe mencionar los datos del primer formulario, del segundo y del ultimo, solo que nada mas me envía los datos del ultimo formulario. Como paso las otras variables de los otros formularios????
Tweet
Oliverio
Miembro activo
Mensajes: 31
Re: pasar variables de un formulario a otro y luego enviar p
«
Respuesta #1 en:
Jueves 16 de Octubre de 2003, 07:38 »
0
A ver sí entendi bien:
Tenes 3 paginas que se llaman una a una en secuencia y al final tenes que recopilar todo y mandarlo por mail.
Si es eso tenes dos maneras:
La desprolija:
Tener un imput hiden en el form al que le vas sumando las respuestas.
La correcta:
Usar variables de session.
Y despues usas mail()
ymeza
Nuevo Miembro
Mensajes: 12
Re: pasar variables de un formulario a otro y luego enviar p
«
Respuesta #2 en:
Viernes 17 de Octubre de 2003, 21:09 »
0
En el caso de que los campos de un formulario despues de una consulta ya aparezcan como los paso al formulario final, con campos hidde, por ejemplo como sería????
Avalon
Miembro MUY activo
Mensajes: 448
Re: pasar variables de un formulario a otro y luego enviar p
«
Respuesta #3 en:
Martes 21 de Octubre de 2003, 17:04 »
0
No termino de entenderlo
Si no quieres que aparezcan los valores en el formulario deberías pasarlos ocultos:
<input type="hidden" name="nombre_del_campo" value="valor_del_campo">
Por contra si quieres mostrar los valores en el formulario sería lo mismo pero cambiando
hidden
por el tipo correspondiente:
<input type="text" name="nombre_del_campo" value="valor_del_campo">
Si no eso lo que preguntabas acláralo un poco más y con gusto te ayudaré.
Salu2,
Avalon
ymeza
Nuevo Miembro
Mensajes: 12
Re: pasar variables de un formulario a otro y luego enviar p
«
Respuesta #4 en:
Martes 21 de Octubre de 2003, 17:09 »
0
Lo que sucede es que cuando envio por email la informacion contenida en el ultimo formulario, quiero que ademas de esta tambien me aparezca la informacion de los anteriores y solo me presenta la del ultimo formulario.
es por ello que pregunto como puedo pasar esas variables de un formulario a otro, usando campos hidden o sesiones, que también lo he visto por allí pero que no termino de comprender.
espero me hayas entendido y gracias de antemano por tu ayuda
Avalon
Miembro MUY activo
Mensajes: 448
Re: pasar variables de un formulario a otro y luego enviar p
«
Respuesta #5 en:
Martes 21 de Octubre de 2003, 19:44 »
0
Ah ya entiendo
En ese caso pués sí, puedes hacerlo con campos hidden, sesiones o también podrías guardar los datos de cada formulario en la base de datos y recuperarlos al momento de enviar el email.
Si quieres saber más sobre sesiones aquí hay un manual en castellano:
http://www.webestilo.com/php/php12a.phtml
Si lo haces con campos hidden solo tendrías que añadir en tu formulario una línea para cada uno de los campos que tuvieras en el formulario anterior:
Código: Text
echo "<input type='hidden' name='nombre' value='".$nombre."'>n";
echo "<input type='hidden' name='apellidos' value='".$apellidos."'>n";
echo "<input type='hidden' name='edad' value='".$edad."'>n";
...
Espero que te sirva.
Salu2,
Avalon
ymeza
Nuevo Miembro
Mensajes: 12
Re: pasar variables de un formulario a otro y luego enviar p
«
Respuesta #6 en:
Martes 21 de Octubre de 2003, 22:12 »
0
Gracias por tu ayuda pero aun no consigo pasar las variables. Tengo el codigo :
comparat.php
<form name="form1" method="post"
action="decide1.php?">
<?//Conexion con la base//
$host="localhost";$user="xxx";$pass="xxxxx";$conn
="direcciones";
$db = pg_connect ("dbname=$conn user=$user
password=$pass");
if (!$db )
{
echo "No se pudo establecer la conexión";
exit;
}
//Ejecutar la sentencia SQL//
$query = "select * from organismos where
id_org='$id_org'";
$result = pg_exec($db, $query);
if ($row=pg_fetch_array($result))
{
$_POST['direccion']=$row['direccion'];
$_POST['ciudad']=$row['ciudad'];
$_POST['estado']=$row['estado'];
.......
echo "<table width=460 border='1'
cellspacing='0' cellpadding='1' height='0'
align='center'>";
do
{
echo "<tr>n";
echo "<tr><td colspan='4'><font face='Verdana,
Arial, Helvetica,sans-serif'
size='1'>Dirección:
".$_POST["direccion"]."</font></td></tr>n";
echo "<tr><td><font face='Verdana, Arial,
Helvetica, sans-serif' size='1'>Ciudad:
".$_POST['ciudad']." </font></td>n";
echo "<td align='left'><font
face='Verdana, Arial, Helvetica, sans-serif'
size='1'>Estado:</font></td>
<td align='left'><font face='Verdana, Arial,
Helvetica, sans-serif'
size='1'>".$_POST['estado']."</font></td></tr>n";
echo"<tr><td colspan='4'><font face='Verdana,
Arial,Helvetica, sans-serif' size='1'>Tipo de
Servicio</font></td></tr>n";
echo"<tr><td colspan='4'>n";
echo "<select name='id'>n";
echo "<option value='0'
selected>Seleccione</option>n";
echo "<option value='1'>Internet</option>n";
echo "<option
value='2'>Sist.Operativos</option>n";
echo "<option value='3'>Soporte
Tecnico</option>n";
echo "</select>nn";
echo "</td></tr>n";
echo "</tr>n";
}
while ($row = pg_fetch_array($result));
echo "</table>n";
}
else
{
echo "¡Usted no está registrado!";
}
?>
<input type="submit" name="enviar" value="Enviar">
<input type='hidden' name='direccion'
value=".$_POST['direccion'].">
</form>
-----------------------------------
internet1.php
<?
if (!$_POST){
?>
<form name="form1" method="post"
action="internet1.php">
<p align="center">
<font
face="Verdana, Arial, Helvetica, sans-serif"
size="1">INTERNET</font>
</p>
<table width="460" border="1"
cellspacing="0" cellpadding="1" height="0"
align="center">
<tr>
<td><font face="Verdana,
Arial, Helvetica, sans-serif" size="1">Tipo
de
Conexión</font></td>
</tr>
<tr>
<td><select name="id">
<option value="0"
selected>Seleccione</option>
<option
value="Dedicada">Dedicada</option>
<option value="Fibra
Optica">Fibra Optica</option>
<option
value="Inalambrica">Inalambrica</option>
</select> </td>
</tr>
<tr>
<td><font face="Verdana,
Arial, Helvetica, sans-serif"
size="1">Departamento/División:
<input type="text"
name="departamento" maxlength="20">
</font></td>
</tr>
<tr>
<td><font face="Verdana,
Arial, Helvetica, sans-serif" size="1">
</font></td>
</tr>
<tr>
<td>
<p><font face="Verdana,
Arial, Helvetica, sans-serif"
size="1">Justificación
de la
Solicitud</font></p>
<p align="center">
<textarea
name="descripsolici" rows="5" cols="45"></textarea>
</p>
</td>
</tr>
</table>
<p align="center">
<input type="submit"
name="Submit" value="Enviar">
<input type='hidden' name='direccion' value="<?
echo ".$_POST['direccion'].";?>">
</form>
<?
}else{
//Estoy recibiendo el formulario, compongo el
cuerpo
$cuerpo = "Formulario Enviadon";
$cuerpo .= "Tipo de Conexion: " .
$_POST["id"] . "n";
$cuerpo .= "Departamento/División: " .
$_POST["departamento"] . "n";
$cuerpo .= "Descripción de la solicitud : " .
$_POST["descripsolici"] . "n";
$cuerpo .= "Direccion: " .
$_POST['direccion']."n";
//mando el correo...
mail("yesi_14@yahoo.com","Formulario
recibido",$cuerpo);
//doy las gracias por el envío
echo "Gracias por rellenar el formulario. Se ha
enviado correctamente.";
}
?>
Y quiero pasar el campo direccion para que cuando me envie este formulario tambien me incluya la direccion del cliente ademas del tipo de conexion, departamento y justificacion......
No se como colocarlo pero lo hice con campos hidden y no me aparece nada.
Que estare´haciendo mal????
Gracias
Avalon
Miembro MUY activo
Mensajes: 448
Re: pasar variables de un formulario a otro y luego enviar p
«
Respuesta #7 en:
Miércoles 22 de Octubre de 2003, 10:44 »
0
Se me hace muy complicado interpretar tu código con las líneas tan cortas y sin ningún tipo de indentación. Sería mejor si adjuntaras los archivos a tu mensaje, con la opción Adjuntar archivo que aparece al momento de publicar el mensaje, en lugar de copiarlos y pegarlos en el cuerpo del mensaje.
De todas formas en el archivo
comparat.php
mandas el formulario a
decide1.php
pero no has incluído o no he conseguido ver el código de este archivo
decide1.php
Un pequeño detalle. Cuando haces estas asignaciones:
$_POST['direccion']=$row['direccion'];
$_POST['ciudad']=$row['ciudad'];
$_POST['estado']=$row['estado'];
Lo haces así por alguna razón especial? $_POST es un array que contiene los campos y valores
recibidos
a través del formulario, por tanto debería utilizarse para leer sus valores y no para asignárselos. De la forma que lo has hecho puede crear mucha confusión a alguien que lee tu código por primera vez.
Si lo pones así:
$direccion=$row['direccion'];
$ciudad=$row['ciudad'];
$estado=$row['estado'];
se ve mucho más claro y no hay lugar a dudas. O si lo quieres hacer con un array también así:
$datos['direccion']=$row['direccion'];
$datos['ciudad']=$row['ciudad'];
$datos['estado']=$row['estado'];
Salu2,
Avalon
ymeza
Nuevo Miembro
Mensajes: 12
Re: pasar variables de un formulario a otro y luego enviar p
«
Respuesta #8 en:
Miércoles 22 de Octubre de 2003, 15:07 »
0
Gracias nuevamente y disculpa, te envio los archivos uno a uno
El mensaje contiene
1 archivo adjunto
. Debes
ingresar
o
registrarte
para poder verlo y descargarlo.
ymeza
Nuevo Miembro
Mensajes: 12
Re: pasar variables de un formulario a otro y luego enviar p
«
Respuesta #9 en:
Miércoles 22 de Octubre de 2003, 15:07 »
0
otro archivo
El mensaje contiene
1 archivo adjunto
. Debes
ingresar
o
registrarte
para poder verlo y descargarlo.
ymeza
Nuevo Miembro
Mensajes: 12
Re: pasar variables de un formulario a otro y luego enviar p
«
Respuesta #10 en:
Miércoles 22 de Octubre de 2003, 15:08 »
0
Este archivo es el principal del cual se genera un menu desplegable y el cual me lleva a comparat.php
El mensaje contiene
1 archivo adjunto
. Debes
ingresar
o
registrarte
para poder verlo y descargarlo.
ymeza
Nuevo Miembro
Mensajes: 12
Re: pasar variables de un formulario a otro y luego enviar p
«
Respuesta #11 en:
Miércoles 22 de Octubre de 2003, 15:09 »
0
Este es el archivo que deberia recoger todos los campos para ser enviados por email
El mensaje contiene
1 archivo adjunto
. Debes
ingresar
o
registrarte
para poder verlo y descargarlo.
Avalon
Miembro MUY activo
Mensajes: 448
Re: pasar variables de un formulario a otro y luego enviar p
«
Respuesta #12 en:
Miércoles 22 de Octubre de 2003, 17:51 »
0
Algunos detalles que he encontrado en tu código...
1) En
comparat.php
la línea
<input type='hidden' name='direccion' value=".$_POST['direccion'].">
debería ser:
<input type='hidden' name='direccion' value="<? echo $_POST['direccion']; ?>">
2) En
decide1.php
es donde se está produciendo la mayor parte del problema. Si haces esto:
header("location: internet.php");
estás enviando al usuario al script
internet.php
pero sin pasarle ningún tipo de parámetros a ese script, con lo cuál todos los datos que hubieras enviado desde el formulario que hay en
importante1.php
los estás perdiendo. Tendrás que cambiar este paso y hacerlo de otra manera para poder recoger los datos en
internet.php
.
Salu2,
Avalon
ymeza
Nuevo Miembro
Mensajes: 12
Re: pasar variables de un formulario a otro y luego enviar p
«
Respuesta #13 en:
Jueves 23 de Octubre de 2003, 16:54 »
0
Hola nuevamente, ya consigo pasar las variables en decide1.php hago esto :
<?php
switch ($id)
{
case"0":
echo"NO HAS SELECCIONADO UN SERVICIO";
exit;
case"1":
header("location:
internet1.php?direccion=$direccion");
exit;
....
Y asi paso la variable direccion a internet 1, pero resulta que no hallo como hacer para plasmarla en internet 1 cuando envío el email. Te explico, tengo una funcion mail y quiero enviar todos los datos :
<?
}else{
//Estoy recibiendo el formulario, compongo el
cuerpo
$cuerpo = "Formulario Enviadon";
$cuerpo .= "Tipo de Conexion: " .
$_POST["id"] . "n";
$cuerpo .= "Departamento/División: " .
$_POST["departamento"] . "n";
$cuerpo .= "Descripción de la solicitud : " .
$_POST["descripsolici"] . "n";
$cuerpo .= "Direccion: " .$direccion."n";
//mando el correo...
mail("yesi_14@yahoo.com","Formulario
recibido",$cuerpo);
//doy las gracias por el envío
echo "Gracias por rellenar el formulario. Se ha
enviado correctamente.";
}
?>
Si te fijas quiero que en el email tambien vaya la variable direccion y he probado muchas veces pero no he logrado pasarla en el email. Que estaré haciendo mal???
Gracias por tu ayuda nuevamente
Avalon
Miembro MUY activo
Mensajes: 448
pasar variables de un formulario a otro y luego enviar por e
«
Respuesta #14 en:
Jueves 23 de Octubre de 2003, 23:56 »
0
Debido a que pasas la variable
$direccion
vía URL (internet1.php?direccion=$direccion) y no vía formulario, la dirección la tendrás en la variable
$_GET['direccion']
y no en
$_POST['direccion']
. A ver si es eso...
Salu2,
Avalon
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación Web y Scripting
»
PHP
(Moderador:
F_Tanori
) »
Re: pasar variables de un formulario a otro y luego enviar p