dongzuan4917 2019-05-08 19:44
浏览 61
已采纳

我无法将发布的数据添加到从PHP执行的javascript发送的数据库中

I have problem with my code.

In this code I am sending some data to another server.

fetch("https://example.com/test.php", {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',

  },
  body: JSON.stringify({
"isim": lastPlayersTouched[0].name,
"sure": getTime(scores)
  })

});

And here I have database connection:

<?php 

try {

    $db=new PDO("mysql:localhost;dbname=test1_evet;charset=utf8",'test1_evet','N#rK%*?PkTki');
    //echo "ok";

} 

catch (PDOException $e) {
    echo $e->getMessage();
}

?>

And the final part here I am trying to add posted things to add my database:

<?php 
header('Access-Control-Allow-Origin: *'); 
    header("Access-Control-Allow-Credentials: true");
    header('Access-Control-Allow-Methods: GET, PUT, POST, DELETE, OPTIONS');
    header('Access-Control-Max-Age: 1000');
    header('Access-Control-Allow-Headers: Origin, Content-Type, X-Auth-Token , Authorization');

require_once 'baglan.php';

// if (isset($_POST)) {

if ($_SERVER['REQUEST_METHOD'] == 'POST') {
  $arr = json_decode(file_get_contents('php://input'), true);

    $kaydet=$db->prepare("INSERT into test SET
        isim=:isim,
        sure=:sure
        ");

    $insert=$kaydet->execute(array(

        // 'isim' => $_POST['isim'],
        'isim' => $arr['isim'],
        // 'sure' => $_POST['sure']
        'sure' => $arr['sure']

    ));

}

// }

?>

But the problem is, I can send data from another server to my current server with 200 OK code. But PHP doesn't add things I've sent to database. I mean not inserting to database. Can someone help me on that? I will be very happy if you guys help me.

Any fix?

  • 写回答

1条回答 默认 最新

  • doulan8330 2019-05-09 05:56
    关注
    fetch("https://example.com/test.php", {
        method: 'POST',
        headers: {
            'Content-Type': 'application/json'
        },
        mode: 'cors',
        body: JSON.stringify({
            'isim': lastPlayersTouched[0].name,
            'sure': getTime(scores)
        })
    });
    

    database connection (host parameter missing)

    $db=new PDO("mysql:host=localhost;dbname=test1_evet;charset=utf8",'test1_evet','N#rK%*?PkTki');
    

    Access-Control-Allow-Headers (xhr header missing)

    header('Access-Control-Allow-Headers: Origin, Content-Type, X-Auth-Token , Authorization, X-Requested-With');
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