PHP - No me registra formulario, pero no me dice el error.

 
Vista:

No me registra formulario, pero no me dice el error.

Publicado por Josue (2 intervenciones) el 10/04/2018 16:51:21
Quiero hacer un código que envié un mensaje y que a su vez cree un registro de los mismos datos ingresados al formulario, pero la función dicha de registro realmente no hace nada y no me indica en donde está el error, simplemente se envía el mensaje.

¿Me pueden decir si estoy haciendo mal el llamado de los campos o falto definir algo?, es la primera vez que intento hacer esto y la verdad probablemente es un detalle que se me esta pasando. SE LOS AGRADECERÍA.


CÓDIGO CONEXIÓN [conex.php]:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
$servidor = "localhost:3306";
$usuario = "Josue";
$contraseña = "prueba";
$bd = "prueba";
 
//Local - Usuario:- contraseña - Basededatos 
$conex=mysqli_connect($servidor,$usuario,$contraseña) or die ('sin conexion'.mysql_errno());
echo "";
 
//if($conex->connect_errno)
//{
//exit();
//}
//else{
//print("conexion exitosa");
//}
 
 
?>

CÓDIGO REGISTRO [formulario.php], REALMENTE VA INCLUIDO DENTRO DEL MISMO FORMULARIO (al inicio), PERO LO SEPARO PARA QUE SE PUEDE APRECIAR MEJOR (No hace dicha función y no me indica fallos para corregir);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?php
require_once("conexion/conex.php");
 
if(isset($_POST["send"])) {
 
$emisorname = $_POST['customer_name']; //Nombre del EMISOR
$emisoremail = "gtaulises@gmail.com"; //Correo electronico saliente, EMISOR.
$receptoremail = $_POST['customer_email']; //Correo electronico saliente, RECEPTOR.
$asunto = $_POST['subject']; //Correo electronico saliente, EMISOR.
$mensaje = $_POST['message']; //Correo electronico saliente, EMISOR.
 
ini_set('date.timezone','America/Mazatlan'); //FECHA
$hoy = date("j/n/Y g:i:s A"); //NUEVA VARIABLE FECHA, NO EN FORMULARIO.
 
 
 mysqli_select_db($conex, $bd) or die ("Error al conectar base de datos");  //Condicion si falla la base de datos
 $query=mysqli_query($conex, "SELECT * FROM proyecto  WHERE Fecha='".$hoy."'"); //Verifica correo existente, puedes agregar/remplazar por usuario
 $numrows=mysqli_num_rows($query);
 
 if($numrows==0)
 {
 $sql= "INSERT INTO proyecto
 (EnviadoPor, DeEmail, AlEmail, Fecha, Asunto, Mensaje)
 VALUES('$emisorname','$emisoremail', '$receptoremail', '$hoy', '$asunto', '$mensaje')";
 
 }
}
?>

CÓDIGO FORMULARIO (FUNCIONA), CONFUNDE UN POCO PORQUE APARTE TIENE LA FUNCIÓN DE ENVIAR MENSAJE [formulario.php] .


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<!DOCTYPE HTML>
<html>
<body>
<!--Cuadro formulario-->
 
<h1>Formulario de contacto</h1>
<div class="contact">
	<div class="contact-main">
 
	<form action = "formulario.php" method = "POST" >
 
	    <h3>Emisor</h3>
		<input type="text" placeholder="Nombre" class="hola"  name="customer_name" required />
 
		<h3>Receptor</h3>
		<input type="text" placeholder="Nombre" class="hola"  name="customer_sname" required />
 
		<h3>Email</h3>
		<input type="email" placeholder="Usuario@gmail.com" class="hola"  name="customer_email" required />
 
		<h3>Asunto</h3>
 
		<input type="text" placeholder="Escribe Asunto aqui ..." class="hola"  name="subject" required />
		<h3>Mensaje</h3>
 
		<textarea  name="message" placeholder="Escribe tu mensaje aqui ..." required /></textarea>
 
		<?php
			if (isset($_POST['send'])){
				include("sendemail.php");//Mando a llamar la funcion que se encarga de enviar el correo electronico
 
				/*Configuracion de variables para enviar el correo*/
				$mail_username="gtaulises@gmail.com"; //Correo electronico saliente, EMISOR.
				$mail_userpassword="gtasosa1";//Contraseña, para logear en ella.
				$mail_addAddress=$_POST['customer_email'];//correo electronico que recibira el mensaje, otro ejemplo; "gt-ulises@hotmail.com";
				$template="email_template.html";//Ruta de la plantilla HTML para enviar nuestro mensaje
 
				/*Inicio captura de datos enviados por $_POST para enviar el correo */
				$mail_setFromEmail=$_POST['customer_email'];
				$mail_setFromName=$_POST['customer_name'];
                $mail_setFromsName=$_POST['customer_sname'];
				$txt_message=$_POST['message'];
				$mail_subject=$_POST['subject'];
 
				sendemail($mail_username,$mail_userpassword,$mail_setFromEmail,$mail_setFromName,$mail_setFromsName,$mail_addAddress,$txt_message,$mail_subject,$template);//Enviar el mensaje
			}
		?>
	</div>
	<div class="enviar">
		<div class="contact-check">
 
		</div>
        <div class="contact-enviar">
		  <input type="submit" value="Enviar mensaje" name="send">
		</div>
		<div class="clear"> </div>
		</form>
</div>
</div>
 
</body>
</html>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro
Val: 1.510
Plata
Ha disminuido 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

No me registra formulario, pero no me dice el error.

Publicado por Alejandro (598 intervenciones) el 10/04/2018 22:40:37
No veo en que momento ejecutas el query del insert
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 20
Ha aumentado su posición en 4 puestos en PHP (en relación al último mes)
Gráfica de PHP

No me registra formulario, pero no me dice el error.

Publicado por Simon (6 intervenciones) el 11/04/2018 14:10:04
La linea de codigo para conectarse a una base de datos es la siguiente:

1
$variable = msqli_connect("servidor","usuario","contraseña","base de datos");

habria mas formas pero si vas a trabajar con la misma base de datos todo el tiempo recomendaria de esta forma
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar