Foros del Web » Programando para Internet » PHP »

pasar variables de html a php

Estas en el tema de pasar variables de html a php en el foro de PHP en Foros del Web. buenas tardes amigos estoy intentando hacer una web en la cual tengo un formulario html y envio los datos a un php el cual recibe ...
  #1 (permalink)  
Antiguo 11/04/2016, 12:18
 
Fecha de Ingreso: abril-2016
Ubicación: venezuela
Mensajes: 5
Antigüedad: 8 años
Puntos: 0
Exclamación pasar variables de html a php

buenas tardes amigos estoy intentando hacer una web en la cual tengo un formulario html y envio los datos a un php el cual recibe los datos, rellena otros y hace envio a un tercer php, el inconveniente se presenta porque pierdo los datos del html, podrian ayudarme?

Código HTML:
Ver original
  1. <!doctype html>
  2. <html lang=''>
  3.    <meta charset='utf-8'>
  4.    <meta http-equiv="X-UA-Compatible" content="IE=edge">
  5.    <meta name="viewport" content="width=device-width, initial-scale=1">
  6.    <link rel="stylesheet" href="styles.css">
  7.    <script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
  8.    <script src="script.js"></script>  
  9.  
  10. </head>
  11.  
  12. <div>
  13. <h5>SERIE</h5>
  14. <form name="serie" id="serie" method="post" action="pagina2.php">
  15. <table width="294" border="0" cellpadding="0" cellspacing="0">
  16.   <tr>
  17.     <td width="20" height="22">
  18.       <label><input type="radio" name="radio2" id="radio2" value="OPCION1"></label>
  19.     </td>
  20.     <td width="274"><h6 style="margin:0;">OPCION1</h6></td>
  21.   </tr>
  22.   <tr>
  23.     <td height="22">
  24.       <label><input type="radio" name="radio2" id="radio2" value="OPCION2"></label>
  25.     </td>
  26.     <td><h6 style="margin:0;">OPCION2</h6></td>
  27.   </tr>
  28. <br>
  29. <CENTER><input type="image" src="images/sig.png" name="submit" value="Enviar"></CENTER>
  30. </form>
  31. </div>
  32.  
  33. </body>

PAGINA2
Código PHP:
Ver original
  1. <!doctype html>
  2. <html lang=''>
  3. <head>
  4.    <meta charset='utf-8'>
  5.    <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6.    <meta name="viewport" content="width=device-width, initial-scale=1">
  7.    <link rel="stylesheet" href="styles.css">
  8.    <script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
  9.    <script src="script.js"></script>
  10.  
  11. <?php
  12.  
  13. $_SESSION['radio2'] = $_POST['radio2'];  
  14. ?>  
  15. </head>
  16. <body>
  17.  
  18. <form name="serie" id="serie" method="post" action="pagina3.php">
  19.  
  20. <table width="294" border="0">
  21.   <tr>
  22.     <td width="54"><h6 style="margin:0;">Nombre:</h6></td>
  23.     <td width="224"><input name="nombre" type="text" id="nombre" style="background-color:#CCCCCC" size="25" maxlength="30" required/></td>
  24.   </tr>
  25.   <tr>
  26.     <td><h6 style="margin:0;">Apellido:</h6></td>
  27.     <td><input name="apellido" type="text" id="apellido" style="background-color:#CCCCCC" size="25" maxlength="30" required/></td>
  28.   </tr>
  29.   <tr>
  30.     <td><h6 style="margin:0;">Tlf:</h6></td>
  31.     <td><input name="tlf" type="text" id="tlf" style="background-color:#CCCCCC" size="25" maxlength="15" required/></td>
  32.   </tr>
  33.   <tr>
  34.     <td><h6 style="margin:0;">Email:</h6></td>
  35.     <td><input name="mail" type="text" id="mail" style="background-color:#CCCCCC" size="25" required/></td>
  36.   </tr>
  37. </table><br>  
  38. <center>
  39. <input type="image" src="images/sig.png" name="submit" value="Enviar">
  40. </center>
  41. </form>
  42.  
  43.  
  44. </body>
  45. <html>

