繁体   English   中英

简单的ajax php提交表单

[英]Simple ajax php submit form

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

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

阿贾克斯

<script>

$('button').click(function (){
var food = $('#form').val();
 $.ajax({
            url:'form.php',
            type:'POST',
            data: food,


        });
});

</script>

表单.php

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

txt 文件不断出现空白

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

1. 编辑现有代码

只是相反

data: food,

data: {
  food: food
}

2.在我看来更优雅

HTML:

<form id="myForm">
    <input name="myInput" type="text"/>
    <button name="submit" type="submit">Submit</button>
</form>

没有什么复杂的,只是简单的 HTML 形式。

$('#myForm > button').click(function(e) {
    e.preventDefault(); //prevent default behaviour
    var formData = $('#myForm').serialize() //serialize data from form
    $.ajax({
        //everything as before
        data: formData
    });
});

在这里,您从form序列化数据。 它将与您发送普通表格一样工作。 所以现在在 PHP 中,您可以使用表单名称从$_POST全局数组中获取数据。 例如

$input = $_POST['myInput'];

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

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM