Foros del Web » Programando para Internet » PHP »

pasar variable a un formulario

Estas en el tema de pasar variable a un formulario en el foro de PHP en Foros del Web. tengo un script que muestra una ficha con datos de un coche determinado, y hay un campo cuyo valor quiero pasarlo a un formulario de ...
  #1 (permalink)  
Antiguo 24/07/2007, 11:00
Avatar de pereztroff  
Fecha de Ingreso: junio-2002
Ubicación: En la Internet.
Mensajes: 4.068
Antigüedad: 21 años, 10 meses
Puntos: 5
pasar variable a un formulario

tengo un script que muestra una ficha con datos de un coche determinado, y hay un campo cuyo valor quiero pasarlo a un formulario de contactos, pero me he quedado atascado, a ver si me pueden echar una manito.

Desde la ficha quiero enviar el valor de una variable de la siguiente forma al formulario de contacto:

Cita:
<form action="contactar.php" method="get">
<div align="center">
<input type="hidden" value="<?php echo $coche->getReferencia();?>" name="referencia"/>
<input type="submit" value="Contactar por este vehículo" />
</div>
</form>
Ahora como guardo ese valor en una variable en el formulario llamado contactar.php ??? quiero mostrar el valor de esa variable y enviar ese dato por mail junto a otros datos que recolecto con el formulario.

Saludos
  #2 (permalink)  
Antiguo 24/07/2007, 11:43
Avatar de jerkan  
Fecha de Ingreso: septiembre-2005
Mensajes: 1.607
Antigüedad: 18 años, 7 meses
Puntos: 19
Re: pasar variable a un formulario

