Page 1 sur 1
lire les données d'un formulaire correctement
Posté : 14 déc. 2005, 15:17
par marilou
Bonjour à tous, voila j'ais un formulaire en html que j'envoi (POST) sur une page de visualisation des données saisi. Lorsque un utilisateur entre un texte et qu'il ajoute : ' ou " cela m'ajoute à la visualisation /' ou /" .
J'ais essayé le traitement des caractères html mais cela ne fonctionne pas..
Quelqu'un peut il me dire pourquoi / est ajouté?
Merci
Posté : 14 déc. 2005, 15:18
par Cyrano
Sans voir le code, non.
Posté : 14 déc. 2005, 15:26
par marilou
Désolé..voila :
Code : Tout sélectionner
<form action="verif-form.php" method="post" name="id" enctype="multipart/form-data">
<input type="text" name="titre" size="35" maxlength="256">
....
<input type="submit" value="Visualisez " name="id">
</form>
Et sur la page de visualisation :
Merci
Posté : 14 déc. 2005, 15:31
par Cyrano
Essaye comme ceci à tout hasard:
$titre = $_POST['titre'];
echo("<p>". $titre ."</p>\n");
Posté : 14 déc. 2005, 15:50
par marilou
non toujours pareil
Posté : 14 déc. 2005, 15:52
par Cyrano
S'il ne fait pas 300 lignes, mets nous donc le code complet, j'ai des doutes...

Posté : 14 déc. 2005, 15:52
par marilou
Pour être un peu plus précis à chaque affichage y en a trois en plus (///).
Posté : 14 déc. 2005, 15:56
par nicolas
Tout est expliqué dans ce super article:
http://phpdebutant.org/article150.php
Posté : 14 déc. 2005, 15:59
par marilou
<form action="verif-form.php" method="post" name="id" enctype="multipart/form-data">
<table width="460" border="0" summary="" cellpadding="0" cellspacing="0" bgcolor="#FFFFCC">
<tr>
<td align="right" height="35"><b>* Titre : </b></td>
<td>
<input type="text" name="titre" size="35" maxlength="256" value="<?if(isset($_GET['erreur'])){$erreur=$_GET['erreur'];if($erreur=="correction"){ echo $_POST['titre'];}}?>">
<?php if(isset($_GET['erreur'])){
$erreur=$_GET['erreur'];
if($erreur=="correction")
if ($_POST['titre']=="") {
echo '<font color="#ff0000" size=2"> Champs obligatoire</font>';
}
}
?>
</td>
</tr>
<input type="submit" value="Visualisez" name="id">
Sachant que le code est vérifié sur la page verif-form sur laquel la valeur et simplement transmise à la page de visualisation.
Sur la page de visualisation j'affiche purement les valeurs.
Posté : 14 déc. 2005, 16:09
par Cyrano
Bon, on va commencer par simplifier un peu le code :
<?php
$erreur = (isset($_GET['erreur'])) ? $_GET['erreur'] : "";
?>
<form action="verif-form.php" method="post" name="id" enctype="multipart/form-data">
<table width="460" border="0" summary="" cellpadding="0" cellspacing="0" bgcolor="#FFFFCC">
<tr>
<td align="right" height="35"><b>* Titre : </b></td>
<td>
<input type="text" name="titre" size="35" maxlength="256" value="<?php echo ($erreur=="correction") ? $_POST['titre'] : null;?>">
<?php
echo (($erreur=="correction") && ($_POST['titre']=="")) ? '<font color="#ff0000" size=2"> Champs obligatoire</font>' : null;
?>
</td>
</tr>
<input type="submit" value="Visualisez" name="id">
Ensuite, il faudrait voir le code te ton script de validation : si des "/" sont ajoutés, ce n'est pas de la génération spontanée: c'est que dans ton code il y a une ligne qui les ajoute.
Posté : 14 déc. 2005, 16:24
par marilou
Merci pour votre aide j'ais ajouté :
$titre=stripslashes($_POST['titre']);
Et plus rien mais j'ais plus de 50 pages à modifier n'y a t il pas un moyen plus rapide?
Merci
Posté : 14 déc. 2005, 16:40
par Cyrano
j'ai peur que non

Posté : 14 déc. 2005, 16:42
par marilou
OK merci pour votre aide et bonne soirée (je vais me mettre au boulot)

Posté : 14 déc. 2005, 16:48
par nicolas
> Et plus rien mais j'ais plus de 50 pages à modifier n'y a t il pas un moyen plus rapide?
Evidemment que si. En tête de script tu parcours récurssivement le tableau $_POST pour appliquer si besoin un stripslashes.