PAGINA 3
Código PHP:
Ver original
  1. <?php
  2. $_SESSION['radio2'] = $_POST['radio2'];
  3. $opcion = $_POST['radio2'];
  4. $opcion2 = $_POST['opcion'];
  5. $opcion4 = $_SESSION['radio2'];
  6. $nombre = $_POST['nombre'];
  7. $apellido = $_POST['apellido'];
  8. $tlf = $_POST['tlf'];
  9. $mail = $_POST['mail'];
  10. $header = 'From: ' . $mail . " \r\n";
  11. $header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
  12. $header .= "Mime-Version: 1.0 \r\n";
  13. $header .= "Content-Type: text/plain";
  14. $mensaje .= "SELECCIÓN DEL CHECKBOX: " . $_SESSION['radio2'] . " \r\n\n";
  15. $mensaje .= "Este mensaje fue enviado por: \r\n\n";
  16. $mensaje .= "Nombre: " . $nombre . " \r\n";
  17. $mensaje .= "Apellido: " . $apellido . " \r\n";
  18. $mensaje .= "Telefono: " . $tlf . " \r\n";
  19. $mensaje .= "Su e-mail es: " . $mail . " \r\n";
  20. $mensaje .= "Enviado el: " . date('d/m/Y', time());
  21.  
  22. $asunto = 'SOLICITUD';
  23.  
  24. mail($para, $asunto, utf8_decode($mensaje), $header);
  25. echo "<script>document.location.href='index.html';</script>\n";  
  26.  
  27. ?>
  #2 (permalink)  
Antiguo 11/04/2016, 12:21
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 8 años, 10 meses
Puntos: 263
Respuesta: pasar variables de html a php

a que te refieres con pierdo los datos del html??
__________________
[email protected]
HITCEL
  #3 (permalink)  
Antiguo 11/04/2016, 13:39
Avatar de wunderwaffen077  
Fecha de Ingreso: marzo-2014
Mensajes: 45
Antigüedad: 10 años, 1 mes
Puntos: 3
Respuesta: pasar variables de html a php

Primero que nada si quieres recuperar datos en el index, este debe ser un archivo .php
Luego en vez de esto..

Código PHP:
echo "<script>document.location.href='index.html';</script>\n"
Harías esto:

Código PHP:
header("location: index.php?id=dato1"); 
Y en Index.php

Recuperar el dato

Código PHP:
$id = isset($_GET['id'])?$_GET['id']:''
Listo para hacer cualquier cosa con esto.


:)

Última edición por wunderwaffen077; 11/04/2016 a las 13:40 Razón: aumentar
  #4 (permalink)  
Antiguo 21/04/2016, 07:45
 
Fecha de Ingreso: abril-2016
Ubicación: venezuela
Mensajes: 5
Antigüedad: 8 años
Puntos: 0
Respuesta: pasar variables de html a php

a que el html manda un valor pero al llegar al ultimo php este envia los datos al correo electronico pero el del html no llega
  #5 (permalink)  
Antiguo 21/04/2016, 07:46
 
Fecha de Ingreso: abril-2016
Ubicación: venezuela
Mensajes: 5
Antigüedad: 8 años
Puntos: 0
Respuesta: pasar variables de html a php

Cita:
Iniciado por xfxstudios Ver Mensaje
a que te refieres con pierdo los datos del html??
a que el html manda un valor pero al llegar al ultimo php este envia los datos al correo electronico pero el del html no llega
  #6 (permalink)  
Antiguo 21/04/2016, 13:19
 
Fecha de Ingreso: octubre-2010
Ubicación: España
Mensajes: 1.007
Antigüedad: 13 años, 6 meses
Puntos: 123
Respuesta: pasar variables de html a php

Supongo que te refieres a este 'dato'
Código PHP:
Ver original
  1. $_SESSION['radio2'] = $_POST['radio2'];

Básicamente a tu último Script no llega por qué no lo estas enviando desde la página anterior.
Puedes enviarlo mediante un input type="hidden" por ejemplo por get en el action como te indico el compañero.

