Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将表单输入写入文本文件的部分工作AJAX_Javascript_Php_Jquery_Html_Ajax - Fatal编程技术网

Javascript 将表单输入写入文本文件的部分工作AJAX

Javascript 将表单输入写入文本文件的部分工作AJAX,javascript,php,jquery,html,ajax,Javascript,Php,Jquery,Html,Ajax,这个脚本应该以HTML形式接收用户输入,并使用AJAX通过PHP将输入写入文本文件。然而,当我运行这段代码时,我收到两个警报,第一个是“error”,然后是“complete”(在AJAX中形成.fail和.always函数),这让我相信问题在于PHP返回的信息 <?php $fileHandle = fopen('emailList.txt', 'a') OR die ("Can't open file\n"); $email=$_POST['email']; var_dump($em

这个脚本应该以HTML形式接收用户输入,并使用AJAX通过PHP将输入写入文本文件。然而,当我运行这段代码时,我收到两个警报,第一个是“error”,然后是“complete”(在AJAX中形成.fail和.always函数),这让我相信问题在于PHP返回的信息

<?php 
$fileHandle = fopen('emailList.txt', 'a') OR die ("Can't open file\n");
$email=$_POST['email'];
var_dump($email);
$result = fwrite ($fileHandle, "$email; \n");
fclose($fileHandle);
echo (!$result)? "error" : $result;
die;
?>

您得到的响应代码和标题信息是什么?您可以为每个浏览器或firebug使用开发人员工具来解决这个问题。另外,您可以尝试将PHP封装在try-catch语句中,并将捕获的错误作为字符串返回。。。(警报后(“成功!”)。谢谢
<form>
    <input type="text" name="email" value="" class="emailSubmitSidebar" placeholder=" Your Email">
    <input type="submit" value="Add" class="submitButton" id="subscribeButton">
</form>

<script>
    $(document).ready(function() {
        var input = $('.emailSubmitSidebar').val();
        var subscribeButton = $('#subscribeButton');

        subscribeButton.click(function() {
            $.ajax({
                url: 'emailform.php',
                type: 'POST',
                dataType: 'text',
                data: {email: $("input[name=email]").val()},
            })
            .done(function(data) {
                alert("success!")
            })
            .fail(function() {
                alert("error");
            })
            .always(function() {
                alert("complete");
            })
        });
    });

</script>