le 02/08/2007 à 09:38
jackbocar
Bonjour,
Je ne comprends vraiment rien à ce système de protection "injections QSL".
Lorsque j'envoie des données dans la base avec cet argument :
L'affichage donne dans la table donne ceci : L'\\\année, l'\\\autre, l'\\\enfer…
Pour que ces mots échappés, se lisent correctement, je suis obligé de faire ceci :
Et pour les sauts de ligne : <br />. Je dois écrire mes nouvelles sur une seule ligne comme ceci : Bonjour<br />Le phpfacile est un des meilleurs sites sur ce langage de programmation<br />Jack Bocar.
Car, si j'écris comme ceci :
Bonjour
<br />
Le phpfacile est un des meilleurs sites sur ce langage de programmation
<br />
Jack Bocar.
A l'affichage, je vois des "mm" ?
Ou, si j'écris comme ceci :
Bonjour
Le phpfacile est un des meilleurs sites sur ce langage de programmation
Jack Bocar.
Cette fois-ci, je vois des : \n\n.
Puis, j'ai un autre problème, lorsque j'envoie une nouvelle, elle ne s'affiche que lorsque j'envoie la suivante, qui elle bien sûr, attend la suivante pour s'afficher.
Merci de vos conseils
Jack Bocar
Je ne comprends vraiment rien à ce système de protection "injections QSL".
Lorsque j'envoie des données dans la base avec cet argument :
$commanderie = mysqli_real_escape_string($link, $_POST['commanderie']);
L'affichage donne dans la table donne ceci : L'\\\année, l'\\\autre, l'\\\enfer…
Pour que ces mots échappés, se lisent correctement, je suis obligé de faire ceci :
stripslashes(stripslashes($row[2])),
Et pour les sauts de ligne : <br />. Je dois écrire mes nouvelles sur une seule ligne comme ceci : Bonjour<br />Le phpfacile est un des meilleurs sites sur ce langage de programmation<br />Jack Bocar.
Car, si j'écris comme ceci :
Bonjour
<br />
Le phpfacile est un des meilleurs sites sur ce langage de programmation
<br />
Jack Bocar.
A l'affichage, je vois des "mm" ?
Ou, si j'écris comme ceci :
Bonjour
Le phpfacile est un des meilleurs sites sur ce langage de programmation
Jack Bocar.
Cette fois-ci, je vois des : \n\n.
Puis, j'ai un autre problème, lorsque j'envoie une nouvelle, elle ne s'affiche que lorsque j'envoie la suivante, qui elle bien sûr, attend la suivante pour s'afficher.
<?php
if (isset($_POST['lieu']) && isset($_POST['dep']) && is_numeric($_POST['dep']) && isset($_POST['commanderie']) && isset($_POST['precepteur']) && isset($_POST['visible']) && is_numeric($_POST['visible']) ) {
if ($link = mysqli_connect('localhost', 'jackbocar', 'XXXXXX')) {
mysqli_select_db($link, 'possessions');
$stmt = mysqli_prepare($link, 'INSERT INTO commanderies (lieu, dep, commanderie, precepteur, visible) VALUES (?, ?, ?, ?, ?)');
$lieu = mysqli_real_escape_string($link, $_POST['lieu']);
$dep = intval($_POST['dep']);
$commanderie = nl2br(mysqli_real_escape_string($link, $_POST['commanderie']));
$precepteur = mysqli_real_escape_string($link, $_POST['precepteur']);
$visible = intval($_POST['visible']);
mysqli_stmt_bind_param($stmt, 'sissi', $lieu, $dep, $commanderie, $precepteur, $visible);
if (mysqli_stmt_execute($stmt)) {
echo 'Commanderies saved.';
} else {
echo 'Error d\'écriture dans la table.<br /><br />';
}
mysqli_close($link);
} else {
echo 'Connection failed.';
}
}
?>
<form method="post" action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>">
Lieu : <input type="text" name="lieu" size="30" /><br />
Dep : <input type="text" name="dep" size="2" /><br />
Commanderie <textarea name="commanderie" cols="50" rows="10"></textarea><br />
Preceteur <input type="text" name="precepteur" size="30" /><br />
Visible : <input type="text" name="visible" size="1" value="0" /><br />
<input type="submit" value="Save" />
</form>
</body>
</html>
Merci de vos conseils
Jack Bocar