PHP上传脚本错误


PHP upload script error

我是php的新手,对这个网站。。。我正在尝试制作一个网站,在那里你将从CSGO上传cfg。我的PHP脚本不起作用:(.我想:写下上传者的ip,检查文件名是否为cfg.rar,检查文件上传/键入的用户名是否已经存在-如果是,则读取password.txt中的密码并将其与键入的密码进行比较-error=error/good=删除现有的cfg,如果文件不存在:create-dir:uploads/typed username,用键入的密码在:password.txt创建文件,检查文件大小,检查文件类型(.rar),检查上传是否中止

php代码:

<?php
$myfile = fopen("ip.txt", "a") or die("Unable to open file!");
$txt = "'n". $_SERVER['REMOTE_ADDR'];
fwrite($myfile, $txt . basename( $_POST['name']));
fclose($myfile);
$target_dir = "uploads/";
$target_folder = $target_dir . $_POST['name'] . "/";
$target_file = $target_dir . $_POST['name'] . "/" . basename($_FILES["fileToUpload"]["name"]);
$uploadOk = 1;
if(basename($_FILES["fileToUpload"]["name"]) == "cfg.rar") {
        echo "FILE IS AN cfg.rar";
        $uploadOk = 1;
    } else {
        echo "FILE IS NOT AN cfg.rar.";
        $uploadOk = 0;
}
// Check if file already exists
if (!file_exists($target_folder)) {
    $password = file_get_contents($target_folder . "password.txt");
    if ($_POST['password'] !== $password) {
    echo "THIS NAME ALREADY EXIST!";
    echo "IF IT'S YOURS, TRY TO RE-ENTER THE PASSWORD!";
    $uploadOk = 0;
    }
    else
    {
        unlink($target_file);
    }
}
else
{
    mkdir($target_folder);
    $fopenh = fopen($target_folder . "/pass.txt", "c");
    fwrite($fopenh, $_POST['password']);
    fclose($fopenh);
}
// Check file size
if ($_FILES["fileToUpload"]["size"] > 150000) {
    echo "SORRY, YOUR FILE IS TOO LARGE.";
    $uploadOk = 0;
}
// Allow certain file formats
if($imageFileType != "rar" ) {
    echo "SORRY, ONLY cfg.rar FILES ARE ALLOWED.";
    $uploadOk = 0;
}
// Check if $uploadOk is set to 0 by an error
if ($uploadOk == 0) {
    echo "SORRY, YOUR FILE WAS NOT UPLOADED.";
// if everything is ok, try to upload file
} else {
    if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
        echo "THE FILE ". basename( $_FILES["fileToUpload"]["name"]). " HAS BEEN UPLOADED.";
    } else {
        echo "SORRY, THE FILE COULD NOT BE UPLOADED!.";
    }
}
?>`

html代码:

<center><form action="upload.php" method="post">
            Username: <input type="text" name="name" id="name"><br/>
            Password: <input type="password" name="password" id="password"><br/>
            Select cfg.rar to upload:<input type="file" name="fileToUpload" id="fileToUpload"><br/><br/>
            <input type="submit" value="UPLOAD" name="submit">
            </form>
            </br>
            <p>By uploading a file you accept, that this site will save your ip address!</p></center>

感谢您的帮助:)进入睡眠:3

处理(上传)文件时,表单中需要一个有效的enctype。

enctype="multipart/form-data"添加到表单标记中。

阅读手册:

  • http://php.net/manual/en/features.file-upload.post-method.php

并确保你上传到的文件夹有适当的权限写入。

使用错误报告:

  • http://php.net/manual/en/function.error-reporting.php