[RESOLU] Problème formulaire

Petit nouveau ! | 3 Messages

31 déc. 2013, 18:33

Bonjour, j'ai crée un petit script d'envoi de mail par l'utilisateur à l'aide d'un formulaire HTML, je vous donne les extrait de code :
Le html

Code : Tout sélectionner

<form id="formmail" method="GET" enctype="multipart/mixed" action="../formmail.php" > <input type="text" name="email" id="mail" placeholder="Votre email"/> <br> <input type="text" name="objet" id="objet" placeholder="Objet"/> <br> <input type="file" name="nom_fichier" id="button"/> <br> <textarea name="message" id="area" placeholder="Message"></textarea> <br> <input type="submit" value="Envoyer" id="submit" class="inputtext" /> </form>
Et le php (extrait)

Code : Tout sélectionner

<?php //=====Déclaration des messages au format texte et au format HTML. $message_txt .= $_GET['message']; $message_html .= '<html><head></head><body>'.$_GET['message'].'</body></html>'; //========== //=====Création de la boundary $boundary = "-----=".md5(rand()); //========== //=====Définition du sujet. $sujet .= $_GET['objet']; //========= //=====Création du header de l'e-mail. $header = 'From: \''.$_GET['email'].'\'<'.$_GET['email'].'>'.$passage_ligne; $header = 'Reply-to: \''.$_GET['email'].'\'<'.$_GET['email'].'>'.$passage_ligne; $header.= "MIME-Version: 1.0".$passage_ligne; $header.= "Content-Type: multipart/alternative;".$passage_ligne." boundary=\"$boundary\"".$passage_ligne; ?>
Le problème est que je n'arrive pas à récuperer les données de la textarea puisqu'elle est un peu particulière : elle n'a pas de value comme les input , la valeur se situe entre la balise double <textarea></textarea>
Comment faire ? Merci d'avance pour vos réponses

Mammouth du PHP | 2278 Messages

01 janv. 2014, 12:12

Bonjour et meilleurs voeux.
formmail.php
<?PHP
print_r($_GET);
?>
répond à ta question.
Le formulaire est assez mal conçu:

Placeholder est destiné à montrer l'allure que doit prendre le texte tapé.
Label sert à désigner les champs.
Il existe un type email qui vérifie les adresses lors de la saisie
Il existe un attribut required pour éviter les champs vides.
<form id="formmail" method="GET" enctype="multipart/mixed" action="formmail.php" > 
	<label for "email">Adresse du destinataire</label> 
   <input type="email" name="email" required = "required" placeholder="[email protected]"/>
   <br />    
  <label for "objet">Objet du message</label>
   <input type="text" name="objet" id="objet" placeholder="Rendez-vous"/>
   <br>
   <label for "nom_fichier">Fichier attaché</label>
   <input type="file" name="nom_fichier"/>
   <br>
  <label for "message">Message</label>
    <textarea name="message" required = "required"></textarea>
   <br>
   <input type="submit" value="Envoyer" id="submit" class="inputtext" />
</form>
On pourrait faire mieux au niveau de l'aspect avec des div et des attributs CSS...
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD

Petit nouveau ! | 3 Messages

01 janv. 2014, 21:37

Salut,
bonne année :)
Merci pour la refonte du code html, mais par contre ton code php je ne le comprends pas, et je veux seulement recuperer les données de la textarea, j'ai vu sur d'autre topic de mettre un petit code php entre la balise double <textarea></textarea>
Du genre

Code : Tout sélectionner

<textarea><?php echo($message) ?></textarea>
Mais je n'ai pas tout compris
Pouvez vous m'éclaircir sur ce sujet svp
Merci au revoir

Mammouth du PHP | 2278 Messages

02 janv. 2014, 09:46

$message = $_GET['message'];
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD

Petit nouveau ! | 3 Messages

02 janv. 2014, 23:23

Bonjour
J'ai essayé cette technique auparavant mais elle ne marche pas
Mais c'est bon j'ai réussi à résoudre le problème avec une méthode POST merci
Au revoir