我正在尝试编写一个PHP脚本来处理POST请求。最终,它需要接受JSON并将其写入文件。现在,当我调用公共URL时,我只想尝试一些工作。
<?php
item1 = $_GET['username'];
echo $item1;
fopen('TESTER_FILE.txt', 'w');
?>
我正在用
进行测试curl -H "Content-Type: application/json" -X POST -d '{"username":"xyz","password":"xyz"}' http://*********.com/file.php
它似乎经历并且没有抛出任何错误,但没有任何反应。我没有回音或文件创建。
答案 0 :(得分:1)
item1 = $_GET['username'];
1:您需要一个$
前缀来表示它是一个变量
2:如果您希望发布数据,请使用$_POST
代替$_GET
E.g:
$item1 = $_POST['username'];
fopen('TESTER_FILE.txt', 'w');
这只会打开文件进行写入,实际上并没有写任何东西。为简单起见,请尝试使用file_put_contents()
代替:
file_put_contents('TESTER_FILE.txt', $item1);
如果你想追加而不是覆盖:
file_put_contents('TESTER_FILE.txt', $item1, FILE_APPEND);
它似乎经历并且没有抛出任何错误,但没有任何反应。我没有回音或文件创建。
由于你尝试来做这两件事,你可能会在某个地方出现错误而且它被隐藏了(第3行可能是缺少的$
! !)。
启用错误报告!
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
// do the rest of your stuff