前提・実現したいこと
https://qiita.com/Schwl_Freiheit/items/9a01985d220d8984548b
この方のコードをもとに、文字列をPHPに転送させようとしています。
しかし、予期せぬエラーが出てしまいました。
発生している問題・エラーメッセージ
実際にVSCodeから出たエラー
syntax error, unexpected token "if" Unexpected 'if'. Expected ';'.
firefoxのネットワークのほうにあったエラー
Parse error: syntax error, unexpected token "if" in C:\xampp\htdocs\TEST\test.php on line 7
該当のソースコード
Test.js
Javascript
1send_text = a b c d; 2$.ajax({ 3 type: "POST", 4 url: "test.php", 5 contentType: "Content-Type: application/json; charset=UTF-8", 6 data: send_text, 7 error: function (XMLHttpRequest, textStatus, errorThrown) { 8 console.log("ajax通信に失敗しました"); 9 //失敗した時の処理 10 }, 11 success: function (response) { 12 console.log("ajax通信に成功しました"); 13 //成功した時の処理 14 } 15 })
PHP
1<?php 2//送信先のJSONのURL 3$jsonUrl = $_POST; 4echo($_POST); 5json_decode($jsonUrl); 6//JSON内のデータを受け取る 7if(file_exists($jsonUrl)){ 8 $json = file_get_contents($jsonUrl); 9 $jsonData = json_decode($json, true); 10}else{ 11 echo "No Data"; 12} 13 14 15//JSからのデータを受け取る 16$data = file_get_contents('php://input'); 17$data = json_decode($data); 18//配列を合体させて保存 19$jsonData = array_merge($jsonData, $data); 20$jsonData = json_encode($jsonData); 21file_put_contents($jsonUrl, $jsonData);
試したこと
まず、PHPのドキュメント(https://www.php.net/manual/ja/function.file-exists.php)を調べ、if文が間違いないでないことを確認しました。
次に、ajaxに問題がないことを確認するため、php単体でif文を書き、同様のエラーが発生することを確認しました。
補足情報(FW/ツールのバージョンなど)
XAMPP:3.2.4
vscode:1.55
jquery:3.6.0
回答2件
あなたの回答
tips
プレビュー