Traitement des données d'un formulaire .html

Résolu
Utilisateur anonyme -  
 Utilisateur anonyme -
Bonjour,

J'ai créé un formulaire .html et le bouton "Valider" nécessaire, mais je voudrais maintenant que ce formulaire ne serve pas à faire joli mais à être envoyé par mail et SMS. Comment faire s'il vous plaît ?

Merci d'avance.

Cordialement.

3 réponses

  1. Utilisateur anonyme
     
    Bonjour, tu peux faire comme ceci
    si ton formulaire contient nom, prenom , mail et message par exemple
    <form method="post" action="contact.php">
    						<label>Nom : </label>
    						<input type="text" name="nom" />
    						<br />
    						<label>Prénom : </label>
    						<input type="text" name="prenom" />
    						<br />
    						<label>E-mail : </label>
    						<input  type="text" name="mail"/>
    						<br />
    						<label>Message : </label>
    						<textarea rows="10" cols="50" name="message"></textarea>
    						<br />
    						<input type="submit" id="sub" />
    					</form>


    tu peu rajouter un script de ce genre

    <?php 
    if (!preg_match("#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#", $_POST['mail'])) {
    	echo 'E-mail invalide !';
    }
    if (isset($_POST['nom']) AND isset($_POST['prenom']) AND isset($_POST['mail']) AND isset($_POST['message']) AND preg_match("#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#", $_POST['mail'])) {
    	try {
    
    		$bdd = new PDO('mysql:host=localhost;dbname=ma_bdd', 'root', '');
    
    	} catch(Exception $e) {
    
    		die('Erreur : ' . $e -> getMessage());
    
    	}
    	$contact = $bdd -> prepare('INSERT INTO contact (nom, prenom, mail, message) VALUES (:nom, :prenom, :mail, :message)');
    	$contact -> execute(array('nom' => htmlspecialchars($_POST['nom']), 'prenom' => htmlspecialchars($_POST['prenom']), 'mail' => htmlspecialchars($_POST['mail']), 'message' => htmlspecialchars($_POST['message'])));
    
    	$headers = 'From: "nom"<adresse@fai.fr>' . "\n";
    	$headers .= 'Reply-To: adresse_de_reponse@fai.fr' . "\n";
    	$headers .= 'Content-Type: text/plain; charset="UTF-8"' . "\n";
    	$headers .= 'Content-Transfer-Encoding: 8bit';
    	$sujet = "message d'un internaute";
    	$message = 'Salut  ce message est généré automatiquement. Une personne à rempli le formulaire de contact de ton site. Son nom est : ' . $_POST['nom'] . " , son prénom est :" . $_POST['prenom'] . ", son adresse mail est :" . $_POST['mail'] . " et son message est :" . $_POST['message'];
    	if (mail('tonadressemail.bidule.fr', $sujet, $message, $headers)) {
    		echo 'Le message a bien été envoyé';
    	} else {
    		echo 'Le message n\'a pu être envoyé';
    	}
    	
    	$contact -> closeCursor();
    }
    
    					?>


    voila c est juste un exemple, il y a moyen de faire bien mieux, mais cela devrait fonctionner.
    Là sa rentre les information dans une base de donnée qui s'appelle ma_bdd, dans la table contact. de plus ça envoie un mail tout simple avec les informations

    tu pourra trouver certainement de meilleur exemple sur le net que ce script fait un peu à l'arrache

    je te conseille vivement de faire un peu de php et des requête de base en mysql

    https://openclassrooms.com/fr/courses
    0
  2. Utilisateur anonyme
     
    Ok merci je vais travailler le PHP et MySql. La 1ère partie je l'ai faite dans ma "Page 7.html" que je vais donc transformer en "Page 7.php" et la deuxième partie je la cpie puis colle dans mon fichier "envoi.php" ?

    Merci d'avance.
    0
    1. bg62 Messages postés 23433 Date d'inscription   Statut Modérateur Dernière intervention   2 435
       
      PHP est nettement suffisant pour ça ...
      0
    2. Utilisateur anonyme
       
      Ok merci !
      0
    3. bg62 Messages postés 23433 Date d'inscription   Statut Modérateur Dernière intervention   2 435
       
      salut :)
      +100 :)
      0
  3. Utilisateur anonyme
     
    Au font je n'est toujours pas réussi cela ne marche pas.
    Si jamais emandez moi les codes du formulaire.
    0