Pero creo que ya que lo almacenas en una sesión en el paso 2 es innecesario enviarlo nuevamente. Lo que tienes que hacer es no actualizar la variable de sesión, puesto que ya contiene el valor.

Código PHP:
Ver original
  1. //$_SESSION['radio2'] = $_POST['radio2'];
  2. echo $_SESSION['radio2'];
__________________
Unset($vida['malRollo']);
  #7 (permalink)  
Antiguo 22/04/2016, 14:22
 
Fecha de Ingreso: abril-2016
Ubicación: venezuela
Mensajes: 5
Antigüedad: 8 años
Puntos: 0
Respuesta: pasar variables de html a php

Cita:
Iniciado por xerifandtomas Ver Mensaje
Supongo que te refieres a este 'dato'
Código PHP:
Ver original
  1. $_SESSION['radio2'] = $_POST['radio2'];

Básicamente a tu último Script no llega por qué no lo estas enviando desde la página anterior.
Puedes enviarlo mediante un input type="hidden" por ejemplo por get en el action como te indico el compañero.

Pero creo que ya que lo almacenas en una sesión en el paso 2 es innecesario enviarlo nuevamente. Lo que tienes que hacer es no actualizar la variable de sesión, puesto que ya contiene el valor.

Código PHP:
Ver original
  1. //$_SESSION['radio2'] = $_POST['radio2'];
  2. echo $_SESSION['radio2'];

disculpa amigo pero sigue marcando error, existe otra manera de hacer lo que quiero hacer?
  #8 (permalink)  
Antiguo 22/04/2016, 14:27
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: pasar variables de html a php

Cita:
disculpa amigo pero sigue marcando error, existe otra manera de hacer lo que quiero hacer?
¿Existe la posibilidad que compartas el mensaje de error completo o es nuestra obligación intentar adivinarlo?

--

La manera en que inicias sesión es muy mala, de hecho en contra de las buenas practicas como indica el manual.

Es decir, el error más obvio es imprimir HTML antes de iniciar la sesión: eso no se hace así.

¿Te interesaría leer un poco el manual para entender mejor?

http://www.php.net/manual/es/book.session.php
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #9 (permalink)  
Antiguo 23/04/2016, 05:42
Avatar de Juan_Enrique  
Fecha de Ingreso: abril-2016
Ubicación: Jerez de la Frontera, Cádiz. España
Mensajes: 6
Antigüedad: 8 años
Puntos: 0
Respuesta: pasar variables de html a php

Hola! Espero poder ayudarte.

Voy a poner tu código haciéndole comentarios para que veas donde veo yo los fallos

Pagina 1:
Código HTML:
<!doctype html>
<html lang=''>
<head>
   <meta charset='utf-8'>
   <meta http-equiv="X-UA-Compatible" content="IE=edge">
   <meta name="viewport" content="width=device-width, initial-scale=1">
   <link rel="stylesheet" href="styles.css">
   <script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
   <script src="script.js"></script>   
  
</head>
<body>
 
<div>
<h5>SERIE</h5>
<form name="serie" id="serie" method="post" action="pagina2.php">
<table width="294" border="0" cellpadding="0" cellspacing="0">
  <tr>
    <td width="20" height="22">
      <label><input type="radio" name="radio2" id="radio2" value="OPCION1"></label>
    </td>
    <td width="274"><h6 style="margin:0;">OPCION1</h6></td>
  </tr>
  <tr>
    <td height="22">
      <label><input type="radio" name="radio2" id="radio2" value="OPCION2"></label> <!-- Este radio button tiene el mismo id que el primero -->
    </td>
    <td><h6 style="margin:0;">OPCION2</h6></td>
  </tr>
</table>
<br>
<CENTER><input type="image" src="images/sig.png" name="submit" value="Enviar"></CENTER> <!-- No se muy bien que quieres hacer aquí. Pero para pasar los datos por post el tipo del input debería ser submit no image como tienes puesto -->
</form>
</div>
 
