我有一个表单,将5个图像上传到服务器文件夹
<form action="co_insert_office_image.php" method="post" enctype="multipart/form-data">
<div class="col-md-6">
<div class="form-group">
<label class="col-lg-4 control-label">Image 1</label>
<div class="col-lg-6">
<input type="file" name="file_img" />
</div>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label class="col-lg-4 control-label">Image 2</label>
<div class="col-lg-6">
<input type="file" name="file_img1" />
</div>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label class="col-lg-4 control-label">Image 3</label>
<div class="col-lg-6">
<input type="file" name="file_img2" />
</div>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label class="col-lg-4 control-label">Image 4</label>
<div class="col-lg-6">
<input type="file" name="file_img3" />
</div>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<label class="col-lg-4 control-label">Image 5</label>
<div class="col-lg-6">
<input type="file" name="file_img4" />
</div>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<div class="col-lg-6">
<input type="submit" name="btn_upload" value="Upload">
</div>
</div>
</div>
</form>
co_insert_office_image.php
<?php
include('admin_session.php');
$con=mysqli_connect("localhost","root","","db");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
if(isset($_POST['btn_upload']))
{
$officeid = $_GET['id'];
echo $officeid;
$filetmp = $_FILES["file_img"]["tmp_name"];
$filename = $_FILES["file_img"]["name"];
//$filetype = $_FILES["file_img"]["type"];
$filepath = "uploads/".$filename;
move_uploaded_file($filetmp,$filepath);
$filetmp1 = $_FILES["file_img1"]["tmp_name"];
$filename1 = $_FILES["file_img1"]["name"];
//$filetype = $_FILES["file_img"]["type"];
$filepath1 = "uploads/".$filename1;
move_uploaded_file($filetmp1,$filepath1);
$filetmp2 = $_FILES["file_img2"]["tmp_name"];
$filename2 = $_FILES["file_img2"]["name"];
//$filetype = $_FILES["file_img"]["type"];
$filepath2 = "uploads/".$filename2;
move_uploaded_file($filetmp2,$filepath2);
$filetmp3 = $_FILES["file_img3"]["tmp_name"];
$filename3 = $_FILES["file_img3"]["name"];
//$filetype = $_FILES["file_img"]["type"];
$filepath3 = "uploads/".$filename3;
move_uploaded_file($filetmp3,$filepath3);
$filetmp4 = $_FILES["file_img4"]["tmp_name"];
$filename4 = $_FILES["file_img4"]["name"];
//$filetype = $_FILES["file_img"]["type"];
$filepath4 = "uploads/".$filename4;
move_uploaded_file($filetmp4,$filepath4);
$sql = "UPDATE register_office set image='".$filepath."' AND image1='".$filepath1."' AND image2='".$filepath2."' AND image3='".$filepath3."' AND image4='".$filepath4."' WHERE id='".$officeid."' ";
if (!mysqli_query($con,$sql))
{
die('Error: ' . mysqli_error($con));
}
mysqli_close($con);
}
?>
图像存储在服务器文件夹中,但它们的路径不会存储在数据库中 . 谁能告诉我怎么做?我还想添加检查图像大小和允许的图像扩展类型 . 有谁能指导我这些观点?
3 回答
这是您可能喜欢的完整代码
multiupload.php
的script.js
style.css文件
upload.php的
希望你会发现它很有用
首先,我要说代码需要进行转义,并出于安全原因正确处理 .
查看PDO和binding您的参数以防止SQL注入和其他潜在问题 .
话虽如此,这是你的代码有一些变化 . 请注意,我没有测试这个,请检查脚本的语法:php -l scriptName.php
在调试时,转储SQL以验证它是否正确,并在MySQL中运行 .
你的sql语法替换和昏迷(,)有错误
喜欢:
检查此答案如何设置多列:setting multiple column using one update
如果没有上传图像会发生什么 . 您应该在if语句中生成SQL /移动图像 .
类似于示例(未经测试!):