[英]Using a Variable in WHERE clause does not work
我正在運行一個正在運行的簡單查詢,也就是說,WHERE 子句中沒有 PHP 變量。
但是,當我插入變量時,它什么也不做。
<?php
$query = $this->db->query("SELECT `rem1` FROM `exam_group_exam_results` WHERE `exam_group_class_batch_exam_student_id`= $student_value->id and `exam_group_class_batch_exam_subject_id`=1");
$getrem = $query->row();
echo $getrem->rem1;?>
但是當我只插入一個值時,一切正常
<?php
$query = $this->db->query("SELECT `rem1` FROM `exam_group_exam_results` WHERE `exam_group_class_batch_exam_student_id`= 11 and `exam_group_class_batch_exam_subject_id`=1");
$getrem = $query->row();
var_dump($getrem);?>
我 var_dump 這個變量student_value['id']
並打印出正確的值,即 11。
我已經在這幾個小時了。 請幫忙
應該是語法問題
$query = $this->db->query("SELECT `rem1` FROM `exam_group_exam_results` WHERE `exam_group_class_batch_exam_student_id`= ".$student_value->id." and `exam_group_class_batch_exam_subject_id`=1");
否則,請檢查您的變量是對象還是數組
嘗試將對象的值分配給另一個變量。 例子
$id_value = student_value['id'];
然后在您的 SQL 代碼中使用該變量
$query = $this->db->query("SELECT `rem1` FROM `exam_group_exam_results` WHERE `exam_group_class_batch_exam_student_id`= $id_value and `exam_group_class_batch_exam_subject_id`=1");
我認為查詢語法沒有讀取學生 ID,因此結果將顯示為 WHERE CLAUSE。
// Try this
$studentId = $student_value->id;
$sql = "SELECT `rem1` FROM `exam_group_exam_results` WHERE `exam_group_class_batch_exam_student_id`=`$studentId` and `exam_group_class_batch_exam_subject_id`=1"
$query = $this->db->query($sql);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.