Aquí hay otra tarea en la que pienso tanto que algunos de mis clientes no quieren usar la base de datos MySQL para almacenar los datos del formulario de contacto, por lo que quieren un solo archivo donde se almacenan todos los datos del formulario de contacto. Entonces, creo que esta es una tarea interesante porque siempre usamos la base de datos MySQL para almacenar los datos. Pero hoy guardamos los datos del formulario de contacto en un archivo CSV usando PHP .
En primer lugar, creamos un formulario HTML simple con algunos campos relacionados con el contacto y luego usamos el método POST de PHP para el envío de datos.
Puede usar un solo archivo PHP para ejecutar este código fuente completo. Formulario PHP y HTML dentro de un solo archivo PHP.
Cómo ejecutar (guardar los datos del formulario de contacto en un archivo CSV usando PHP)
- Cree un archivo PHP llamado index.php.
- Copie el código PHP a continuación y péguelo en ese archivo.
- Copie el código HTML a continuación y péguelo después del código PHP.
- Luego, ejecute usando el nombre de archivo en el navegador.
Formulario HTML
En este formulario HTML simple, utilizamos el método POST para enviar datos a la variable PHP.
Ahora comprobamos la validación del formulario usando código PHP. Verificando si el campo de nombre solo tiene letras o no y todos los demás campos por el estilo.
Código PHP completo Almacenamiento de datos en CSV y validación
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 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 | <?php $error = ''; $name = ''; $email = ''; $subject = ''; $message = ''; function clean_text($string) { $string = trim($string); $string = stripslashes($string); $string = htmlspecialchars($string); return $string; } if(isset($_POST["submit"])) { if(empty($_POST["name"])) { $error .= '<p><label class="text-danger">Please Enter your Name</label></p>'; } else { $name = clean_text($_POST["name"]); if(!preg_match("/^[a-zA-Z ]*$/",$name)) { $error .= '<p><label class="text-danger">Only letters and white space allowed</label></p>'; } } if(empty($_POST["email"])) { $error .= '<p><label class="text-danger">Please Enter your Email</label></p>'; } else { $email = clean_text($_POST["email"]); if(!filter_var($email, FILTER_VALIDATE_EMAIL)) { $error .= '<p><label class="text-danger">Invalid email format</label></p>'; } } if(empty($_POST["subject"])) { $error .= '<p><label class="text-danger">Subject is required</label></p>'; } else { $subject = clean_text($_POST["subject"]); } if(empty($_POST["message"])) { $error .= '<p><label class="text-danger">Message is required</label></p>'; } else { $message = clean_text($_POST["message"]); } if($error == '') { $file_open = fopen("contact_data.csv", "a"); $no_rows = count(file("contact_data.csv")); if($no_rows > 1) { $no_rows = ($no_rows - 1) + 1; } $form_data = array( 'sr_no' => $no_rows, 'name' => $name, 'email' => $email, 'subject' => $subject, 'message' => $message ); fputcsv($file_open, $form_data); $error = '<label class="text-success">Thank you for contacting us</label>'; $name = ''; $email = ''; $subject = ''; $message = ''; } } ?> |
0 Comentarios
Dejanos tu comentario para seguir mejorando!