Problema INSERT INTO
Problema INSERT INTO postato il 15/03/2011 19:05:46 nel forum programmazione, open source e hosting e modificato da kyou il 15/03/2011 19:06:51
<? if($_POST['ok'])
{ $chicca = mysql_query("
INSERT INTO table (testo)
VALUES ( '".$_POST['testo']."' ) ");
} else { print "Chupa" }
?>
Dunque, se nel testo che scrivo è presente un apice singolo (l'apostrofo per chi non lo sapesse) non me lo inserisce. Qualcuno sa come posso risolvere il problema?
Pagine → 1
15/03/2011 19:33:45
provato con la funzione di php addslashes?
http://www.giorgiotave.it/wikigt/os/Addslashes ↗
15/03/2011 20:21:37
Grazie a tutti.
Ho risolto in questo modo (commenti ben accetti):
<?php
if (isset($_POST['ok'])) {
$testo = mysql_real_escape_string( htmlentities( htmlspecialchars( stripslashes( trim( $_REQUEST["testo"] )))));
mysql_query("INSERT INTO `project` (`testo`) VALUES ('{$testo}');") or
die (mysql_error());
} else {
echo "Riempire i campi";
?>
15/03/2011 21:51:54
togli tutto il bordello che hai fatto, per carità!
basta mysql_real_escape_string.
htmlspecialchars ed entities li usi se devi evitare attacchi XSS, ma non si usano entrambi. entities trasforma tutti i caratteri speciali in entità html, chars solo alcuni. Chars è più che sufficiente.
Discussione seguita da
Pagine → 1
Rispondi alla Discussione Segui Discussione Inoltra Discussione Forum Programmazione, Open Source e Hosting Elenco Forum
Articoli, Interviste e altre Risorse!
Hero Wars ↗
Project Entropy ↗
Enlisted ↗
Storie di Agarthi ↗