Comunidad de diseño web y desarrollo en internet online

POST, problemas para pasar variables estre HTML y PHP

Citar            
MensajeEscrito el 08 Jun 2015 12:30 pm
Estimada/os

Soy relativamente nuevo en la programcion de PHP, y tengo un inconveniente con el paso de variables entre HTML y PHP a traves de POST, segun los manuales esta todo bien pero en la practica las variables no las puedo ver, y es por eso que apreciaria mucho de vuestra ayuda
Se trata de un simple formulario de captura de datos de contacto HTML y que luego intento capturar desde PHP para enviar un e-mail con los datos, el e-mail se envia pero con el string vacio, les copio el codigo para ver si alguien me dice donde esta el error,

Desde ya mil gracias.
Jorge

******** codigo HTML de captura de datos **********************
<article class="col1" style="height: 312px">
<form id="ContactForm" action="landing.php" method="post" >
<div>
<div class="wrapper">
<div class="bg">
<input class="input" type="text" id="cnombre" placeholder="Nombre y Apellido" required="" >
</div>
Nombre: </div>
<div class="wrapper">
<div class="bg">
<input class="input" type="email" id="cemail" placeholder="[email protected]" required="" />
</div>
Email: </div>
<div class="wrapper">
<div class="bg">
<input class="input" type="text" id="ctelefono" placeholder="123 4567" required="" >
</div>
Telefono: </div>

<div class="wrapper">
<div class="bg2" style="left: 0px; top: 0px; height: 82px">
<textarea id="cmensaje" name="cmensaje" placeholder="Mensaje" cols="1" rows="1"></textarea>
</div>
Mensaje: </div>
&nbsp; </div>
<input id="submit" class="button" type="submit" name="submit" value="Enviar" style="left: -3px; top: -31px" />
</form>
</article>

***********************************************************************************

******************** Codigo PHP *************************************

<head>
<title>Contacto PHP</title>;
</head>

<body>

<?php

$cnombre = $_POST[‘cnombre’];
$cemail = $_POST[‘cemail’];
$ctelefono = $_POST[‘ctelefono’];
$cmensaje = $_POST[‘cmensaje’];
$mensajecompleto = "Nombre: " . $cnombre . " , Email: " . $cemail . " , Telefono: " . $ctelefono’ . " , Mensaje: " . $cmensaje;


// añadir las librerías necesarias
require('class.phpmailer.php');
require('class.smtp.php');

// instanciar un objeto de la clase
$mail = new PHPMailer();

//A ese objeto envío mediante SMTP.
$mail->IsSMTP();

//Y que vamos a utilizar el envío autentificado.
$mail->SMTPAuth = true;

// formato HTML.
$mail->isHTML(true);

//datos que tiene que utilizar para hacer el envío del correo mediante el protocolo SMTP Autentificado.
$mail->Host = "mail.xxxxx.com.ar";
$mail->Username = "[email protected]";
$mail->Password= "xxxxx";

// nombre de quien hace el envío y la dirección de mail que lo envía.
$mail->From = "[email protected]";
$mail->FromName = "LandingPage";

// el o los correos a los que se le envía el mail.
$mail->AddAddress("[email protected]");

//asunto que llevará el mail.
$mail->Subject = "Landing Page";

//El cuerpo del mensaje,
$mail->Body = $mensajecompleto;

// enviar el correo.

if(!$mail->Send())
{
echo "Envio correcto";
}
else
{
echo "No se pudo enviar el correo electrónico, intentelo de nuevo";
}
// }

?>

</body>

Por NKP

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 08 Jun 2015 02:03 pm
Los tags <input>, <select> y <textarea> deben tener en atributo "name" con valor, es obligatorio, y es por eso que no puedes capturar la petición POST correctamente. Simplemente el navegador no sabe cómo llamar a los parámetros POST porque los elementos del formulario no tienen "name" (no, "id" no es sustituto de "name").

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 08 Jun 2015 09:38 pm
Muchas gracias DriverOP, ya voy a realizar los cambios que mencionabas y te cuento.

Saludos y nuevamente gracias

Por NKP

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 08 Jun 2015 09:56 pm
DriverOp, hice los cambios que me mencionaste y sigue igual, veo que mi capacidad de romper es mas grande de lo pensado ;)

Abusando de tu generosidad, te copio como quedo el codigo.

Nuevamente mil gracias

