Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.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
简单ajax php提交表单_Php_Ajax - Fatal编程技术网

简单ajax php提交表单

简单ajax php提交表单,php,ajax,Php,Ajax,如何使用ajax将表单内容提交到txt文件 <input id="form" placeholder="fill out this" type="text"> <button>Submit</button> 提交 阿贾克斯 $(“按钮”)。单击(函数(){ var food=$('#form').val(); $.ajax({ url:'form.php', 类型:'POST', 数据:食品, }); }); form.php <?php

如何使用ajax将表单内容提交到txt文件

<input id="form" placeholder="fill out this" type="text">
<button>Submit</button>

提交
阿贾克斯


$(“按钮”)。单击(函数(){
var food=$('#form').val();
$.ajax({
url:'form.php',
类型:'POST',
数据:食品,
});
});
form.php

<?php
    error_reporting(E_ALL);
    $data = $_POST['food'];
    $f = fopen('filehere.txt', 'w+');
    fwrite($f, $data);
    fclose($f);
?>


txt文件总是出现空白

AJAX调用,类型错误,您必须发送一个对象

$.ajax({
    url:'test.php',
    type:'POST',
    data: {food: food}
});

ajax请求有问题,更准确地说是
数据部分。你可以通过两种方式实现你的目标

1.编辑现有代码 只是

data: food,
使用

2.在我看来更优雅 HTML:

在这里,您可以从表单序列化数据。它的工作原理与您发送的普通表格相同。因此,现在在PHP中,您可以使用表单名获得数据表单
$\u POST
全局数组。比如说

$input = $_POST['myInput'];

你的问题是你没有给你的数据命名。您刚刚发送了一个数据,但PHP无法通过名称识别它

data: {
  food: food
}
<form id="myForm">
    <input name="myInput" type="text"/>
    <button name="submit" type="submit">Submit</button>
</form>
$('#myForm > button').click(function(e) {
    e.preventDefault(); //prevent default behaviour
    var formData = $('#myForm').serialize() //serialize data from form
    $.ajax({
        //everything as before
        data: formData
    });
});
$input = $_POST['myInput'];