从电子邮件表单输入的数据不会转换为JSON文件

时间:2016-11-20 作者:The Chewy

我已经在我的Wordpress页面中添加了一个电子邮件输入/表单,并希望以此作为JSON数据收集信息。

HTML代码为:

<form method="get"><p id="myform"><input type="email" name="EMAIL" placeholder="enter email address" required />
<input id="submit" type="submit" value="Sign up" /></p></form>
php,它在我的函数中。php文件,是:

if (isset($_POST[\'submit\'])) {
$file = "data.json";
$json_string = json_encode($_POST, JSON_PRETTY_PRINT);
file_put_contents($file, $json_string, FILE_APPEND);
}
我有一个数据。json文件,在上述代码的php部分中引用,它位于我的子主题的第一级。

我没有收到任何错误消息,输入字段允许输入电子邮件地址,但数据不会进入我的数据。JSON文件。

我似乎不明白为什么?

任何帮助都是无稽之谈。

艾米丽

1 个回复
SO网友:Syed Fakhar Abbas

我已经检查了代码。file_put_contents 函数接受文件的绝对路径。对绝对路径使用“get\\u template\\u directory()”函数。请检查更新的代码。

<form method="get"><p id="myform"><input type="email" name="EMAIL" placeholder="enter email address" required /> <input id="submit" name="submit" type="submit" value="Sign up" /></p></form>



if (isset($_POST[\'submit\'])) {
$file = get_template_directory() . \'/data.json\';
$json_string = json_encode($_POST, JSON_PRETTY_PRINT);
file_put_contents($file, $json_string, FILE_APPEND);
}
注意:代码正在将所有POST数据写入json文件。如果您只需要电子邮件地址,请更改json_encode($_POST, JSON_PRETTY_PRINT); 进入json_encode($_POST[\'EMAIL\'], JSON_PRETTY_PRINT);

干杯:)

相关推荐

显示作者姓名PHP(自制插件)

我有一个需要帮助的问题,因为我自己找不到解决办法。我接管了一个网站,之前有人在那里创建了一个自制插件。。使用默认插件“Contact Form 7”,用户可以在页面上创建帖子。()https://gyazo.com/c8b20adecacd90fb9bfe72ad2138a980 )关于自行创建的插件“Contact Form 7 extender”,帖子是通过PHP代码在后台生成的(https://gyazo.com/115a6c7c9afafd2970b66fd421ca76a3)其工作原理如下:如果