我查看了所有其他stackoverflow(和谷歌)帖子同样的问题,但似乎没有解决我的问题.
我正在使用pdo和php.
我的代码:
$vals = array(
':from' => $email,
':to' => $recipient,
':name' => $name,
':subject' => $subject,
':message' = >$message
);
print_r($vals);
try {
$pdo = new PDOConfig();
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "SELECT * FROM messages WHERE `message` LIKE :message";
$q = $pdo->prepare($sql);
$q->execute(array(':message' => $vals[':message']));
$resp = $q->fetchAll();
foreach ($resp as $row) {
throw new Exception('Please do not post the same message twice!');
}
$sql = "INSERT INTO messages (from, to, name, subject, message) VALUES (:from, :to, :name, …Run Code Online (Sandbox Code Playgroud) 我正在使用Cakephp 3使用sqlserver作为数据源服务器.我确信我的数据库连接没有问题..因为home.ctp提示我已连接到我的数据库..我也可以使用迁移插件来创建我的表..似乎没有问题使用这些工具.但是在我烘焙MVC之后,我只有错误的页面.
例如$ bin\cake烘焙所有测试
我发现没有错误,MVC在其特定文件夹,testController.php,testTable等中.
并在浏览器localhost:8765\tests
但我得到的只是不同错误的页面..我看到了
Error: SQLSTATE[42000]: [Microsoft][SQL Server Native Client 11.0][SQL Server]Incorrect syntax near the keyword 'desc'.
SELECT * FROM (SELECT Tests.id AS [Tests__id], Tests.desc AS [Tests__desc], (ROW_NUMBER() OVER (ORDER BY (SELECT NULL))) AS [_cake_page_rownum_] FROM tests Tests) _cake_paging_ WHERE _cake_paging_._cake_page_rownum_ <= :c0
左侧有更多错误.
我认为这是因为带有错误查询的控制器或bake生成的查询仅适用于mysql.我只是想知道如何处理这件事.有没有我忘了做的设置?请指教.我是Cakephp的新手,英语不是我的母语,如果我无法正确解释我的问题,对不起.提前致谢.