Foros del Web » Programando para Internet » PHP »

!Urgente

Estas en el tema de !Urgente en el foro de PHP en Foros del Web. Hola a todos, he estado teniendo problemas con un codigo php que antes si me funciono y ahora no. El php lo que hacia era ...
  #1 (permalink)  
Antiguo 11/08/2010, 03:01
 
Fecha de Ingreso: agosto-2010
Mensajes: 5
Antigüedad: 13 años, 8 meses
Puntos: 0
Exclamación !Urgente

Hola a todos, he estado teniendo problemas con un codigo php que antes si me funciono y ahora no.
El php lo que hacia era recoger lo datos de un formulario y enviarlos por correo; ahora que lo he probado con otro formulario no funciona, no llega el correo.
Este es el codigo php:
<?
//se mandan a llamar las variables del form con metodo POST
$nombre = $_POST["nom"];
$telefono = $_POST["tel"];
$email = $_POST["email"];
$provincia = $_POST["provincia"];
$ciudad = $_POST["city"];
$servicio = $_POST["servicio"];
$fecha = $_POST["fecha"];
$comentario = $_POST["comentario"];


//se incluyen las variables del form en el mensaje
$mensaje .="Nombre:". $nombre ."\n";
$mensaje .="Telefono: ".$telefono." \n";
$mensaje .="Email:".$email." \n";
$mensaje .="Provincia:". $provincia ."\n";
$mensaje .="Ciudad:". $ciudad ."\n";
$mensaje .="Servicio:". $servicio ."\n";
$mensaje .="Fecha:". $fecha ."\n";
$mensaje .="Comentario: ".$comentario." \n";

$cabeceras = "From:<$email>\n";

$body_top = "--Message-Boundary\n";
$body_top .= "Content-type: text/plain;charset=US-ASCII\n";
$body_top .= "Content-transfer-encoding: 7BIT\n";
$body_top .= "Content-description: Mail messagebody\n\n";
$cuerpo = $mensaje;

//cuenta de correo a donde llegara el formulario
$destino = '[email protected]';

