Foros del Web » Programando para Internet » PHP »

validar radio button

Estas en el tema de validar radio button en el foro de PHP en Foros del Web. hola! para validar datos de un campo de textos utilizo: $string22 = "Destino de mercadería: " . $HTTP_POST_VARS["Destino"] . "\r\n\r\n"; fputs($DescriptorFichero,$string22); pero esta sentencia no ...
  #1 (permalink)  
Antiguo 21/11/2006, 12:21
Avatar de Il Dody  
Fecha de Ingreso: abril-2005
Ubicación: Argentina
Mensajes: 88
Antigüedad: 19 años
Puntos: 1
Exclamación validar radio button

hola!
para validar datos de un campo de textos utilizo:

$string22 = "Destino de mercadería: " . $HTTP_POST_VARS["Destino"] . "\r\n\r\n";
fputs($DescriptorFichero,$string22);

pero esta sentencia no funciona para los radio button

alguien sabe como corregir el problema? o sea, como puedo capturar los datos de los radio buttons que estan en el HTML...
muchas gracias!!!!

__________________
IL DODY
  #2 (permalink)  
Antiguo 21/11/2006, 12:30
Avatar de korg1988  
Fecha de Ingreso: junio-2006
Ubicación: Santa Fe, Argentina
Mensajes: 825
Antigüedad: 17 años, 10 meses
Puntos: 19
De acuerdo

El nombre del radiobutton deve ser el mismo que usas luego en la variable del archivo donde haces action=

Código HTML:
<input name="variable" type="radio" value="radiobutton"> 
Espero que sea eso de lo que hablas
chau chau
  #3 (permalink)  
Antiguo 21/11/2006, 13:08
Avatar de Il Dody  
Fecha de Ingreso: abril-2005
Ubicación: Argentina
Mensajes: 88
Antigüedad: 19 años
Puntos: 1
no funciona

Gracias korg1988!

probé lo q me dijiste pero no soluciona mi problema! el tema es q no se que poner en el PHP para q me tome lo del HTML.

en el HTML tengo:
<tr>
<td class="style5"><div align="left">Semi-remolque con rampa</div></td>
<td width="23%" colspan="2" class="style5"><input type="radio" name="transporte" value="Semi-remolque con rampa" chequed= "chequed"></td>
</tr>

el error que da luego de cliquear enviar es:
Notice: Undefined variable: transporte in C:\Inetpub\wwwroot\Paginas Web\web\gracias-cotizacion.php on line 155

Notice: Undefined index: descarga in C:\Inetpub\wwwroot\Paginas Web\web\gracias-cotizacion.php on line 158

Mensaje enviado correctamente.

o sea, envia el mail a mi casilla con el txt adjunto pero da ese error cuando no se selecciono alguno de los radiobuttons.las lineas 155 y 158 pertenecen a dos grupos de radiobuttons.

espero me puedan ayudar...
__________________
IL DODY
  #4 (permalink)  
Antiguo 21/11/2006, 13:17
Avatar de korg1988  
Fecha de Ingreso: junio-2006
Ubicación: Santa Fe, Argentina
Mensajes: 825
Antigüedad: 17 años, 10 meses
Puntos: 19
De acuerdo

podrias exponer todo el codigo completo que usas tanto en el formulario como en el archivo php donde haces action= ???
seria de gran ayuda
  #5 (permalink)  
Antiguo 21/11/2006, 13:48
Avatar de Il Dody  
Fecha de Ingreso: abril-2005
Ubicación: Argentina
Mensajes: 88
Antigüedad: 19 años
Puntos: 1
codigo

este es el texto del HTML:

