我得到这个错误:

Warning: PDO::query() [pdo.query]: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'When, RDV, Comments FROM distributions WHERE IDFond = 1' at line 1 in /Applications/XAMPP/xamppfiles/htdocs/JG/DistributionManager.class.php on line 56

执行此代码时:
$Distribution_Manager->getListByFunds($Selected_Fond->id());

    foreach ($Distribution_Manager as $Distrib)
    {
        echo $Distrib->Comments();
    }

以下是相关功能:
  public function getListByFunds($FundID)
  {
    $Distribution = array();

    $q = $this->_db->query('SELECT id, IDClient, IDFond, Who, When, RDV, Comments FROM distributions WHERE IDFond = '.$FundID);

    while ($donnees = $q->fetch(PDO::FETCH_ASSOC))
    {
      $Distribution[] = new Distribution($donnees);
    }
    return $Distribution;
  }

应该是个小错误,但我已经落后了将近50分钟!
提前感谢您的帮助;)

最佳答案

When是mysql关键字,试试这个

SELECT id, IDClient, IDFond, Who, When AS anything..

或将此关键字括在反引号中
SELECT id, IDClient, IDFond, Who, `When`, RDV..

09-27 19:40