PHP fwrite和变量isset

时间:2015-09-07 13:36:26

标签: php post get fwrite isset

我正在一个用户要填写表单的网站上工作,表单将打印到.txt文件中。

一切正常,但我想知道当用户将一个输入框留空时它是如何实现的,它将不会显示在文本文件中。

我的代码(index.php):

<form action="sendinfo.php" method="post">
Your Name:<br />
<input type="text" name="name"><br />
Your Message:<br />
<textarea name="message"></textarea><br />
<input type="submit" value="Send Info">
</form>

我的代码(sendinfo.php)

    <?php
    //variables
    $name = $_POST['name'] >
    $message = $_POST['message'] 

    //code i need to know
    if (!isset()){

    }
    ?>

    <?php
        //write text file.
        $file = fopen("Test.txt","w");
        fwrite($file, "Name: " . $name . "\r\n");
        fwrite($file, "Message: " . $message . "\r\n");
    ?>

1 个答案:

答案 0 :(得分:0)

你认为太复杂了。试试这个:

<?php

//variables
$name = $_POST['name'];
$message = $_POST['message']; 

//write text file.
$file = fopen("Test.txt","w");
if ($name) fwrite($file, "Name: " . $name . "\r\n");
if ($message) fwrite($file, "Message: " . $message . "\r\n");
?>

这可行的原因是php如何处理这样的条件:它会将表达式解析为任何“falsy”的错误,因此是未设置的变量,空变量和包含false或null的变量。对于其他所有内容,表达式将解析为true,因此将写入条目。

相关问题