<form id="ContactForm" action="landing.php" method="post">
<div style="height: 330px">
<div class="wrapper">
<div class="bg">
<input class="input" name="cnombre" type="text" id="cnombre" placeholder="Nombre y Apellido" required="" >
</div>
Name: </div>
<div class="wrapper">
<div class="bg">
<input class="input" name="cemail" type="email" id="cemail" placeholder="[email protected]" required="" />
</div>
Email: </div>
<div class="wrapper">
<div class="bg">
<input class="input" name="ctelefono" type="text" id="ctelefono" placeholder="123 4567" required="" >
</div>
Telefono: </div>
<div class="wrapper">
<div class="bg2">
<textarea id="cmensaje" name="cmensaje" placeholder="Mensaje" cols="1" rows="1"></textarea>
</div>
Message: </div>
<input class="button" id="submit" type="submit" name="submit" value="Enviar" style="left: 0px; top: -4px" />
</div>
</form>

Por NKP

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 09 Jun 2015 07:08 am

NKP escribió:

DriverOp, hice los cambios que me mencionaste y sigue igual, veo que mi capacidad de romper es mas grande de lo pensado ;)

Abusando de tu generosidad, te copio como quedo el codigo.

Nuevamente mil gracias

<form id="ContactForm" action="landing.php" method="post">
<div style="height: 330px">
<div class="wrapper">
<div class="bg">
<input class="input" name="cnombre" type="text" id="cnombre" placeholder="Nombre y Apellido" required="" >
</div>
Name: </div>
<div class="wrapper">
<div class="bg">
<input class="input" name="cemail" type="email" id="cemail" placeholder="[email protected]" required="" />
</div>
Email: </div>
<div class="wrapper">
<div class="bg">
<input class="input" name="ctelefono" type="text" id="ctelefono" placeholder="123 4567" required="" >
</div>
Telefono: </div>
<div class="wrapper">
<div class="bg2">
<textarea id="cmensaje" name="cmensaje" placeholder="Mensaje" cols="1" rows="1"></textarea>
</div>
Message: </div>
<input class="button" id="submit" type="submit" name="submit" value="Enviar" style="left: 0px; top: -4px" />
</div>
</form>

Por NKP

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 09 Jun 2015 12:07 pm
Al inicio del script PHP pon lo siguiente:

Código PHP :

echo '<pre>';
print_r($_POST);
echo '</pre>';

Esto debería mostrarte qué es lo que llega por POST exactamente. Es para diagnóstico.

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 09 Jun 2015 01:30 pm

DriverOp escribió:

Al inicio del script PHP pon lo siguiente:

Código PHP :

echo '<pre>';
print_r($_POST);
echo '</pre>';

Esto debería mostrarte qué es lo que llega por POST exactamente. Es para diagnóstico.

Por NKP

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 09 Jun 2015 09:42 pm
hola. he visto tu codigo php

mira te dare un ejemplo

<html>
<form action="cdphp.php" method="post">

<input type="text" name="variable">
<button type="submit" name="enviar">enviar</button>
</form>
</html>

<?php
//cdphp.php
// para obtener los datos del post
$var=$_POST["variable"];// aqui te veo un probleblas que tu pones las comillas que se utilian en las escrituras de textos intenta utilizar dobles "" o simples '' talves ese sea el problema
echo"$var";
return;// este retur es para que la lectura pare aqui y puedas ver si la varriable $var guardo el dato que obtuvo del formulario

?>

espero te ayude si tienes alguna duda solo la comentes, soy nuevo en este foro pero estare porque aqui

saludos mk02

Por mk02

2 de clabLevel



 

chrome
Citar            
MensajeEscrito el 10 Jun 2015 12:36 pm
Buenos dias

No se porque no estan saliendo mis post, pero hace un par de dias que quiero comentarles que gracias a sus ayudas lo he podido hacer andar; y el ultimo error era el mas tonto, justamente el que menciona mk02, era un problema de las comillas, da verguenza admitirlo pero despues de tantas vueltas el problema era el mas simple.

LEs agradezco a todos el tiempo y dedicacion a resolver mi problema, honestamente muchas gracias.

Saludos
Jorge

Por NKP

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 10 Jun 2015 03:02 pm
estamos para ayudarte, cualquier sonsulta no dudes en hacerla ..

Por mk02

2 de clabLevel



 

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.