Précédent   Forum des professionnels en informatique > PHP > Langage > Formulaires
Formulaires Forum d'entraide sur les formulaires avec PHP. Avant de poster -> FAQ formulaires, Cours de formulaires et Sources de formulaires
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 03/08/2007, 18h41   #1
Candidat au titre de Membre du Club
 
Inscription : août 2006
Messages : 55
Détails du profil
Informations personnelles :
Âge : 28

Informations forums :
Inscription : août 2006
Messages : 55
Points : 14
Points : 14
Par défaut Mauvais fonctionnement après mise en ligne

Bonjour,

J'ai ecrit un script qui permet de d'avoir un apercu d'un texte entré dans un textarea.

En local ca marche très bien et mon popup d'aperçu execute bien le code html.

Seulement, lorsque je le met en ligne, il place un \ avant chaque ' et ne comprend pas une balise de type <img src="http://....>

( Je suis chez free )

voici le code du formulaire

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<html>
<head>
<script language="javascript" type="text/javascript">
function pop_it() {
window.open("affiche.php3", "popup", "height=440,width=640,menubar='no',toolbar='no',location='no',status='no',scrollbars='no'");   
document.form.method='post';
document.form.target= "popup";
document.form.action='affiche.php3';
document.form.submit();
}
</script>
</head>
<body>
 
<FORM name='form'>
<TEXTAREA NAME="contenu" COLS="100" ROWS="10" id="contenu"></TEXTAREA>
<INPUT type="button"  onclick="pop_it();" value="Apercu">
 
</FORM>
</body>
</html>
et le code du popup

Code :
1
2
3
4
<?
$contenu = $_POST['contenu']; 
echo $contenu ;
?>

Merci
flow-bolox est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/08/2007, 21h40   #2
Membre Expert
 
Inscription : octobre 2002
Messages : 1 141
Détails du profil
Informations personnelles :
Âge : 32
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2002
Messages : 1 141
Points : 1 204
Points : 1 204
Envoyer un message via MSN à Raideman
tu as surement magic_quote activé chez ton hébergeur. Cette option permet d'échapper tous les caractères sensibles contenus dans tes variables soumises à une page avec un antislash.
Raideman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/08/2007, 21h42   #3
Candidat au titre de Membre du Club
 
Inscription : août 2006
Messages : 55
Détails du profil
Informations personnelles :
Âge : 28

Informations forums :
Inscription : août 2006
Messages : 55
Points : 14
Points : 14
Merci ca doit etre ca il y a en effet des anti slash sur certains caractères...

Je vais essayer de trouver...
flow-bolox est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/08/2007, 11h50   #4
Candidat au titre de Membre du Club
 
Inscription : août 2006
Messages : 55
Détails du profil
Informations personnelles :
Âge : 28

Informations forums :
Inscription : août 2006
Messages : 55
Points : 14
Points : 14
J'ai trouvé un moyen de contourner Magic_quote sans le desactiver ( apparement le désactiver entrainerait des problèmes de sécurité )

Il faut lorsque l'on appele la chaine d caractère passer par stripslashes():

voici mon code modifié qui fonctionne


Code :
1
2
3
4
5
6
7
<?
 
$str = $_POST['contenu']; 
$contenu = stripslashes($str);
echo $contenu ;
 
?>
Merci de m'avoir orienté !!
flow-bolox est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/08/2007, 13h59   #5
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
Citation:
Envoyé par flow-bolox
apparement le désactiver entrainerait des problèmes de sécurité
Non, pour les raisons suivantes :
  • Ces fonctionnalités (magic_quotes_*) n'existent plus en PHP 6
  • C'est à vous de sécuriser votre code. Certes, ici, PHP le fait de façon générique mais ce n'est pas la meilleure méthode de le faire car cela dépend de vos données et de leur finalité (chaque SGBD a ses propres spécificités et propose généralement une fonction d'échappement, les expressions régulières : la plupart des métacaractères ne seront pas traités, les commandes shell, ...). Voir la FAQ.
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h30.


 
 
 
 
Partenaires

Hébergement Web