Formulaire php : page blanche apres validation
Résolu
Fradat
-
Fradat -
Fradat -
Bonjour à tous,
Je poste ce topic car en utilisant un formulaire php pour s'inscrire à ma newsletter, lorsque les visiteurs entrent leur adresse mail et cliquent sur s'inscrire, leur adresse mail est bien enregistrée dans un fichier texte sur mon serveur (et envoyé par courriel vers une adresse mail créée pour), mais cela les renvoie vers une page blanche (url : monsite/subscribe.php).
Comment puis-je faire pour que lorsqu'ils cliquent sur s'inscrire, le fichier subscrire.php ne s'ouvre pas ?
Merci d'avance pour vos réponses =)
Je poste ce topic car en utilisant un formulaire php pour s'inscrire à ma newsletter, lorsque les visiteurs entrent leur adresse mail et cliquent sur s'inscrire, leur adresse mail est bien enregistrée dans un fichier texte sur mon serveur (et envoyé par courriel vers une adresse mail créée pour), mais cela les renvoie vers une page blanche (url : monsite/subscribe.php).
Comment puis-je faire pour que lorsqu'ils cliquent sur s'inscrire, le fichier subscrire.php ne s'ouvre pas ?
Merci d'avance pour vos réponses =)
A voir également:
- Php confirmer le nouvel envoi du formulaire
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook compte désactivé - Guide
- Envoi impossible messenger - Forum Facebook Messenger
- Formulaire de reclamation instagram - Guide
- Votre envoi est sur son site de distribution. nous le préparons pour le mettre en livraison ✓ - Forum Consommation & Internet
4 réponses
Salut
le fichier subscrire.php c'est sans doute le fichier de traitement du formulaire donc c'est obligé de l'ouvrir
dans ce fichier tu peux aussi y mettre du contenu html
après tu ne donne aucune indication donc impossible de t'aider plus
Un petit merci vaut mieux qu'une grande ignorance !
Donc si votre sujet est résolu une réponse avec merci c'est pas de refus.
le fichier subscrire.php c'est sans doute le fichier de traitement du formulaire donc c'est obligé de l'ouvrir
dans ce fichier tu peux aussi y mettre du contenu html
après tu ne donne aucune indication donc impossible de t'aider plus
Un petit merci vaut mieux qu'une grande ignorance !
Donc si votre sujet est résolu une réponse avec merci c'est pas de refus.
Bonjour,
Tu peux mettre le code de traitement php directement dans la même page que ton formulaire.
Il suffit alors de remplacer l'attribut action de ton formulaire (qui doit surement, actuellement, contenir : subscrire.php ) par :
Le plus simple serait que tu nous montres ton code actuel.
NB: **** Attention ****
Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
.
Cordialement,
Jordane
Tu peux mettre le code de traitement php directement dans la même page que ton formulaire.
Il suffit alors de remplacer l'attribut action de ton formulaire (qui doit surement, actuellement, contenir : subscrire.php ) par :
action = ""
Le plus simple serait que tu nous montres ton code actuel.
NB: **** Attention ****
Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
.
Cordialement,
Jordane
Merci pour vos réponses, voici le code actuel du fichier php :
et voici le code html précédent le bouton "s'inscrire" :
EDIT : Ajout du LANGAGE dans les balises de code (la coloration syntaxique).
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Merci d'y penser dans tes prochains messages.
.
.
<?php /** * Subscription Form Configuration for PHP5 * * You have three options: * 1) Save subscriber email to a txt file * 2) Send subscriber email to your email account * 3) Save subscriber email to database (MySQL) * * Usage: Set "TRUE" or "FALSE" to option you like to enable or disable * Note: You can choose more than one option if you like! * */// Save subscriber email to a txt file, set TRUE or FALSE$saveTxt =TRUE; // Send subscriber email to your email account, set TRUE or FALSE$sendEmail = TRUE;// Save subscriber email to database (MySQL), set TRUE or FALSE$saveMySQL = FALSE;/********************* Note: DON'T forget to CONFIG your options bellow *********************/if(!empty($_POST)){ // Input data from subscription form $email = trim($_POST['email']); if (get_magic_quotes_gpc()){ $email = stripslashes($email); } // Email Validation $regexp = "/^[_a-zA-Z0-9-]+([\.+][_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*(\.[a-zA-Z]{2,6})$/"; if (preg_match($regexp, $email)){ // Continue with options: /** SaveTxt starts **/ if($saveTxt){ $file = "mail.txt"; // CONFIG: Enter a filename for your txt file HERE $delimiter = "\r\n"; // CONFIG: New line between emails OR use anything you like, as example ", " if(file_exists($file)){ // Append if the file already exists file_put_contents($file,$email.$delimiter,FILE_APPEND); }else{ // Otherwise write a new file file_put_contents($file,$email.$delimiter); } } /** SaveTxt stops **/ /** SendEmail starts **/ if($sendEmail){ $to = "***@***"; // CONFIG: Enter your email address HERE $subject = "Newsletter"; // CONFIG: Enter your Subject $body = "From Subscription Form: ".$email."\r\n"; $body .= "\r\n"; $body .= "-----------------------------------\r\n"; $body .= "IP Address: $_SERVER[REMOTE_ADDR]\r\n"; $body .= "Web Browser: $_SERVER[HTTP_USER_AGENT]\r\n"; $body .= "Date: ".date('Y-m-d H:i:s')."\r\n"; $headers = 'MIME-Version: 1.0'."\r\n"; $headers .= 'Content-type: text/plain; charset=utf-8'."\r\n"; $headers .= "From:".$email."\r\n"; mail($to,$subject,$body,$headers); } /** SendEmail stops **/ /** SaveMySQL starts **/ if($saveMySQL){ $server = 'localhost'; // CONFIG: Usually it's by default "localhost", don't change it unless you know it $username = ''; // CONFIG: Enter your MySQL username $password = ''; // CONFIG: Enter your MySQL password $database = ''; // CONFIG: Enter your database name *(you have to create it with phpMyAdmin) $table = ''; // CONFIG: Enter your table name *(your table will create for you if not exist) // Connect to database $db = new mysqli($server,$username,$password,$database); if($db->connect_errno > 0){ die('Unable to connect to database'); } // Create the table if not exist $query = "CREATE TABLE IF NOT EXISTS ".$table." ( id INT NOT NULL AUTO_INCREMENT, email VARCHAR(200) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, PRIMARY KEY(id) )"; $result = $db->query($query) or die ('Unable to create table to database'); // Save the email in database $email = $db->real_escape_string($email); $query = "INSERT into ".$table." (id, email) VALUES ('', '".$email."')"; $result = $db->query($query) or die ('Unable to insert to database'); // Close the database mysqli_close($db); } /** SaveMySQL stops **/ // Finish exit; }else{ // It's n?t a valid email address echo json_encode(array('error' => true)); // Finish exit; } }?>
et voici le code html précédent le bouton "s'inscrire" :
<form method="post" action="subscribe.php">
EDIT : Ajout du LANGAGE dans les balises de code (la coloration syntaxique).
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Merci d'y penser dans tes prochains messages.
.
.