Bonjour à tous,
Je ne connais rien en php et j'ai choppé un formulaire de contact que j'essaie d'adapter a mes besoins.
Le seul souci qui me reste est que lorsqu'on tape un message et qu'on valide, dans la fenetre du message il ajoute des antislashes avant chaque apostrophe. Ce que je comprends.
En cherchant un peu j'ai trouvé l'instruction stripslashes, que j'ai réussi a utiliser pour que le message que je reçois soit affiché sans ces antislashes, mais je n'arrive pas a faire de même pour le champ "message", une fois que l'utilisateur valide, son texte est tjrs corrigé pour ajouter ces antislashes...
N'étant pas certain d'être clair, voici une image. Mon problème est dans l'encadré rouge.
Voici le code, merci d'avance pour votre aide.
<?php
if (isset($_POST['submit'])) {
$error = "";
if (!empty($_POST['name'])) {
$name = $_POST['name'];
} else {
$error .= "You didn't type in your name. <br />";
}
if (!empty($_POST['email'])) {
$email = $_POST['email'];
if (!preg_match("/^[_a-z0-9]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/i", $email)){
$error .= "The e-mail address you entered is not valid. <br/>";
}
} else {
$error .= "You didn't type in an e-mail address. <br />";
}
if (!empty($_POST['message'])) {
$message =$_POST['message'];
} else {
$error .= "You didn't type in a message. <br />";
}
if(($_POST['code']) == $_SESSION['code']) {
$code = $_POST['code'];
} else {
$error .= "The captcha code you entered does not match. Please try again. <br />";
}
if (empty($error)) {
$from = 'From: ' . $name . ' <' . $email . '>';
$to = "fyk.morane@gmail.com";
$subject = "New contact form message";
$content = $name . " has sent you a message: \n" .stripslashes($message);
$success = "<h3>Thank you! Your message has been sent!</h3>";
mail($to,$subject,$content,$from);
}
}
?>
<div id="contactForm">
<?php
if (!empty($error)) {
echo '<p class="error"><strong>Your message was NOT sent<br/> The following error(s) returned:</strong><br/>' . $error . '</p>';
} elseif (!empty($success)) {
echo $success;
}
?>
<form action="contact.php" method="post">
<label>Name:</label>
<input type="text" name="name" value="<?php if ($_POST['name']) { echo $_POST['name']; } ?>" />
<label>Email:</label>
<input type="text" name="email" value="<?php if ($_POST['email']) { echo $_POST['email']; } ?>" />
<label>Message:</label><br />
<textarea name="message" rows="20" cols="20"><?php if ($_POST['message']) { echo $_POST['message']; } ?></textarea>
<label><img src="captcha.php"></label>
<input type="text" name="code"> <br />
<input type="submit" class="submit" name="submit" value="Send message" />
</form>
</div>
Message édité par Skaym le 06-03-2013 à 12:48:26