tome como base el formulario de
http://www.w3schools.com/php/showphp.asp?filename=demo_form_validation_complete
Código :
<!doctype html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Formulario de Contacto</title> </head> <body> <div class="formulario_imc"> <?php // define variables and set to empty values $apellido = $nombre = $telefono = $email = $distrito = $objetivo = $mensaje = $form_ok = ""; $telefono_Err = $email_Err = ""; $telefonoclass = $email_class = ""; if ($_SERVER["REQUEST_METHOD"] == "POST") { $form_ok = TRUE; //verifica que el formulario esta ok if (empty($_POST["telefono"])) { $telefono_Err = "Ingresa tu número telefónico"; $telefono_class = "has-error"; $form_ok = FALSE; } else { $telefono = test_input($_POST["telefono"]); // check if phone only contains numbers if (!preg_match("/^[0-9]*$/",$telefono)) { $telefono_Err = "Solo se permiten números"; $telefono_class = "has-error"; $form_ok = FALSE; } } if (empty($_POST["email"])) { $emailErr = "Ingresa tu email"; $email_class = "has-error"; $form_ok = FALSE; } else { $email = test_input($_POST["email"]); // check if e-mail address is well-formed if (!filter_var($email, FILTER_VALIDATE_EMAIL)) { $emailErr = "Ingresa un correo válido"; $email_class = "has-error"; $form_ok = FALSE; } } if (empty($_POST["apellido"])) { $apellido = ""; } else { $apellido = test_input($_POST["apellido"]); } if (empty($_POST["nombre"])) { $nombre = ""; } else { $nombre = test_input($_POST["nombre"]); } if (empty($_POST["distrito"])) { $distrito = ""; } else { $distrito = test_input($_POST["distrito"]); } if (empty($_POST["objetivo"])) { $objetivo = ""; } else { $objetivo = test_input($_POST["objetivo"]); } if (empty($_POST["mensaje"])) { $mensaje = ""; } else { $mensaje = test_input($_POST["mensaje"]); } } function test_input($data) { $data = trim($data); $data = stripslashes($data); $data = htmlspecialchars($data); return $data; } //despues de verificar el contenido del formulario if($form_ok) { $to_in = "[email protected]"; $subject_in = "Nuevo Cliente registrado:".$apellido.", ".$nombre." (".$email.") " ; $message_in = " <html> <html> <head> <title>Nuevo Cliente registrado</title> <style> table, tr, th, td { border: 1px; } th { background:#000; color:#FFF; } table { width:100%; } </style> </head> <body> <table> <tr> <th>Categoría</th> <th>Apellidos y nombre</th> <th>Teléfono</th> <th>Email</th> <th>Distrito</th> <th>Objetivo</th> </tr> <tr> <td>".$categoria."</td> <td>".$apellido.",".$nombre."</td> <td>".$telefono."</td> <td>".$email."</td> <td>".$distrito."</td> <td>".$objetivo."</td> </tr> </table> <table> <tr> <th>Mensaje</th> </tr> <tr> <td>".$mensaje."</td> </tr> </table> </body> </html> "; $subject_out .= "Confirmación de recepción de mensaje" ; $message_out .= " <html> <head> <title>Confirmación de recepción de mensaje</title> </head> <body> <p><strong>Confirmación de recepción de mensaje</strong></p> <p>Hemos recibido tu mensaje, nos comunicaremos contigo en un plazo máximo de 48 horas.</p> <p></p> <p>Atentamente</p> </body> </html> " ; $headers_in = "MIME-Version: 1.0" . "\r\n"; $headers_in .= 'From: web Server <[email protected]>' . "\r\n" ; $headers_in .= "Content-type:text/html;charset=UTF-8" . "\r\n"; $headers_out = "MIME-Version: 1.0" . "\r\n"; $headers_out .= 'From: web <[email protected]> ' . "\r\n" ; $headers_out .= 'Reply-To: [email protected]' . "\r\n"; $headers_out .= "Content-type:text/html;charset=UTF-8" . "\r\n"; "X-Mailer: PHP/" . phpversion(); $mail_in = mail($to_in,'=?utf-8?B?'.base64_encode($subject_in).'?=',$message_in,$headers_in); $mail_out= mail ($email,'=?utf-8?B?'.base64_encode($subject_out).'?=',$message_out,$headers_out); if ($mail_in) { require("../admin/settings.php"); $categoria=$_POST['categoria']; $apellido=$_POST['apellido']; $nombre=$_POST['nombre']; $telefono=$_POST['telefono']; $email=$_POST['email']; $distrito=$_POST['distrito']; $objetivo=$_POST['objetivo']; $mensaje=$_POST['mensaje']; $opcion_1="no_determinado"; $opcion_2="no_determinado"; $fecha_registro=$_POST['fecha_registro']; $fecha_contacto=""; $insertar= "INSERT INTO contactos ( categoria, apellido, nombre, telefono, email, distrito, objetivo, mensaje, opcion_1, opcion_2, fecha_registro, fecha_contacto ) VALUES ( '$categoria', '$apellido', '$nombre', '$telefono', '$email', '$distrito', '$objetivo', '$mensaje', '$opcion_1', '$opcion_2', '$fecha_registro', '$fecha_contacto' )"; if (mysqli_query($conn, $insertar)) { //echo "Registro creado con éxito"; } else { echo "Error: " . $insertar . "<br>" . mysqli_error($conn); } mysqli_close ($conn); ?> <div class="email_table"> <div class="email_table_cell"> <p><span class="btn btn-success">Registro completado</span></p> <p>Se enviaron los datos satisfactoriamente, muy pronto nos pondremos en contacto contigo!</p> </div> </div> <?php }} else { { ?> <p>Solicita mayor información y con gusto te responderemos.</p> <form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" method="post" enctype="multipart/form-data" name="calculadora_imc"> <div class="form-group"> <label for="apellido">Apellido</label> <input type="text" class="form-control input-sm" nombre="apellido" id="apellido" placeholder="Apellido" value="<?php echo $apellido;?>" > </div> <div class="form-group"> <label for="nombre">Nombre</label> <input type="text" class="form-control input-sm" nombre="nombre" id="nombre" placeholder="Nombre" value="<?php echo $nombre;?>" > </div> <div class="form-group <?php echo $telefono_class;?>"> <label for="telefono">Telefono</label> <span class="error"> * <?php echo $telefono_Err;?></span> <input type="text" class="form-control input-sm has-error" name="telefono" id="telefono" placeholder="Telefono" value="<?php echo $telefono;?>"> </div> <div class="form-group <?php echo $email_class;?>"> <label for="email">Email</label> <span class="error"> * <?php echo $email_Err;?></span> <input type="text" class="form-control input-sm has-error" name="email" id="email" placeholder="Email" value="<?php echo $email;?>"> </div> <div class="form-group"> <label for="distrito">Distrito</label> <input type="text" class="form-control input-sm" nombre="distrito" id="distrito" placeholder="Distrito" value="<?php echo $distrito;?>" > </div> <div class="form-group"> <label for="objetivo">Objetivo</label> <select class="form-control input-sm" nombre="objetivo" id="objetivo" > <option value="<?php echo $objetivo;?>" selected><?php echo $objetivo;?></option> <option value="Reducción de grasa corporal">Reducción de grasa corporal</option> <option value="Aumento de masa muscular">Aumento de masa muscular</option> <option value="Tonificación">Tonificación</option> <option value="Mejora de energía">Mejora de energía</option> <option value="Bienestar físico y emocional">Bienestar físico y emocional</option> <option value="Coordinación">Coordinación</option> <option value="Otros">Otros</option> </select> </div> <div class="form-group"> <label for="mensaje">Mensaje</label> <textarea class="form-control input-sm " nombre="mensaje" id="mensaje" placeholder="Mensaje" rows="3"><?php echo $mensaje;?></textarea> </div> <p><span class="error"> * Datos mínimos requeridos</span></p> <input class="btn btn-primary btn-sm" type="submit" name="enviar" id="enviar" value="Enviar"/> <input id="categoria" name="categoria" type="hidden" value="Cliente" > <input id="fecha_registro" name="fecha_registro" type="hidden" value="<?php echo date("Y-m-d")?>"> </form> <?php } }//end of else block ?> </div> </body> </html>