Сделать так, чтобы определенные символы не могли быть вставлены в базу данных MySQL? - PullRequest
0 голосов
/ 13 февраля 2012

Это код, который я использую для вставки данных:

    $connect = mysql_connect("host","username","password") or die("couldn't Connect!");
mysql_select_db("table") or die("couldn't find db");

if(isset($_POST['user'])){

mysql_query("INSERT INTO vids (name, gname, glink, ylink, category, user) 
    VALUES ('".$_POST['name']."', '".$_POST['gname']."', '".$_POST['glink']."', '".$_POST['ylink']."', '".$_POST['category']."', '".$_POST['user']."' )");

}

Это форма:

<form method='post' action=''>
<table border='0'>
    <tr><td><b><center>Upload your vid!</center></b>
    <tr><td><b> video name:</b></td><td><input name='name' type='text' ></input></td></tr>
    <tr><td><b> youtube video code:</b></td><td><input name='ylink' type='text' value='' ></input><a href='help.php'><img src='help.png' /></a></td></tr>
    <tr><td><b> game name:</b></td><td><input name='gname' type='text' ></input></td></tr>
    <tr><td><b> game link:</b></td><td><input name='glink' type='text' value='http://' ></input></td></tr>
    <tr><td><b> Category:</b></td><td><select name='category'>
    <option>shooter</option>
    <option>adventure</option>
    <option>arcade</option>
    <option>racing</option>
    <option>puzzle</option>
    <option>strategy</option>
    <option>sports</option></select></td></tr>
    <tr><td>Submitting under:</td><td><input type='hidden' name='user' value="<?php echo "" . $_SESSION['username'] . "" ?>"><?php echo "" . $_SESSION['username'] . "" ?></td></tr>
    <tr><td><input type='hidden' name='reviewed' value='no'></td></tr>
    <tr><td><input type='submit' value='Submit' title='Submit content!'></td></tr>
</table>

Я хочу сделать так, чтобынекоторые символы, а именно «<», «>», «/» и другие символы, относящиеся к javascript и другим языкам кодирования, не вставляются в мою таблицу MySQL.

Любая помощь будет потрясающей, яЯ хотел бы решить эту проблему прямо сейчас, поскольку хакеры иногда отправляют перенаправления javascript, которые перенаправляют на разные веб-сайты.

Спасибо

1 Ответ

1 голос
/ 13 февраля 2012

Используйте htmlspecialchars . И используйте mysql_real_escape_string , чтобы предотвратить атаки SQL на вашу базу данных, если вы не включили магические кавычки.

...