我是PHP的初学者。我在base64String中编码了一些图像。所有图像都在指定的文件夹中成功解码。我的问题是我只能够在数据库中记录一个图像/路径。有人帮助我想出了PHP将所有图像路径插入数据库中的一行。如何在PHP和mysql数据库中上传和插入多个图像
这里是PHP代码
<?PHP
if(isset($_POST['image']))
{
$image = $_POST['image'];
$identity = $_POST['id'];
$username = $_POST['username'];
//create unique image file name based on micro time and date
$now = DateTime::createFromFormat('U.u', microtime(true));
$id = rand(1000000, 10000000000);
$id2=rand(1000000, 10000000000);
$upload_folder = "upload";
$id="$id$id2";
$path = "$upload_folder/$id.jpeg";
if(file_put_contents($path, base64_decode($image)) != false){
echo "uploaded_success";
$sql = "UPDATE apartment SET Image_path = '$path' WHERE apart_username
='$username' AND id = '$identity'";
mysqli_query($conn, $sql);
}
else{
echo "uploaded_failed";
}
exit;
}
else{
echo "images_not_in";
exit;
} ?>
[Little Bobby](http://bobby-tables.com/)说*** [您的脚本存在SQL注入攻击的风险。](http://stackoverflow.com/问题/ 60174/how-can-i-prevent-sql -injection-in-php)***了解[MySQLi](http)的[prepared](http://en.wikipedia.org/wiki/Prepared_statement) ://php.net/manual/en/mysqli.quickstart.prepared-statements.php)。即使[转义字符串](http://stackoverflow.com/questions/5741187/sql-injection-that-gets-around-mysql-real-escape-string)是不安全的! –
我知道准备好的陈述。我使用此代码进行个人试用。我卡住了。如果可以的话请帮忙。 – KingAndy
如果您第一次没有时间做对,那么您什么时候可以找到时间来添加它?当人们说*“我不是那么远......”*或*“这个网站不会被公开......”*或*“它只适用于学校,所以安全并不重要...... “*。如果教师和教授从一开始就没有谈论安全问题,他们就错了。挑战他们。他们正在教导草率和危险的编码习惯,学生们稍后将不得不忘记。当人们说:“我稍后会增加安全性......”或*“现在安全性不重要......”或*“忽略安全风险......”*。 –