在php中写入文件

在php中写入文件,php,html,Php,Html,我正在用php建立一个网站。“联系我们”部分有四个不同的字段,要求用户输入。我想将用户提交的数据保存到一个名为contact.txt的文本文件中。问题是表单中的submit按钮根本不起作用 PHP CODE <?php $name=$_POST['name']; $email=$_POST['email']; $mob=$_POST['mobile']; $msg=$_POST['message']; $txt=" Name=$name \n\r Email=$email \n\r Mob

我正在用php建立一个网站。“联系我们”部分有四个不同的字段,要求用户输入。我想将用户提交的数据保存到一个名为contact.txt的文本文件中。问题是表单中的submit按钮根本不起作用

PHP CODE
<?php
$name=$_POST['name'];
$email=$_POST['email'];
$mob=$_POST['mobile'];
$msg=$_POST['message'];
$txt=" Name=$name \n\r Email=$email \n\r Mobile=$mob \n\r Message=$msg \r\n\r\n\r";
$fh = fopen('contact.txt', 'a+');
fwrite($fh,$txt);
fclose($fh); 

?>

HTML CODE

                    <div id="contact-section">
                        <h3>Fill the form to Register </h3>
                        <div class="status alert alert-success" style="display: none"></div>
                        <form id="main-contact-form" class="contact-form" name="contact-form" method="post" action="sendemail.php">
                            <div class="form-group">
                                <input type="text" name="name" class="form-control" required="required" placeholder="Name">
                            </div>
                            <div class="form-group">
                                <input type="text" name="mobile" class="form-control" required="required" placeholder="Mobile">
                            </div>
                            <div class="form-group">
                                <input type="email" name="email" class="form-control" placeholder="Email ID">
                            </div>
                            <div class="form-group">
                                <textarea name="message" id="message" required="required" class="form-control" rows="4" placeholder="Institute/College/School"></textarea>
                            </div>                        
                            <div class="form-group">
                                <button type="submit" class="btn btn-primary pull-right">Submit</button>
                            </div>
                        </form>        
                    </div>
                </div
PHP代码
HTML代码
填写登记表
提交
测试开放成功:

if($fh = fopen('contact.txt', 'a+') !== FALSE){
   fwrite($fh,$txt);
   fclose($fh); 
}

将我的想法与
Fky
相结合,这里是最完整的代码:

<?php
if(!empty($_POST) && array_key_exists('name', $_POST) && array_key_exists('email', $_POST) && array_key_exists('mobile', $_POST) && array_key_exists('message', $_POST)) {
    $name=$_POST['name'];
    $email=$_POST['email'];
    $mob=$_POST['mobile'];
    $msg=$_POST['message'];
    $txt=" Name=$name \n\r Email=$email \n\r Mobile=$mob \n\r Message=$msg \r\n\r\n\r";
    $fh = fopen('contact.txt', 'a');
    if($fh = fopen('contact.txt', 'a+') !== FALSE){
       fwrite($fh,$txt);
       fclose($fh); 
    }
    else {
        echo "File can not be opened.";
    }
}
else {
    echo "Nothing Sent.";
}
?>


您只是假设文件已成功打开。在与外部资源打交道时,千万不要假设自己成功。始终检查故障:
if($fh==false){die(“未能打开文件”)}
。还可以启用
错误报告
显示错误
。这可能会告诉您它失败的原因。还要检查$\u POST是否确实返回了数据。这是否回答了您的问题?我已经编辑了整个问题。请看一看并帮忙。