1-画像をアップロードするために適用することになっているセキュリティ対策は何か教えてください。
データベース、私はこのスクリプトを書いたばかりで、それがSQLインジェクションから保存されているかどうか、またはXSS攻撃から保存されているかどうかはわかりません。
2-アップロードされたすべての画像が画像フォルダーに保持される拡張子(php、html、cgiなど)のファイルの実行を許可したくありません。これを行う方法がわかりませんが、私は思う.htaccessで行う必要があります
3-あらゆる種類の攻撃を回避するために、Webサーバー上の画像フォルダーをどこに配置する必要がありますか
助けてください、
<form method="post" action="index.php" enctype="multipart/form-data">
<input type="file" name="image" />
<br/>
<input type="submit" value="UPLOAD" />
</form>
if(isset($_FILES['image']))
{
if($_FILES['image']['error'] > 1)
{
die('Please choose image');
}
else if (!preg_match('([^\s]+((jpg|png|gif|jpeg))$)', $_FILES['image']['type']))
{
die('Please upload a valid image with extension of ( jpg, gif, png, jpeg)');
}
else
{
$target = "upload/".time().'_'.basename($_FILES['image']['name']);
$temp = $_FILES['image']['tmp_name'];
$moved = move_uploaded_file($temp, $target);
$conn = mysql_connect('127.0.0.1','root','') or die (mysql_error());
$db = mysql_select_db('test');
$image = str_replace('upload/','', $target);
$sql = mysql_query("INSERT INTO `image` (`id`, `image_name`) VALUES ('','$image')");
header('Location: index.php');
}
}