我已经为我的网站上传了一个简单的文件上传内容,方法是将每个文件上传到我的服务器上。但是,现在我希望上传文件的用户还要将文件的描述和上载日期添加到MySQL数据库中。
我现在可以做的就是完成所有这些工作,列出文件或单独列出说明和日期。理想情况下,我想将它全部显示在一个带有日期,描述和文件标题的表中,但我不确定如何将文件链接链接到描述。
如果我不是很清楚,我很乐意再解释一下。
代码: adddocument.php
<form action="upload.php" method="post" enctype="multipart/form-data">
<p>Date:<br><input type="text" name="DocDate" id="datepicker"></p>
<p>Description: (max 100 characters):<br><textarea name="Description" rows="4" cols="50" maxlength="100"></textarea></p>
<p>File you wish to upload: <br><input type="file" name="file"></p>
<p><input type="Submit" value="Submit"></p>
</form>
upload.php的
<?php
$name = $_FILES['file']['name'];
$extension =strtolower(substr($name, strpos($name, '.') + 1));
$size = $_FILES['file']['size'];
$max_size= 2097152;
$type = $_FILES['file']['type'];
$tmp_name = $_FILES['file']['tmp_name'];
if (isset($name)) {
if (!empty($name)) {
if ($extension=='jpg'||$extension=='jpeg'||$extension=='pdf'||$extension=='docx'||$extension=='doc'){
if ($size<=$max_size){
$location='uploads/';
if (move_uploaded_file($tmp_name, $location.$name)){
echo 'File has been Uploaded';
} else {
echo 'There was an error';
}
} else { echo 'File must be 2mb or less';
} } else { echo 'Invalid File type';}
} else {
echo 'Please chose a file.';
}
}
?>
<?php
$con=mysqli_connect("localhost","pytsuemg_brodie","brodie","pytsuemg_brodie");
$sql="INSERT INTO Documents (DocDate, Description)
VALUES('$_POST[DocDate]','$_POST[Description]')";
mysqli_query($con, $sql);
/* commit transaction */
if (!mysqli_commit($con)) {
print("Transaction commit failed\n");
exit();
}
/* close connection */
mysqli_close($con);
?>
目前我只列出使用此代码上传的所有文件。
<?php
$directory ='uploads';
if ($handle = opendir($directory.'/')){
while ($file = readdir($handle)) {
if ($file!='.'&&$file!='..') {
echo '<a href="'.$directory.'/'.$file.'">'.$file. '</a><br>';
}
}
}
?>
答案 0 :(得分:1)
您知道文件的位置($location.$name
),将该信息存储在数据库表中以及名称和说明中。
使用它来生成文件的URL。