echo ("<center><b><font size='5' color='#66FF00'
face='Comic Sans MS'>");

if (mail($destino,$origen,$cuerpo,$cabeceras))
{
echo ("SU MENSAJE A SIDO ENVIADO");
} else {
echo ("ERROR. POR FAVOR INTENTE MAS TARDE");
}

echo ("</center></font></b>");

?>
Luego en el formulario HTML tengo esto:
body {
background-image: url(puntofondo.png);
background-repeat: repeat;
}
-->
</style>
</head>
<body id="main_body" >

<img id="top" src="top.png" alt="">
<div id="form_container">

<h1><a>Untitled Form</a></h1>
<div id="logolotus"><img src="logolotus.png" width="159" height="60" /></div>
<form id="form1" class="appnitro" name="form1" method="post" action="enviar.php">
<div class="form_description">
<h2>Opción 1 (Descuento por ¢1.500) </h2>
<p>Porfavor introduzca toda la información que se le pide,</p>
<p>ingresando información real. </p>
</div>
<ul >

<li id="li_1" >
<label class="description" for="element_1">Nombre Completo </label>
<div>
<input name="name" type="text" class="element text large" id="name" value="" size="20" maxlength="20"/>
</div>
</li> <li id="li_2" >
<label class="description" for="element_2">Teléfono </label>
<div>
<input name="tel" type="text" class="element text medium" id="tel" value="" size="15" maxlength="15"/>
</div>
</li> <li id="li_3" >
<label class="description" for="element_3">Email (Correo Electrónico) </label>
<div>
<input name="email" type="text" class="element text medium" id="email" value="" size="20" maxlength="20"/>
</div>
</li> <li id="li_6" >
<label class="description" for="element_6">Provincia </label>
<div>
<select class="element select medium" id="provincia" name="provincia">
<option value=""></option>
<option value="1" selected="selected" >San José</option>
<option value="2" >Alajuela</option>
<option value="3" >Cartago</option>
<option value="4" >Heredia</option>
<option value="5" >Puntarenas</option>
<option value="6" >Guanacaste</option>
<option value="7" >Limón</option>
</select>
</div>
</li> <li id="li_4" >
<label class="description" for="element_4">Ciudad (Dirección) </label>
<div>
<input name="city" type="text" class="element text large" id="city" value="" size="15" maxlength="15"/>
</div>
</li> <li id="li_7" >
<label class="description" for="element_7">Servicio Requerido </label>
<span>
<input name="arreglos" type="radio" class="element radio" id="element_7_1" value="1" />
<label class="choice" for="element_7_1">Arreglos Florales</label>
<input id="element_7_2" name="centros" class="element radio" type="radio" value="2" />
<label class="choice" for="element_7_2">Centros de Mesa</label>
<input id="element_7_3" name="ramos" class="element radio" type="radio" value="3" />
<label class="choice" for="element_7_3">Ramos</label>
</span>
</li> <li id="li_5" >
<label class="description" for="element_5">Fecha a disponer (Servicio Requerido) </label>
</li>

<li >
<label>
<input name="fecha" type="text" id="fecha" size="15" maxlength="15" />
</label>
<script type="text/javascript">
Calendar.setup({
inputField : "element_5_3",
baseField : "element_5",
displayArea : "calendar_5",
button : "cal_img_5",
ifFormat : "%B %e, %Y",
onSelect : selectEuropeDate
});
</script>
</li>
<li class="buttons">
<input type="hidden" name="form_id" value="296536" />

<input id="saveForm" class="button_text" type="submit" name="enviar" value="Enviar" />
<input id="enviar" class="button_text" type="reset" name="borrar" value="Borrar" />
</li>
</ul>
</form>
<div id="footer">Generado por Klubvirtual </div>
</div>
<img id="bottom" src="bottom.png" alt="">
</body>
</html>
Si alguien me puede guiar en donde esta el error se lo agradeceria mucho.
Gracias
  #2 (permalink)  
Antiguo 11/08/2010, 03:21
Avatar de kalebra  
Fecha de Ingreso: mayo-2010
Ubicación: Marbella
Mensajes: 44
Antigüedad: 14 años
Puntos: 5
Respuesta: !Urgente

Buenas que tal, el formulario y el envió funciona perfectamente, lo único que he cambiado es que en vez de:
Código PHP:
<?
He puesto:
Código PHP:
<?php
Y donde pones:
Código PHP:
$nombre $_POST["nom"
En el formulario esta como “name” tienes que poner:
Código HTML:
<input name="nom" type="text" class="element text large" id="name" value="" size="20" maxlength="20"/> 
He probado y envía el correo, lo que no envía todos los datos, eso habría que mirar los demás INPUTS haber donde está el fallo, pero que se envía y recibe bien.
Saludos
__________________
- La única causa perdida, es la que se abandona.
  #3 (permalink)  
Antiguo 11/08/2010, 04:13
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: !Urgente

Aparte de poner <?php como bien te han dicho, fíjate en una pequeñez. la variable $mensaje no la tienes inicializada. La concatenas directamente:

$mensaje .="Nombre:". $nombre ."\n";

Es posible que te aparezca Notice: Undefined variable: mensaje y no te coga el cuerpo del mensaje.

Te recomiendo que le quites el .= por un = a la primera línea o bien la inicializes vacía.

$mensaje ="Nombre:". $nombre ."\n";
$mensaje .="Telefono: ".$telefono." \n";
....

O:

$mensaje ="";
$mensaje .="Nombre:". $nombre ."\n";
$mensaje .="Telefono: ".$telefono." \n";

Un Saludo.
  #4 (permalink)  
Antiguo 11/08/2010, 04:58
 
Fecha de Ingreso: agosto-2010
Mensajes: 5
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: !Urgente

Ok voy a probar a ver que tal. Gracias por las respuestas!
  #5 (permalink)  
Antiguo 11/08/2010, 05:18
 
Fecha de Ingreso: agosto-2010
Mensajes: 5
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: !Urgente

otra consulta, como puedo agarrar los datos del select y del radio del formulario?
  #6 (permalink)  
Antiguo 11/08/2010, 05:31
Avatar de xhiena  
Fecha de Ingreso: enero-2008
Ubicación: Valencia
Mensajes: 34
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: !Urgente

Cita:
Iniciado por as8989 Ver Mensaje
otra consulta, como puedo agarrar los datos del select y del radio del formulario?
Igual que los text,

el valor del select será el option que esté seleccionada (si el option no tiene value es el texto)
<option value="valor">texto</option>
y el nombre a recojer es el del select (<select name="...">)


y de los radios les tienes que poner un value
<input type="radio" name="nombre" value="valor">
y el valor a recojer es el name.

Etiquetas: Ninguno
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 04:37.