我正在尝试理解如何使用数据,所以我试图从输入字段中获取值并写入json文件,但它不起作用,如果你帮助我,我会很高兴此
HTML:
<form id="myForm">
<label for="yourname">Name:</label>
<input type="text" name="name" placeholder="name" id="name">
<label for="yourname">Last name:</label>
<input type="text" name="last-name" placeholder="last name" id="lastName">
<input type="submit" value="send" id="btn">
</form>
JS:
$(function() {
$("#myForm").submit(function() {
$.ajax({
method: "POST",
url: "form.php",
data: $("#myForm").serialize(),
success: function(data) {
var name = $("#name").val("");
var lastName = $("#lastName").val("");
}
});
return false;
});
});
PHP:
<?php
$ToEmail = 'names.json';
$EmailSubject = 'форма';
$mailheader = "From: ".$_POST["email"]."\r\n";
$MESSAGE_BODY .= "Name: ".$_POST["name"]."";
$MESSAGE_BODY .= "Last-Name: ".$_POST["last-name"]."";
mail($ToEmail, $EmailSubject, $MESSAGE_BODY, $mailheader) or die ("Failure");
?>
答案 0 :(得分:1)
您无法使用Javascript直接写入JSON文件。您应该创建一个执行此操作的PHP脚本,然后将POST请求发送到此PHP脚本。
编辑:这是一个非常简单的脚本。<?php file_put_contents("names.json","{\"name\":\"".$_POST["name"]."\",\"last-name\":\"".$_POST["last-name"]."\"}",FILE_APPEND); ?>
答案 1 :(得分:1)
试试这个
<?php
$inputArray = array(
'name' => $_POST["name"],
'last-name' => $_POST["last-name"],
'email'=>$_POST["email"]
);
$myfile = fopen("myfile.json", "w") or die("Unable to open file!");
$text = json_encode($inputArray);
fwrite($myfile, $text);
fclose($myfile);
echo "file saved";
?>
答案 2 :(得分:0)
您需要创建一个Php脚本,将接收到的数据写入json文件。
尝试使用:http://php.net/manual/en/function.file-put-contents.php
由于收到的数据是$ _GET或$ _POST,您可以使用json_encode方法轻松转换这些数组:http://php.net/manual/en/function.json-encode.php