我正在尝试将图像上传到目录,但表单存在问题。当表单提交时,它被重定向到表单操作中指定的 php 文件,但随后它似乎不知道正在提交的表单。
HTML
<html>
<form action="profileimg.php" method="post" enctype="multipart/form-data">
<label for="chooseimg" class="profile-pic-change"><i class="material-icons" style="color: rgb(255, 255, 255);">add_a_photo</i></label>
<input type="file" name="image" accept="image/gif, image/jpeg, image/png" id="chooseimg" value="Image" onchange="javascript:this.form.submit();" />
</form>
</html>
(我也尝试过使用常规提交按钮;没有区别。)
PHP
<?php
include 'connect.php';
$target_dir = "Users/";
$name = $_FILES["image"]["name"];
$name = md5($name);
$name = $name . uniqid($name);
$path = $_FILES["image"]["name"];
$ext = pathinfo($path, PATHINFO_EXTENSION);
$name = $name.".".$ext;
$target_file = $target_dir . $name;
if(isset($_POST['submit']))
{
move_uploaded_file($_FILES["image"]["tmp_name"], $target_file);
$SQL = "INSERT INTO Users (image) VALUES ('$target_file')";
$result = mysql_query($SQL);
if( $result )
{
echo "<script type='text/javascript'>alert('success!')</script>";
}
else
{
echo "<script type='text/javascript'>alert('failed!')</script>";
}
}
else
{
echo 'didnt submit';
}
?>
在收到两个警报后,我添加了“未提交回显”,以查看这是否是结果,这就是我得到的全部。它重定向到该页面并仅显示未提交。对于为什么会这样有什么想法吗?
提前致谢。
最佳答案
您在 $_POST
数组中没有 submit
键。使用带有 name="submit"
<input type="submit" name="submit" />
关于javascript - 提交图片上传表单 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34639768/