javascript - 提交图片上传表单 PHP

标签 javascript php jquery html forms

我正在尝试将图像上传到目录,但表单存在问题。当表单提交时,它被重定向到表单操作中指定的 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/

相关文章:

javascript - 如何防止单击在 jQuery 中触发多个单击处理程序调用

javascript - Webkit 和 Firefox 之间的 "scrollWidth"行为不一致

javascript - 在 HTML 页面上的同一位置隐藏和显示按钮

javascript - 删除javascript中的文本输入

php - WordPress:今天修改和发布的帖子数

php - Symfony 4 : DependencyInjection Component - Uncaught ReflectionException: Class does not exist

javascript - 使用 js/jquery 在 ajax 表单提交之前需要创建 array/json

javascript - onclick 监听器仅按特定顺序工作?

javascript - 在 Spotfire 中实现 Javascript

javascript - 更改 id 名称的 Jquery 函数继续在其他页面上运行,即使我不希望它运行