如何使用php在数据库中存储文件路径?

时间:2017-11-04 06:07:35

标签: php mysql

我有两个php页面adp3.php(表单页面)和adp4.php(将内容上传到数据库)

adp3.php:

<form method="POST" enctype="multipart/form-data">
 <label>SUBJECT:</label><select name="subject">
 <?php 
$query="SELECT * FROM subject WHERE SyllabusID=".$batch1." and SemID=".$sems."";
$result=mysqli_query($con, $query);
//loop
foreach($result as $subject){
?>
<option value="<?php echo $subject['SubjectID']."-".$subject['SubjectName']; ?>"><?php echo $subject['SubjectName']; ?></option>
<?php
}
?>
  </select>
   <br>
DATE: <select name="date">
    <option>MAY/JUNE</option>
    <option>NOV/DEC</option>
    </select>

    <p color="white">YEAR: <input  type="varchar" name="year"/></p></br>

    <p color="white">PAPER LINK: <input  type="file" name="file"/></p></br>
         <br>
         <button formaction="adp4.php" class="btn-login">GO</button>

adp4:

<?php
$date =$_POST['date'];
$year=$_POST['year'];
$file=$_FILES['file'];

    if($date && $year)
    { mysql_connect("localhost","root","") or die("we couldnt connect");
       mysql_select_db("dbmsproj");
        $result=mysql_query("INSERT INTO paper(SubjectID,Date,Dlink) values('$subid','$date $year','$file')");

      ?>  <p color="white"><?php echo "Paper SUCCESSFULLY ADDED TO THE DATABASE";
    }
    else
    {?>
        <p color="white"><?php echo  "ALL FIELDS NEED TO BE FILLED ";
    }
        ?>

除了文件路径之外,所有内容都在db中正确输入(在文件路径字段中显示“Array”)..请帮助

更新:(问题已解决)谢谢你们帮助我。我的代码终于工作了。你们是最好的

4 个答案:

答案 0 :(得分:2)

尝试使用$ _POST [&#39;文件&#39;]而不是使用$ _FILE,因为您只需知道文件路径

修改

至于文档,$ _FILES []返回一个数组,其中包含有关您上传文件的所有信息。 使用此数组,您可以使用

获取包含文件路径的临时名称
$file=$_FILES['file']['temp_name'];

上述代码将为您提供服务器中上传文件的相关临时名称

另请参阅:PHP Documentation

为了进一步检查,这些是存储在数组中的数据(对于PHP文档):

$_FILES['userfile']['name']

客户端计算机上文件的原始名称。

$_FILES['userfile']['type']

文件的mime类型,如果浏览器提供此信息。一个例子是&#34; image / gif&#34;。然而,这种哑剧类型不会在PHP方面进行检查,因此不会将其值视为理所当然。

$_FILES['userfile']['size']

上传文件的大小(以字节为单位)。

$_FILES['userfile']['tmp_name']

上传文件存储在服务器上的文件的临时文件名。

$_FILES['userfile']['error']

与此文件上传相关联的错误代码。

答案 1 :(得分:0)

首先你检查你插入了什么: 通过这个。

print_r($_FILES["file"]);

答案 2 :(得分:0)

检查这可能会有所帮助。

<uses-permission android:name="android.permission.SEND_SMS" />

答案 3 :(得分:-1)

如果您访问的文件名比您必须这样做

$ file = $ _FILES [“file”] [“name”];