</body>
<html> 
Página 2
Código PHP:
<!doctype html>
<html lang=''>
<head>
   <meta charset='utf-8'>
   <meta http-equiv="X-UA-Compatible" content="IE=edge">
   <meta name="viewport" content="width=device-width, initial-scale=1">
   <link rel="stylesheet" href="styles.css">
   <script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
   <script src="script.js"></script>
  
<?php
 
session_start
();
$_SESSION['radio2'] = $_POST['radio2'];  /* Ojo con esto, esta bien, pero quiero que la tengas en cuenta para la página 3 */
?>  
</head>
<body>
 
<form name="serie" id="serie" method="post" action="pagina3.php">
 
<table width="294" border="0">
  <tr>
    <td width="54"><h6 style="margin:0;">Nombre:</h6></td>
    <td width="224"><input name="nombre" type="text" id="nombre" style="background-color:#CCCCCC" size="25" maxlength="30" required/></td>
  </tr>
  <tr>
    <td><h6 style="margin:0;">Apellido:</h6></td>
    <td><input name="apellido" type="text" id="apellido" style="background-color:#CCCCCC" size="25" maxlength="30" required/></td>
  </tr>
  <tr>
    <td><h6 style="margin:0;">Tlf:</h6></td>
    <td><input name="tlf" type="text" id="tlf" style="background-color:#CCCCCC" size="25" maxlength="15" required/></td>
  </tr>
  <tr>
    <td><h6 style="margin:0;">Email:</h6></td>
    <td><input name="mail" type="text" id="mail" style="background-color:#CCCCCC" size="25" required/></td>
  </tr>
</table><br>  
<center>
<input type="image" src="images/sig.png" name="submit" value="Enviar">  <!-- de nuevo esto yo lo pondria como type input -->
</center>
</form>
 
 
</body>
<html>
Página 3
Código PHP:
<?php
session_start
();
$_SESSION['radio2'] = $_POST['radio2']; /*Aqui estas pisando el valor que tenia $_SESSION['radio2'] por un valor que no existe ya que radio2 no existe en la pagina 2 con lo cual $_POST['radio2'] no es nada*/
$opcion $_POST['radio2']; /* Aqui de nuevo estas utilizando $_POST['radio2'] y como he dicho antes no tiene ningun valor*/
$opcion2 $_POST['opcion'];/*en la pagina 2 no hay ningun input que sea opcion con lo cual esto estara vacio*/
$opcion4 $_SESSION['radio2'];/* Al haber pisado la variable $_SESSION['radio2'], la cual no tiene valor ahora mismo, $opcion4 tampoco tendra valor*/
$nombre $_POST['nombre'];
$apellido $_POST['apellido'];
$tlf $_POST['tlf'];
$mail $_POST['mail'];
$header 'From: ' $mail " \r\n";
$header .= "X-Mailer: PHP/" phpversion() . " \r\n";
$header .= "Mime-Version: 1.0 \r\n";
$header .= "Content-Type: text/plain";
$mensaje .= "SELECCIÓN DEL CHECKBOX: " $_SESSION['radio2'] . " \r\n\n";/*$_SESSION['radio2'] no tiene valor*/
$mensaje .= "Este mensaje fue enviado por: \r\n\n";
$mensaje .= "Nombre: " $nombre " \r\n";
$mensaje .= "Apellido: " $apellido " \r\n";
$mensaje .= "Telefono: " $tlf " \r\n";
$mensaje .= "Su e-mail es: " $mail " \r\n";
$mensaje .= "Enviado el: " date('d/m/Y'time());
 
$para '[email protected],[email protected]';
$asunto 'SOLICITUD';
 
mail($para$asuntoutf8_decode($mensaje), $header);
echo 
"<script>document.location.href='index.html';</script>\n";   
 
?>
  #10 (permalink)  
Antiguo 23/04/2016, 07:30
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: pasar variables de html a php

