php pdo 哪里请求对给定值不起作用?

标签 php jquery mysql ajax pdo

我是 php 和 ajax 新手,我希望一旦用户选择一个名称,我就能从 BDD 中获取具有该名称值的行。我为此使用了 Jquery post :

这是我的 BDD 请求:

public static function getIdPre($nomp) //My problem is on this $nomp var
{
  require_once('database.php');
  $db = DbConnection::get();
  $prestQuer = $db->prepare('SELECT * FROM prst WHERE nomp=? ');
  $prestQuer->execute(array($nomp));
  $row= $prestQuer->fetch();
  return($row['idp']);
}

这是我获取 $nomp 值的地方:

 if((isset($_POST['nompr']))){
       $nomp=$_POST['nompr'];
      $FilterTarifs=MainController::getPrstFilterTarif($nomp);
      foreach ($FilterTarifs as $FilterTarif) {
    ...}

一旦我做了这样的事情:

$FilterTarifs=MainController::getPrstFilterTarif('Octroi'); It works perfectly but once I let it in the first way :

$FilterTarifs=MainController::getPrstFilterTarif($nomp);

即使该值是从 Jquery post 正确获取的,它也不起作用:

    $("#filtrBtn").click(function () {
     if(nompres===undefined)
     {
       alert("Choisir un filtre d'abord ");
     }
     else
     {
       $(".bnqInfos").html("");
       $.post(basUrl+'views/component/filterdata.php',
         {
           nompr:nompres,//Here is the given name
         }, function(data) {
          // alert(data);
            $(".bnqInfos").html(data);
        });
     }
  });

这是我的 Controller 函数 getIdPre():

  public static function getPrstFilterTarif($nomp)
    {
      $idpr=Prest::getIdPre($nomp);
      $result=Tarif::getTarifFilter($idpr);
      return $result;
    }

我不明白为什么它不起作用。 我应该怎么办?有人可以帮忙吗?

最佳答案

确保 $nomp 周围没有多余的空格。

$nomp = trim($_POST['nomp']);

关于php pdo 哪里请求对给定值不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48310797/

相关文章:

php - 在搜索 PEAR HTML_Table 替换

php - Javascript 无法获取 AJAX MODAL 形式的变量值

mySQL JOIN 在 WHERE 子句中使用 AND 导致查询缓慢

php - mySQL 复杂的 SELECT 查询?

php - 查找符合所有条件的记录的通用 ID - 如何构建查询?

php - Bcrypt 代码点火器

php - 在 MYSQL 中使用 Enum 进行验证

javascript - 选择一个元素 | Javascript 与 Jquery

jquery - 不同浏览器中的边框底部 Accordion 面板

MySQL - 当 SELECT 返回多列时,根据 SELECT 的结果更新一列