不检查现有文件? PHP

时间:2016-03-31 13:59:46

标签: php

我正在尝试使用文本文档创建用户帐户系统。但是我对我的代码的问题在于它只是覆盖文档而不是先测试文档是否存在,如果它没有创建文档。任何想法为什么会这样?

<?php
    if (isset($_GET['NewUsername'])){
        if (isset($_GET['NewPassword'])){           
            $NewPassword = $_GET['NewPassword'];
            $NewUsername = $_GET['NewUsername'];
            if (file_exists("USERS/".$NewUsername)) {
                echo 'Error: User Already Exists!';
            }
            else{
                $myFile=fopen("USERS/".$NewUsername.".txt","w") or exit("Can’t open file!");
                fwrite($myFile, $NewPassword);
                fclose($myFile);
                echo 'Account Created!';
            }
        }
    }   
?>

2 个答案:

答案 0 :(得分:6)

您正在写入扩展名为.txt的文件,但您正在使用file_exists来测试没有扩展程序的文件....

所以,改变

if (file_exists("USERS/".$NewUsername)) {

为:

if (file_exists("USERS/".$NewUsername ."txt")) {

答案 1 :(得分:1)

您没有使用正确的文件名来检查文件是否已存在。尝试使用下面的代码更改代码。

if (file_exists("USERS/".$NewUsername.".txt")) {