<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
<!--
.style4 { font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #000066;
}
.style5 {font-size: 10px; font-style: normal; color: #000000; text-decoration: none; font-family: Verdana, Arial, Helvetica, sans-serif;}
-->
</style>
</head>

<body>
<table width="470" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="590"><div align="center"> </div>
<table width="470" border="1" align="center" cellpadding="0" cellspacing="0" bordercolor="#002b59" bgcolor="#FFD9B9">
<tr>
<td><form action='gracias.php' method='post' enctype="multipart/form-data" name='formulario' target='_self' id='formulario' onsubmit="return Validar(this)">
<div align="center"></div>
<table width="90%" border="0" align="center" cellpadding="3" cellspacing="0">
<tr valign="top">
<td height="14" colspan="5"><div align="center"><span class="style5"><span class="style4">Los campos marcados con un <strong>*</strong> son obligatorios. </span></span> </div></td>
</tr>
<tr valign="top">
<td height="4" colspan="5"><img src="images/px_azul.gif" width="100%" height="1"></td>
</tr>
<tr>
<td height="0" colspan="5">&nbsp;</td>
</tr>
<tr>
<td height="-1" colspan="5" class="titulo-rojo-bold">DATOS</td>
</tr>
<tr>
<td height="20" class="style5"><div align="right">Operador de la Carga* </div></td>
<td width="245" height="20" colspan="4"><div align="left"><span class="style5">
<input name="Operador" type="text" class="txt" id="Operador" size="40">
</span></div></td>
</tr>
<tr>
<td width="245" colspan="5" class="txt">&nbsp;</td>
</tr>
<tr>
<td colspan="5" class="txt"><div align="center">
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0" bordercolor="#CCCCCC" id="tabla" style=display="none">
<tr>
<td valign="top" class="style5"><FONT
face=Arial size=-1><br>
</FONT>
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td class="style5"><table width="100%" border="0" cellpadding="5" cellspacing="0">
<tr>
<td colspan="3" class="style5"><strong>MEDIO DE TRANSPORTE EN EL QUE INGRESA A LA TERMINAL</strong>* </td>
</tr>
<tr>
<td class="style5"><div align="left">Semi-remolque con rampa</div></td>
<td width="23%" colspan="2" class="style5"><input type="radio" name="transporte" value="Semi-remolque con rampa" chequed= "chequed"></td>
</tr>
<tr>
<td class="style5"><div align="left">Semi-remolque sin rampa&nbsp; </div></td>
<td colspan="2" class="style5"><input type="radio" name="transporte" value="Semi-remolque sin rampa" chequed= "chequed"></td>
</tr>
<tr>
<td class="style5">Carret&oacute;n con rampa </td>
<td colspan="2" class="style5"><input type="radio" name="transporte" value="Carret&oacute;n con rampa"></td>
</tr>
<tr>
<td class="style5">Carret&oacute;n sin rampa </td>
<td colspan="2" class="style5"><input type="radio" name="transporte" value="Carret&oacute;n sin rampa" chequed= "chequed"></td>
</tr>
</table>
<br>
<table width="100%" border="0" cellpadding="5" cellspacing="0">
<tr>
<td colspan="3" class="style5"><strong>La unidad se descarga: </strong></td>
</tr>
<tr>
<td class="style5"><div align="left">Por sus propios medios (rampa propia) </div></td>
<td width="23%" colspan="2" class="style5"><input type="radio" name="descarga" value="Por sus propios medios (rampa propia)" chequed= "chequed"></td>
</tr>
<tr>
<td class="style5"><div align="left">Con asistencia de gr&uacute;a </div></td>
<td colspan="2" class="style5"><input type="radio" name="descarga" value="Con asistencia de gr&uacute;a" chequed= "chequed"></td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
</table>
</div></td>
</tr>
<tr>
<td colspan="5">&nbsp;</td>
</tr>
</table>
<div align="center">
<table width="90%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="64%" height="1"><img src="images/px_azul.gif" width="100%" height="1"></td>
<td width="26%"><div align="center">
<input name="image" type="image" src="images/ima_enviar.gif" width="119" border="0">
</div></td>
<td width="10%"><img src="images/px_azul.gif" width="100%" height="1"></td>
</tr>
</table>
</div>
</form></td>
</tr>
</table></td>
</tr>
</table>
</body>
</html>

y este es el del PHP:

<?php
/* Sistema de envio de mail adjuntos */

$DescriptorFichero = fopen("form.txt","w");

$string0 = "DATOS: " . "\r\n";
fputs($DescriptorFichero,$string0);
$string1 = "Operador: " . $HTTP_POST_VARS["Operador"] . "\r\n";
fputs($DescriptorFichero,$string1);

$string31 = "Medio de transporte en el que ingresa a la terminal: " . $HTTP_POST_VARS["transporte"] . "\r\n\r\n\r\n";
fputs($DescriptorFichero,$string31);

$string32 = "La unidad se descarga: " . $HTTP_POST_VARS["descarga"] . "\r\n\r\n\r\n";
fputs($DescriptorFichero,$string32);

fclose($DescriptorFichero);

require "includes/class.phpmailer.php";
$mail = new phpmailer();
$mail->PluginDir = "includes/";
$mail->Mailer = "smtp";

$mail->Host = "***";
$mail->SMTPAuth = false;
$mail->Username = "***";
$mail->Password = "***";
$mail->From = "***";
$mail->FromName = "Formulario";
$mail->Timeout=50;
$mail->AddAddress("***");
$mail->Subject = "Pedido";
$mail->Body = "Se adjunta el archivo. \n";
$mail->AltBody = "";
$archivo ="form.txt";
$archivo_name = "form.txt";
if ($archivo !="none") {
$mail->AddAttachment($archivo,$archivo_name);
}
$exito = $mail->Send();
$intentos=1;
while ((!$exito) && ($intentos < 5)) {
sleep(5);
//echo $mail->ErrorInfo;
$intentos=$intentos+1;

}

if(!$exito)
{
echo "Problemas enviando correo electrónico";
echo "<br>".$mail->ErrorInfo;
}
else
{
echo "<P>Mensaje enviado correctamente. <BR>
Gracias por contactarse.</strong> </P>";
}
?>

desde ya muchas gracias!
__________________
IL DODY
  #6 (permalink)  
Antiguo 21/11/2006, 14:04
Avatar de korg1988  
Fecha de Ingreso: junio-2006
Ubicación: Santa Fe, Argentina
Mensajes: 825
Antigüedad: 17 años, 10 meses
Puntos: 19
De acuerdo

Prueba de esta manera

1: crea un formulario de este tipo

Código HTML:
<form name="form1" method="post" action="enviar.php">
  <label>
  camiones
  <input name="camiones" type="text" id="camiones">
  </label>
  *campo obligatorio <br>
  <label>
  <input name="opcion" type="radio" value="radiobutton">
  Opcion 1</label>
  <label><br>
  <input name="opcion" type="radio" value="radiobutton">
  Opcion 2<br>
  <input type="submit" name="Submit" value="Enviar">
  </label>
  <p>&nbsp; </p>
</form> 
y luego el archivo enviar.php
Código PHP:
<? 
if(empty($opcion)){
echo 
"no has seleccionado una opcion";
}else{
if(empty(
$camiones)){
echo 
"no has puesto el camion";
}else{
mail("[email protected]","Tu asunto","
$camiones
$opcion
"
,"From: [email protected]");
echo 
"se ha enviado un mail";
}
}
?>
porque supongo que tu solo quieres mandar un mail y comprobar que todo este completo

Última edición por korg1988; 21/11/2006 a las 14:14 Razón: me olvide de poner el asunto
  #7 (permalink)  
Antiguo 22/11/2006, 07:12
Avatar de Il Dody  
Fecha de Ingreso: abril-2005
Ubicación: Argentina
Mensajes: 88
Antigüedad: 19 años
Puntos: 1
no es lo q necesito!

te agradezco mucho korg1988!!!!

Pero yo necesito que como esta sentencia toma los datos de un campo de texto y lo escribe en un archivo txt:

$string1 = "Operador: " . $HTTP_POST_VARS["Operador"] . "\r\n";
fputs($DescriptorFichero,$string1);


necesito una sentencia que tome los valores de un grupo de radio buttons y tbn escriba la opcion seleccionada en el txt; ya que poniendo esta sentencia que pegue mas arriba me da error!

igual gracias!
espero q alguien pueda ayudarme!!
__________________
IL DODY
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 15:34.