作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我在提交 _form.php
到 SiteController.php
时遇到了一些问题,会出现这个错误信息,
“CDbCommand 无法执行 SQL 语句:SQLSTATE[42000]:语法错误或访问冲突:1064 您的 SQL 语法有错误;”
它无法运行查询。也尝试使用另一个查询命令,错误是相同的。
网站 Controller .php
public function actionCreate()
{
$model = new Detail;
if (isset($_POST['Detail'])) {
// print_r($_POST['Detail']);
$model->attributes = $_POST['Detail'];
$connection = Yii::app()->db;
$data = date('Y-m-d');
$date = "'" . $data . "'";
$teach_id = Yii::app()->user->getId();
$i = 1;
foreach ($_POST['Detail'] as $stud=>$status)
{
$sql = 'INSERT INTO {{detail}} (`id`, `student_id`, `teacher_id`, `date`, `status`) VALUES
(NULL, ' . $stud . ',' . $teach_id . ',' . $date . ', ' . $i . ' );';
$command = $connection->createCommand($sql);
$exec = $command->query();
}
if ($exec) {
$this->redirect(array('index'));
}
}
$this->render('create', array('model' => $model, ));
}
最佳答案
尝试将 {{detail}} 替换为真实的表名,并对整个字符串使用双引号,对每个变量使用单引号
"INSERT INTO {{detail}}
(`id`, `student_id`, `teacher_id`, `date`, `status`)
VALUES
(NULL, '$stud', '$teach_id', '$date', '$i');"
替换
$date = "'" . $data . "'";
到
$date = $data;
并且您在不同情况下使用 $_POST
数组的相同键
$model->attributes = $_POST['Detail'];
...
foreach ($_POST['Detail'] as $stud => $status)
关于php - Yii: php -> 无法在 SiteController 中执行 SQL 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31169915/
我是 RoR 的新手,我在为现有数据库实现 Rails 应用程序时遇到了一些问题。最后一个我无法摆脱,我在网上也找不到任何关于它的信息,所以我决定把它贴在这里。提前致谢! 错误: 当我尝试向站点表插入
我在提交 _form.php 到 SiteController.php 时遇到了一些问题,会出现这个错误信息, “CDbCommand 无法执行 SQL 语句:SQLSTATE[42000]:语法错误
我是一名优秀的程序员,十分优秀!