如何解决尝试通过php将照片上传到myphpadmin,但是失败
所以我只是在学习PHP,我有下面的代码,但是它没有将照片发送到数据库。 我的数据库文件的工作方式与其他页面一样,并且数据已发送到数据库。我的代码很基本,因为这是我现在知道如何编写它的方式,但是我缺少一些东西。操作页面恢复为空白。甚至没有提到一个错误,并且照片未在数据库表中显示应该去的地方。任何建议将不胜感激。再次只是学习,所以我知道我的代码是基本的。
//Form
<form enctype="multipart/form-data" action="Upload.php" method="post">
<input type="file" name="photo" id="fileSelect">
<textarea align="center" name="Hashtag" cols="40" placeholder ="Describe your photo"></textarea>
<input value="Upload" class="special big" type="submit">
</form>
//Action file Upload.php
<?php
require "DB.PHP";
if (isset($_POST["submit"]))
{
$tag = $_POST["Hashtag"];
$photo = rand(1000,10000)."-".$_FILES["photo"]["name"]; //Create unique file name
$sql = "INSERT INTO photos (hashtag,Image) VALUES('$tag','$photo')";
if ($conn ->query ($sql)){
echo '<script type="text/javascript">';
echo 'alert("Your Photo was submitted.")';
echo '</script>';
echo "<script>setTimeout(\"location.href = 'Photo_Submit.php';\",0000);</script>";
}
else "Error: ".$sql. "<br>". $conn->error;
$conn->close();
}
?>
//table in database
`Image` varchar(255) NOT NULL,`hashtag` varchar(255) NOT NULL,`user_id` varchar(50) CHARACTER SET utf8 NOT NULL,`Time Stamp` int(11) NOT NULL DEFAULT current_timestamp(),PRIMARY KEY (`user_id`)
解决方法
- 我不知道在键入问题时是否出错,但是我可以看到在您的
else
中您没有回显错误。将echo
放在错误之前
if () {
//
} else {
echo "Error: ".$sql. "<br>". $conn->error;
}
-
根据您的表定义,
user_id
为NOT NULL
表示user_id
字段不能为空。除非您设置默认值(例如时间戳),否则必须在每个请求上都设置它! -
考虑有关Dharman的有关SQL注入和其他方面的建议。
对数据库中的图像使用longtext
,而不是varchar(255)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。