我上传了一些图片文件。但我无法在页面上显示它们。现在看来是这样的: 这是上传
foreach($_FILES['photo']['tmp_name'] as $key => $tmp_name)
{
$file_name = $key.$_FILES['photo']['name'];
$file_size =$_FILES['photo']['size'][$key];
$file_tmp =$_FILES['photo']['tmp_name'][$key];
$file_type=$_FILES['photo']['type'][$key];
$photo= "0". $_FILES['photo']['name'][0];
$photo2=$file_name = $key.$_FILES['photo']['name'][1];
$photo3= $file_name = $key.$_FILES['photo']['name'][2];
}
mysql_query("insert into $table(ID,Name,Photo1,Photo2,Photo3,Text)
values('$id','$fullname','$photo','$photo2','$photo3','$text')");
这就是我试图展示图片的方式:
$query = mysql_query("SELECT *FROM Creative");
while ($f = mysql_fetch_array($query)):
?>
<tr bgcolor="#c0c0c0">
<td><?php echo '<img src="creative/"'.$f['Photo1'].'width="50" height="50" alt=""></img>'; ?></td>
<td><?php echo '<img src="creative/"'.$f['Photo2'].'width="50" height="50" alt=""></img>'; ?></td>
<td><?php echo '<img src="creative/"'.$f['Photo3'].'width="50" height="50" alt=""></img>'; ?></td>
</tr>
我做错了什么?
答案 0 :(得分:0)
表达式
$photo2=$file_name = $key.$_FILES['photo']['name'][1];
错了。您的foreach
会对已上传的$_FILES['photo']
进行迭代。因此$_FILES['photo']['name']
是其中一个文件的名称。 $_FILES['photo']['name'][1]
是文件名的第二个字符。
如果你想在一行中存储三张照片,你首先必须循环(三次),收集它然后发出SQL,而不是将文件名编入索引,而不是数组。