Syntax problème

Petit nouveau ! | 1 Messages

20 déc. 2011, 16:59

Bonjour,

J'ai bien lu l'article nous aidans pour trouver une solution seul a nos problèmes avant de poster, mais malheureusement je viens vers vous car je n'arrive pas a appliqué l'une des solutions trouver. Je vous explique

Sa concerne un formulaire qui contient un champ "date" et un champ "text", tout fonctionnais correctement jusqu'a une migration vers un nouveau serveur.
Donc le problème que je rencontre c'est que le text inscrit dans le formulaire contient des caractères spéciaux " ' ( ) ' " et cela crée une erreur de syntax.
Donc j'ai trouvé la commande ENT_QUOTES qui doit me permettre de transformer les caractères spéciaux avant l'envoi de la requete sql sauf que j'ai beau essayer je ne trouve pas ou la mettre voila mes 2 bout de code concerné :
<?
if (isset($_GET['id'])) {
	$id = $_GET['id'];
	$ssTitre = "Modification";
	$req = new requete ($base, "SELECT * FROM t_infos WHERE id='$id'");
	if ($req->lect()) {
		$type = $req->ligne['type'];
		$id_referent = $req->ligne['id_referent'];
		$date = formAffDate($req->ligne['date']);
		$texte = $req->ligne['texte'];
	}
} else {
	$ssTitre = "Ajout";
	$type = $_GET['r'];
	$id_referent = $_GET['s'];
	$date = $texte = '';
}
?>
// remplissage de la base
	$type = $_POST['type'];
	$id_referent = $_POST['id_referent'];
	$date = formSaveDate($_POST['date']);
	$texte = $_POST['texte'];
	if (isset($_POST['id'])) {
		$id = $_POST['id'];
		$req = new requete($base, "UPDATE t_infos SET type='$type', id_referent='$id_referent', date='$date', texte='$texte' WHERE id='$id'");
	} else {
		$req = new requete($base, "INSERT INTO t_infos VALUES('', '$type', '$id_referent', '$date', '$texte')");
	}
	// renvoi
	echo '<meta http-equiv="refresh" content="0;URL=index.php?p=4&r='.$type.'&s='.$id_referent.'">';
	break;
Merci

Mammouth du PHP | 672 Messages

20 déc. 2011, 18:45

Bonjour.

Voir du côté de ]mysql_real_escape_string(), si j'ai bien compris le problème...

Et profite-en pour chercher comment sécuriser les informations - entre autres celles reçues par un GET :roll: