Hiii Everyone,
这是我的HTML表单。
<form action="" id="uploadForm" class="col-md-8 col-md-offset-2" >
<h2 class="bold text-uppercase"></h2>
<br>
<div>
<div class="input-group form-group">
<label for=""> Upload Your Photo </label>
<br>
<input name="userImage[]" type="file" class="inputFile">
</div>
</div>
<div class="input-group form-group">
<label for=""> Upload Your Resume</label>
<br>
<input name="userImage[]" type="file" class="inputFile">
</div>
<div class="input-group form-group">
<label for=""> SSLC Mark Sheet</label>
<br>
<input name="userImage[]" type="file" class="inputFile">
</div>
我的Ajax代码
$("#uploadForm").on('submit',(function(e) {
e.preventDefault();
$.ajax({
url: "upload.php",
type: "POST",
data: new FormData(this),
contentType: false,
cache: false,
processData:false,
success: function(data){
alert(data);
},
error: function(){}
});
}));
我的PHP代码
<?php
$link = mysqli_connect("localhost","root","","spark") or die("Error ".mysqli_error($link));
if(is_array($_FILES)) {
foreach ($_FILES['userImage']['name'] as $name => $value){
if(is_uploaded_file($_FILES['userImage']['tmp_name'][$name])) {
$sourcePath = $_FILES['userImage']['tmp_name'][$name];
$targetPath = "uploads/".$_FILES['userImage']['name'][$name];
if(move_uploaded_file($sourcePath,$targetPath)) {
$query = "INSERT INTO filedetails(filepath) VALUES ('$fileTarget')";
$link->query($query) or die("Error : ".mysqli_error($link));
?>
<img src="<?php echo $targetPath; ?>" width="150px" height="180px" />
<?php
}}}}
?>
现在我的代码中究竟是什么,如果我上传3个图像,它存储在images文件夹中,并在表单列名中插入文件路径详细信息作为filepath。我想要做的是我想从数组userImage拆分每个图像所以我将第一个图像存储在column1中,第二个图像存储在column2中,类似于数据库中的任意数量的图像。为了简要说明如何从这个数组中获取每个值$ _FILES ['userImage']。如果有人能告诉解决方案它会帮助我很多。谢谢你。
答案 0 :(得分:0)
以下是我的建议:
VARCHAR(100)
(这一点不是很好)示例:image_file_path1; image_file_path2; image_file_path3
<input>
字段
(无论你喜欢做什么)。-OR -
photo_tbl
将会
列id
,person_id
和img_file
。 在MySQL中,您可以使用SUBSTRING_INDEX('try;try', ';')
拆分字符串。
在PHP 4+中,您可以使用explode(";", $string)
拆分字符串并将其存储在数组变量中。
请参阅EXPLODE
在JQuery中,您可以使用string.split(';');
拆分字符串。
请参阅Split