Foros del Web » Programando para Internet » PHP »

algo malo con el codigo php

Estas en el tema de algo malo con el codigo php en el foro de PHP en Foros del Web. no soy un experto en php, en realidad no se nada, y necesitaba realizar un formulario de contacto, encontre una web e el cual explican ...
  #1 (permalink)  
Antiguo 20/08/2015, 21:47
 
Fecha de Ingreso: julio-2015
Mensajes: 2
Antigüedad: 8 años, 9 meses
Puntos: 0
algo malo con el codigo php

no soy un experto en php, en realidad no se nada, y necesitaba realizar un formulario de contacto, encontre una web e el cual explican como hacer uno pero parece que hay algo malo en el php por que me muestra un error en la linea:

$para = '[email protected]';

les dejo todo el codigo php y el ink a la pagina para que lo vean....

<?php
$nombre = $_POST[‘nombre’];
$email = $_POST[’email’];
$mensaje = $_POST[‘mensaje’];
$para = '[email protected]';
$titulo = 'ASUNTO DEL MENSAJE';
$header = 'From: ' . $email;
$msjCorreo = 'Nombre: $nombre\n E-Mail: $email\n Mensaje:\n $mensaje';

if ($_POST[‘submit’]) {
if (mail($para, $titulo, $msjCorreo, $header)) {
echo “<script language=’javascript’>
alert(‘Mensaje enviado, muchas gracias.’);
window.location.href = ‘http://TUSITIOWEB.COM';
</script>”;
} else {
echo ‘Falló el envio';
}
}
?>

el link:
http://www.manuelbaronetti.com.ar/blog/2013/02/facil-y-simple-formulario-de-contacto-con-html5-css-y-php/


saludos y gracias
  #2 (permalink)  
Antiguo 21/08/2015, 08:22
Avatar de skaa  
Fecha de Ingreso: agosto-2015
Mensajes: 1
Antigüedad: 8 años, 8 meses
Puntos: 0
Respuesta: algo malo con el codigo php

Correr solo esto, por favor:
Código HTML:
<?php
$nombre=@$_POST["nombre"];
$email=@$_POST["email"];
$mensaje=@$_POST["mensaje"];
echo("OK");
?> 
  #3 (permalink)  
Antiguo 21/08/2015, 09:09
Avatar de Uncontroled_Duck
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Málaga [Spain]
Mensajes: 806
Antigüedad: 13 años
Puntos: 261
Respuesta: algo malo con el codigo php

Cita:
Iniciado por skaa Ver Mensaje
Correr solo esto, por favor:
Código HTML:
<?php
$nombre=@$_POST["nombre"];
$email=@$_POST["email"];
$mensaje=@$_POST["mensaje"];
echo("OK");
?> 
Hay soluciones más efectivas que usar la @. Es mejor tratar los errores que ocultarlos.

Código PHP:
// para false se puede utilizar null | '' | false  o cualquier otra
$nombre = ( isset($_POST["nombre"]) )? $_POST["nombre"] : 'no definida'
Operador ternario
http://php.net/manual/es/language.op...comparison.php

Saludos,
__________________
Todos agradeceremos que pongas el código en su respectivo Highlight
  #4 (permalink)  
Antiguo 21/08/2015, 20:05
 
Fecha de Ingreso: julio-2015
Mensajes: 2
Antigüedad: 8 años, 9 meses
Puntos: 0
Respuesta: algo malo con el codigo php

Uncontroled_Duck la verdad no te entendi como arreglarlo.

el problema que me muestra el codigo es en la linea donde tengo que poner mi correo.

les dejo marcado con rojo lo que me muestra que tiene un error, yo creo que tiene que ver con las comillas

<?php
$nombre = $_POST[‘nombre’];
$email = $_POST[’email’];
$mensaje = $_POST[‘mensaje’];
$para = '[email protected]';
$titulo = 'ASUNTO DEL MENSAJE';
$header = 'From: ' . $email;
$msjCorreo = 'Nombre: $nombre\n E-Mail: $email\n Mensaje:\n $mensaje';

if ($_POST[‘submit’]) {
if (mail($para, $titulo, $msjCorreo, $header)) {
echo “<script language=’javascript’>
alert(‘Mensaje enviado, muchas gracias.’);
window.location.href = ‘http://TUSITIOWEB.COM';
</script>”;

} else {
echo ‘Falló el envio';
}
}
?>
  #5 (permalink)  
Antiguo 22/08/2015, 05:10
Avatar de Uncontroled_Duck
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Málaga [Spain]
Mensajes: 806
Antigüedad: 13 años
Puntos: 261
Respuesta: algo malo con el codigo php

Cita:
Iniciado por markobarraza Ver Mensaje
Uncontroled_Duck la verdad no te entendi como arreglarlo.
No puse nada de como arreglarlo, solo comenté una recomendación para tratar errores. Las "@" para ocultar errores es una práctica habitual de los códigos espagueti, donde lejos de solucionar problemas, puede aportarlos en el futuro sin posibilidad de adivinar de donde viene, ya que no lanza errores...

Cita:
Iniciado por markobarraza Ver Mensaje
yo creo que tiene que ver con las comillas
Seguro que es uno de los motivos. Lee algo acerca de como usar las comillas en PHP, hay ciertas diferencias.
Código PHP:
// no es lo mismo esto:
$msjCorreo 'Nombre: $nombre\n E-Mail: $email\n Mensaje:\n $mensaje';
// que esto:
$msjCorreo = `Nombre: $nombre\n E-Mail: $email\n Mensaje:\n $mensaje´;

// ni esto:
$msjCorreo = "Nombre: $nombre\n E-Mail: $email\n Mensaje:\n $mensaje";
// que esto:
$msjCorreo = ˝Nombre: $nombre\n E-Mail: $email\n Mensaje:\n $mensaje˝; 
Y la respuesta está en el tipo de comillas.

Dale un vistazo y nos cuentas.

Saludos,
__________________
Todos agradeceremos que pongas el código en su respectivo Highlight
  #6 (permalink)  
Antiguo 22/08/2015, 09:18
 
Fecha de Ingreso: agosto-2010
Ubicación: santiago, CHILE
Mensajes: 564
Antigüedad: 13 años, 8 meses
Puntos: 9
Respuesta: algo malo con el codigo php

Estimado,

Cambia por doble comillas, ademas la variable dentro de comilla simple visualiza las variables como string

bye,

Etiquetas: formulario, malo
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 03:10.