为了账号安全,请及时绑定邮箱和手机立即绑定

javascript fetch() 正在返回状态代码 500,并从 mysql 表中进行搜索

javascript fetch() 正在返回状态代码 500,并从 mysql 表中进行搜索

PHP
婷婷同学_ 2021-11-26 17:49:04
我正在尝试使用 javascript 从 MySQL 数据库中获取一些元素,fetch如下所示:function fetchPrices(){    fetch('getPricingPlans.php', {      method:'POST',      body: new URLSearchParams('size=' + size)    })        .then(res => res.json())        .then(res => viewPrices(res))        .catch(e => console.error('Error: ' + e))  }下面是getPricingPlans.php调用另一个 PHP 文件livesearch,该文件是一个构造函数连接到数据库的类,并且是加载页面时调用的第一件事。<?phprequire_once('livesearch.php');$size = $_POST['size'];$con = new livesearch();$data = $con->getPrices($size);echo json_encode($data); ?>接下来getPrices()来自livesearch.php:public function getPrices($size){        $query = "SELECT price FROM PricePlans WHERE size = size";        $stmt = $this->con->prepare($query);        $stmt->execute(["size" => $size]);        // to put values in an associative array with value mapped to field name        $data = $stmt->fetchAll(PDO::FETCH_ASSOC);        return $data;    }PricePlans是我在数据库中的表,其中包含一个名为price.问题是我在fetch执行时收到以下错误:Failed to load resource: the server responded with a status of 500 (Internal Server Error)一些发现:如果我将 更改fetch()为GET,并在getPricingPlans.php(不进入livesearch.php)中回显一个简单的字符串,错误就会消失。其次,我已经让这个fetch()在同一个 PHP 页面中使用不同的不同的表格使用相同的格式。是否有第二次调用(实例)到 livesearch.php 是问题所在?
查看完整描述

1 回答

?
偶然的你

TA贡献1841条经验 获得超3个赞

只是一个建议参数应该使用 :param 格式


    $query = "SELECT price FROM PricePlans WHERE size = :size";

    $stmt = $this->con->prepare($query);

    $stmt->execute([":size" => $size]);


查看完整回答
反对 回复 2021-11-26
  • 1 回答
  • 0 关注
  • 312 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信