试图通过php将照片上载到myphpadmin,但失败

试图通过php将照片上载到myphpadmin,但失败,php,mysql,forms,Php,Mysql,Forms,所以我只是在学习PHP,我有下面的代码,但它不会将我的照片发送到我的数据库。 我的数据库文件的工作原理与我在其他页面中使用的一样,数据被发送到数据库。我的代码是基本的,因为这是我目前知道如何编写它的方式,但我缺少一些东西。操作页面返回为空白。甚至没有提到一个错误,照片也没有在数据库表中显示它们应该去哪里。任何建议都会被采纳。再次只是学习,让我知道我的代码是基本的 //Form <form enctype="multipart/form-d

所以我只是在学习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`)
//表单
//动作文件Upload.php

对数据库中的图像使用
longtext
,而不是
varchar(255)

  • 我不知道键入问题时是否出错,但我可以在您的
    else
    中看到您没有重复错误。在错误之前放置
    echo
  • if(){
    //
    }否则{
    echo“Error:”.$sql.“
    ”$conn->Error; }
  • 根据表定义,
    user\u id
    notnull
    表示
    user\u id
    字段不能为NULL。必须在每个请求上设置它,除非您设置了默认值(如时间戳)

  • 考虑一下关于达曼关于SQL注入和其他方面的建议


  • 顾名思义,Phpmyadmin只是一个内置于PHP中的实用程序,用于管理MySQL表。请注意,有几十个此类教程,包括那些通过使用准备好的和绑定好的查询来优先防止sql注入的语句。警告:您完全可以使用参数化的准备好的语句,而不是手动生成查询。它们由或提供。永远不要相信任何形式的输入!即使您的查询仅由受信任的用户执行。
    if () {
        //
    } else {
        echo "Error: ".$sql. "<br>". $conn->error;
    }