使用来自W3Schools的修改上传脚本破碎?

时间:2014-08-28 21:41:30

标签: php

使用来自W3Schools的经过修改的上传脚本时,它无法正常运行且StackOverflow用户可以使用它吗?!?!?!

这是守则,不知道发生了什么! 所有这一切都是。

注意:未定义的索引:第12行的C:\ xampp \ htdocs \ Social Network \ upload.php中的文件

注意:未定义的索引:第13行的C:\ xampp \ htdocs \ Social Network \ upload.php中的文件

注意:未定义的索引:第14行的C:\ xampp \ htdocs \ Social Network \ upload.php中的文件

注意:未定义的索引:第15行的C:\ xampp \ htdocs \ Social Network \ upload.php中的文件

注意:未定义的索引:第16行的C:\ xampp \ htdocs \ Social Network \ upload.php中的文件

文件无效

change_photo.php

    <html>
    <body>
    <?php
    session_start();
    $my_id = $_SESSION['user_id'];
    ?>
    <form action="upload.php" method="post" enctype="multipart/form-data">
    <label for="file">Filename:</label>
    <input type="file" id="file"><br>
    <input type="submit" value="Submit">
    </form>
    </body>
    </html>

upload.php

<style>
.sucess{
color:#088A08;
}
.error{
color:red;
}
</style>

<?php
$file_exts = array("jpg", "bmp", "jpeg", "gif", "png");
$upload_exts = end(explode(".", $_FILES["file"]["name"]));
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/png")
|| ($_FILES["file"]["type"] == "image/pjpeg"))
&& ($_FILES["file"]["size"] < 2000000)
&& in_array($upload_exts, $file_exts))
{
if ($_FILES["file"]["error"] > 0)
{
echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<br>";
echo "Type: " . $_FILES["file"]["type"] . "<br>";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br>";
// Enter your path to upload file here
if (file_exists("profile_pictures/" .
$_FILES["file"]["name"]))
{
echo "<div class='error'>"."(".$_FILES["file"]["name"].")".
" already exists. "."</div>";
}
else
{
$my_id = $_SESSION['user_id'];
$new_file_name = $my_id;

move_uploaded_file($_FILES["file"]["tmp_name"],
"profile_pictures/" . $new_file_name);
echo "<div class='sucess'>"."Stored in: " .
"profile_pictures/" . $new_file_name."</div>";
}
}
}
else
{
echo "<div class='error'>Invalid file</div>";
}
?>

1 个答案:

答案 0 :(得分:0)

您没有在HTML部分中定义文件名。变化:

<input type="file" id="file">

<input type="file" id="file" name="file">