Cita:
Voy a poner tu código haciéndole comentarios para que veas donde veo yo los fallos
¿Y por qué no comentaste el fallo de "jamás debes imprimir nada antes de iniciar sesión" eh?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #11 (permalink)  
Antiguo 23/04/2016, 10:48
Avatar de Juan_Enrique  
Fecha de Ingreso: abril-2016
Ubicación: Jerez de la Frontera, Cádiz. España
Mensajes: 6
Antigüedad: 8 años
Puntos: 0
Respuesta: pasar variables de html a php

Cita:
Iniciado por pateketrueke Ver Mensaje
¿Y por qué no comentaste el fallo de "jamás debes imprimir nada antes de iniciar sesión" eh?
No se muy bien a que te refieres pero en todo caso como ya digo comento los fallos que yo veo, claramente puede haber otros fallos o errores.
  #12 (permalink)  
Antiguo 23/04/2016, 11:06
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: pasar variables de html a php

Cita:
No se muy bien a que te refieres
Esto está mal:
Código PHP:
Ver original
  1. <html>
  2.   <head>
  3.     ....
  4.  
  5. <?php
  6. ?>

Cuando debería ser así:
Código PHP:
Ver original
  1. <?php
  2. ?>
  3.  
  4. <html>
  5.   <head>
  6.     ....

Eso se explica perfectamente en el manual, me preocupa que casi nadie lo quiera leer
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #13 (permalink)  
Antiguo 23/04/2016, 11:36
Avatar de Juan_Enrique  
Fecha de Ingreso: abril-2016
Ubicación: Jerez de la Frontera, Cádiz. España
Mensajes: 6
Antigüedad: 8 años
Puntos: 0
Respuesta: pasar variables de html a php

Cita:
Iniciado por pateketrueke Ver Mensaje
Esto está mal:
Código PHP:
Ver original
  1. <html>
  2.   <head>
  3.     ....
  4.  
  5. <?php
  6. ?>

Cuando debería ser así:
Código PHP:
Ver original
  1. <?php
  2. ?>
  3.  
  4. <html>
  5.   <head>
  6.     ....

Eso se explica perfectamente en el manual, me preocupa que casi nadie lo quiera leer
Ciertamente yo también lo pongo al principio, aunque pensaba que mientras fuera lo primero que se ejecutase del php ya valia
  #14 (permalink)  
Antiguo 23/04/2016, 11:58
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: pasar variables de html a php

Cita:
Iniciado por Juan_Enrique Ver Mensaje
pensaba que mientras fuera lo primero que se ejecutase del php ya valia
Precisamente ese es el problema, si no se entiende lo que sucede por detrás pues no se sabe nada.

La cosa es que session_start() al igual que header() y otras funciones son exclusivas para HTTP, me explico:

En HTTP hay cabeceras, las cookies son una cabecera, y las sesiones usan cookies para persistirse: de ahí la relación de las cosas.

Ahora, el HTML forma parte del cuerpo de la respuesta y no de las cabeceras: por eso debe existir un orden cuando se imprimen las cosas:

1. Primero todo lo que interactúe con cabeceras
2. Luego todo el cuerpo, HTML, etc..
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #15 (permalink)  
Antiguo 23/04/2016, 12:46
Avatar de Juan_Enrique  
Fecha de Ingreso: abril-2016
Ubicación: Jerez de la Frontera, Cádiz. España
Mensajes: 6
Antigüedad: 8 años
Puntos: 0
Respuesta: pasar variables de html a php

Cita:
Iniciado por pateketrueke Ver Mensaje
Precisamente ese es el problema, si no se entiende lo que sucede por detrás pues no se sabe nada.

La cosa es que session_start() al igual que header() y otras funciones son exclusivas para HTTP, me explico:

En HTTP hay cabeceras, las cookies son una cabecera, y las sesiones usan cookies para persistirse: de ahí la relación de las cosas.

Ahora, el HTML forma parte del cuerpo de la respuesta y no de las cabeceras: por eso debe existir un orden cuando se imprimen las cosas:

1. Primero todo lo que interactúe con cabeceras
2. Luego todo el cuerpo, HTML, etc..
Pues mucha gracias, desconocía eso a pesar de ponerlo bien sin ser consciente de ello.

Etiquetas: formulario, html, variables
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 01:50.