文件未保存到特定文件夹(目录创建)

时间:2012-09-25 21:55:13

标签: php

我尝试将我的文件status.txt保存到特定目录call social。我创建了社交目录,但由于某种原因我的status.txt名称,其名称是socialstatus.txt,而status.txt文件不在社交目录中,而是在社交目录所在的文件夹中(我希望我不让你迷惑。)

我尝试这样做,但似乎与代码的放置有关... 那些编码将文件保存到目录的是(!file_exists($ newdir)){

非常感谢您的大力帮助

<?php

$newdir = "../../data/social";
umask(0007);



$errors = array();
$permissionsArray = (isset($_POST['permission']) ? $_POST['permission'] : null);


if (isset($_POST["statuscode"])) 
{
    $statusCode = $_POST["statuscode"];
    $patternCode = "/^S[0-9]{4}$/";
    if (preg_match($patternCode, $statusCode)) 
    {
        $ans = "";
        $length = strlen($statusCode);
        echo $statusCode . "<br />";
    }
}
else
{
    array_push($errors, "Please fill in Status Code as they are mandatory field");
}

if (isset ($_POST["status"])) 
{
    $status = $_POST["status"];
    $pattern = "/^[a-zA-Z0-9\s\.,!?]*$/";
    if (preg_match($pattern, $status)) 
    {
        echo $status . "<br />";
    }
}
else
{
    array_push($errors, "<b>Error:</b> Please fill in Status as they are mandatory field!");
}

if (isset ($_POST["share"])) 
{
    $shareButton = $_POST["share"];
    echo $shareButton . "<br />";
}
else
{
    //Not possible unless in exceptional circumstances
    array_push($errors, "Please choose a share");
}

if (isset($_POST["date"])) 
{
    $date = date("d/m/y");
    echo $date . "<br />";
} else {
    $date = $_POST["date"];
} 

if (isset($permissionsArray)) 
{
    foreach($permissionsArray as $permission){
        echo $permission . "<br />";
    }
}

if(!file_exists($newdir)){
    mkdir($newdir, 02770);

$statusTxt = fopen($newdir. "status.txt", "a");

if  (is_writeable($newdir. "status.txt")) {
    if (fwrite($statusTxt, $statusCode . " " . $status . " " . $shareButton . " " . $date . " " . $permission . "\n"))
{
}
    echo "<p>Your form has succesfully been submit!</p>";
}
fclose($statusTxt);
}


if(isset($statusCode, $status))
{
    //if(empty($statusCode) || empty($status))
    //{
    //array_push($errors, "Please fill in the required part!");
    //}
    if (0 === strlen($statusCode > 5 || $statusCode < 5)) 
    {
        array_push($errors, "<b>Error:</b> You characters length is either less or more than 5 characters<br/>");
    }
    if (0 === preg_match("/\S+/", $statusCode)) 
    {
        array_push($errors, "<b>Error:</b> You forgot to fill in Status Code!<br/>");
    }
    if (0 === preg_match("/\S+/", $status)) 
    {
        array_push($errors, "<b>Error:</b> You forgot to fill in the Status! <br/>");
    }
    if (0 === preg_match($patternCode, $statusCode)) 
    {
        array_push($errors, "<b>Error:</b> please make sure that the first letter in Status Code is uppercase 'S' following by 4 numbers. <br/>");
    }
    if (0 === preg_match($pattern, $status)) 
    {
        array_push($errors, "<b>Error:</b> Please make sure to avoid symbols other than \",.?!\" <br/>");
    }
}


if (isset($errors)) 
{
    foreach ($errors as $error) 
    {
        echo '<strong>', $error, '</strong>';
    }
}

echo '<a href="phpstatusform.php">Back to Form page.</a> <br />';

echo '<a href="index.php">Back to Home page.</a>'; 


?>

1 个答案:

答案 0 :(得分:0)

$ newdir =&#34; ../../ data / social &#34;;
$ statusTxt = fopen( $ newdir。&#34; status.txt&#34; ,&#34; a&#34;);

替换变量......

$ statusTxt = fopen(&#34; ../../ data / social&#34;。&#34; status.txt&#34; ,&#34; a&#34 ); 你错过了/