我正在关注W3schools网站上有关如何上传文件的分步指南。唯一我不明白的是php代码在哪里,因为如果我试着把它们放在html下面那么我得到通知说明“文件”是未定义的。
有谁知道php代码的去向?如果有人可以提供W3schools代码布局的样本,那么它将非常有用。我希望看到它应该是什么样子但我会不断收到通知。
点击here查看W3schools网站上的文件上传步骤。
谢谢
答案 0 :(得分:0)
你需要一个php解析器来查看任何php页面。
我认为你的HTML页面有一个表格,它与下面的内容非常类似:
<form action="handler.php" method="post" enctype="multipart/form-data">
<input type="file" name="my_file" />
</form>
您需要创建一个名为“handler.php”的新页面,其中包含以下内容:
<?php
//the file is stored in the server's temporary files folder. The file will live there for as long as the page is loaded for, which is on average... less than 1 second.
//You need to execute all your commands before the end of the page. otherwise the file will be gone!
//To do that, use this:
move_uploaded_file($_FILES['userfile']['tmp_name'], "address")
//where you replace "address" with the location you want on the server.
?>
请记住,您需要一个PHP解析器来执行PHP页面。
答案 1 :(得分:0)
php代码进入自己的文件“upload_file.php”,然后在支持PHP的网络服务器上托管它。
答案 2 :(得分:0)
首先,您必须在表单标记中指定enctype属性。
<form action="demo_post_enctype.asp" method="post" enctype="multipart/form-data">
然后,您可以在同一文档或新文件中编写PHP代码。如果你把PHP代码放到同一个文档中,你必须使用action =“?php echo $ _SERVER ['PHP_SELF'];?&gt;”因为信息将被传递到服务器。
我建议您在同一文档的顶部编写PHP代码。
答案 3 :(得分:0)
// checking if the user has sent the data to the form
if (isset($_POST['upload_file']))
{
// checking if the file size doesn't exceed the maximum size
if ($_FILES['upload_file']['size'] < 10485760)
{
// checking if the user selected a file or thera are errors
if ($_FILES['upload_file']['error'] == UPLOAD_ERR_OK)
{
// checking if the file type is allowed or not
if ($_FILES['upload_file']['type'] == 'image/jpeg' || $_FILES['upload_file']['type'] == 'image/gif' || $_FILES['upload_file']['type'] == 'image/png')
{
$file_name = date("Hisu");
if ($_FILES['upload_file']['type']=='image/jpeg')
$file_name = $file_name.".jpg";
if ($_FILES['new_picture']['type']=='image/gif')
$file_name = $file_name.".gif";
if ($_FILES['new_picture']['type']=='image/png')
$file_name = $file_name.".png";
move_uploaded_file($_FILES['upload_file']['tmp_name'], 'objects/upload/files/'.$file_name);
$URL_file = 'objects/upload/files/'.$file_name;
mysql_query("INSERT INTO uploads (URL) VALUES (".$URL_file.")");
}
}
}
}