En contactar.php puedes acceder al valor del campo referencia así:
Código PHP:
$_GET["referencia"
Notar que se utiliza el array superglobal $_GET porque así está especificado en el formulario.

Un saludo
  #3 (permalink)  
Antiguo 24/07/2007, 15:54
Avatar de pereztroff  
Fecha de Ingreso: junio-2002
Ubicación: En la Internet.
Mensajes: 4.068
Antigüedad: 21 años, 10 meses
Puntos: 5
Re: pasar variable a un formulario

Gracias.

Muestro el valor de la siguiente forma dentro del form para enviar la informacion por mail:

<input type="text" name="referencia_desabilitado" disabled="disabled" value="<?php echo $_GET['referencia'];?>"/>
<input type="hidden" name="referencia" disabled="disabled" value="<?php echo $_GET['referencia'];?>"/>



intente guardar el valor de la siguiente forma

$contenido .= "Consulta por: " . $_GET['referencia'] . "\n";

pero cuando envio el mail no muestra el valor, con funcion mail()

¿que puede ser?
  #4 (permalink)  
Antiguo 25/07/2007, 02:04
Avatar de jerkan  
Fecha de Ingreso: septiembre-2005
Mensajes: 1.607
Antigüedad: 18 años, 7 meses
Puntos: 19
Re: pasar variable a un formulario

No sabría decirte. Prueba a mostrarnos todo el código del script.
También puedes comprobar el contenido del array superglobal $_GET con print_r($_GET);
  #5 (permalink)  
Antiguo 25/07/2007, 14:18
Avatar de pereztroff  
Fecha de Ingreso: junio-2002
Ubicación: En la Internet.
Mensajes: 4.068
Antigüedad: 21 años, 10 meses
Puntos: 5
Re: pasar variable a un formulario

Quizas no me explique bien, desde una ficha que muestra datos de un registro quiero pasar un campo esto lo hago de la siguiente forma:

<form action="contactar.php" method="get">
<div align="center">
<input type="hidden" value="<?php echo $coche->getReferencia();?>" name="referencia"/>
<input type="submit" value="Contactar por este vehículo" />
</div>
</form>

Ahora, como guardo el valor de $coche->getReferencia() en una variable dentro de contactar.php??

quiero guardar el valor porque por una parte mostrare el valor de dicha variable y luego tomare datos personales, para enviar posteriormente estos datos personales conjuntamente con el valor de la variable procedente del otro archivo.

El formulario envia el mail a su destino correctamente hasta cierto punto, pero no encuentro la manera de poder enviar el valor de $coche->getReferencia();?>"

Quizas sea una tonteria, por lo que no funcione, pero una ayuda suya sera bienvenida.

Gracias por su paciencia.
  #6 (permalink)  
Antiguo 25/07/2007, 15:35
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Re: pasar variable a un formulario

Jerkan ya te dio la solucion, tienes que usar $_GET.

Saludos.
  #7 (permalink)  
Antiguo 26/07/2007, 02:58
Avatar de pereztroff  
Fecha de Ingreso: junio-2002
Ubicación: En la Internet.
Mensajes: 4.068
Antigüedad: 21 años, 10 meses
Puntos: 5
Re: pasar variable a un formulario

Creo haberos entendido, pero me da errores el codigo, no se que puede fallar, cualquier observacion serva bienvemida. Os pego el codigo del archivo que recepciona el valor, toma datos de la persona interesada y lo envia por mail.


Código PHP:
<?php if (strlen($_GET['accion']=="Enviar")>0){ //Se pulso el botón enviar.
$dato $_GET['referencia'];
    
 
$contenido .= "FORMULARIO ENVIADO \n\n";
 
$contenido .= "----- Interesad@ en vehiculo -----\n";
 
$contenido .= "Consulta por: " $dato "\n";
 
$contenido .= "--------- Datos ------------------\n";
 
$contenido .= "Nombre: " $nombre "\n";
 
$contenido .= "Telefono: " $telefono "\n";
 
$contenido .= "Fax: " $fax "\n";
 
$contenido .= "E-mail: " $e_mail "\n";
 
$contenido .= "Direcci&oacute;n: " $direccion "\n";
 
$contenido .= "Ciudad: " $ciudad "\n";
 
$contenido .= "Provincia: " $provincia "\n";
 
$contenido .= "----------- Observaciones ----------------\n";
 
$contenido .= "Comentarios: " .  $comentarios  "\n";
 
$contenido .= "";

 
mail ("[email protected]""Formulario desde pagina web"$contenido"From: $nombre<$e_mail>" );
    
 echo 
"";

 } else { 
//Todavía no se pulso el botón Enviar. 
echo "<form name=\"frm\" action=\"contactar.php\" method=\"get\">";
     if (
strlen($_GET['referencia'])>0){ 
        echo 
"<input type=\"text\" name=\"referencia_desabilitado\" disabled=\"disabled\" value=\"<?php echo $_GET['referencia'];?>/";
        echo 
"<input type=\"hidden\" name="referencia" disabled="disabled" value="<?php echo $_GET['referencia'];?>"/>";
    }else{ 
        echo "<input type="text" name="referencia" disabled="disabled" value=""/>    ";
     } ?>
    
    
    <tr>
                      <td width="76" class="blanco"><font class="gris2">Nombre:</font></td>
                      <td> <font size="2"><b><font face="Verdana, Arial, Helvetica, sans-serif">
                        <input type="text" name="nombre" class="text_negro" size="20" >
                      </font></b></font></td>
                      <td width="98" class="blanco"><font class="gris2">Direcci&oacute;n:</font></td>
                      <td><font size="2" color="#FFFFFF"><b><font face="Verdana, Arial, Helvetica, sans-serif">
                        <input type="text" name="direccion" class="text_negro" size="20" >
                      </font></b></font> </td>
                    </tr>
                    <tr>
                      <td width="76" class="blanco"><font class="gris2">Tel&eacute;fono:</font></td>
                      <td> <font size="2" color="#FFFFFF"><b><font face="Verdana, Arial, Helvetica, sans-serif">
                        <input type="text" name="telefono" class="text_negro" size="20" >
                      </font></b></font></td>
                      <td width="98" class="blanco"><font class="gris2">Fax:</font></td>
                      <td><b><font face="Verdana, Arial, Helvetica, sans-serif" size="2">
                        <input type="text" name="fax" class="text_negro" size="20" >
                      </font></b> </td>
                    </tr>
                    <tr>
                      <td width="76" class="blanco"><font class="gris2">E-mail:</font></td>
                      <td><b><font face="Verdana, Arial, Helvetica, sans-serif" size="2">
                        <input type="text" name="e_mail" class="text_negro" size="20" >
                      </font></b></td>
                      <td width="98" class="blanco"><font class="gris2">Ciudad:</font></td>
                      <td><b><font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="#FFFFFF">
                        <input type="text" name="ciudad" class="text_negro" size="20" >
                      </font></b> </td>
                    </tr>
                    <tr>
                      <td width="76" class="blanco"><font class="gris2">Provincia.:</font></td>
                      <td><b><font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="#FFFFFF">
                        <input type="text" name="provincia" class="text_negro" size="20" >
                      </font></b></td>
                      <td width="98"><b></b></td>
                      <td><b><font face="Verdana, Arial, Helvetica, sans-serif" size="2"> </font></b> </td>
                    </tr>
                    <tr>
                      <td width="76" valign="top" class="gris2">Observ.<b>:</b></td>
                      <td colspan="3" valign="top"> <b><font face="Verdana, Arial, Helvetica, sans-serif" size="2">
                        <textarea name="comentarios" class="text_negro" cols="45"  rows="5"></textarea>
                      </font></b><b></b> </td>
                    </tr>
                    <tr>
                      <td colspan="2">&nbsp;</td>
                      <td colspan="2">&nbsp;</td>
                    </tr>
        
    <input type="submit" name="accion" value="Enviar" />
    <input type="reset" name="accion" value="Reset" />
</form>
  #8 (permalink)  
Antiguo 26/07/2007, 05:41
Avatar de jerkan  
Fecha de Ingreso: septiembre-2005
Mensajes: 1.607
Antigüedad: 18 años, 7 meses
Puntos: 19
Re: pasar variable a un formulario

La primera línea, en la que pones el strlen no tiene ningún sentido (al menos yo no se lo veo).
Si quieres saber si se pulsó determinado botón de un formulario puedes hacerlo así:
Código PHP:
if( isset($_GET["BotonName"]) )
{
...

  #9 (permalink)  
Antiguo 26/07/2007, 09:02
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Re: pasar variable a un formulario

Dices que te da errores pero no dices que error, aparte tienes errores de sintaxis en esta linea:
Código PHP:
echo "<input type=\"hidden\" name="referencia" disabled="disabled" value="<?php echo $_GET['referencia'];?>"/>";
Debe de ser asi:
Código PHP:
echo "<input type=\"hidden\" name=\"referencia\" disabled=\"disabled\" value=\"" $_GET['referencia'] ."\"/>"
Saludos.
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 17:39.