我在PHP Phalcon工作。我正在使用 XAMPP 服务器。我正在MVC中使用phql。我有一个名为"Patient_Info"的表和一个名为"PatientInfo"的类。我已经使用 insert 语句将数据输入到表中,它工作正常。现在我想选择特定patient_id的数据。模型类在这里:
class PatientInfo extends 'Phalcon'Mvc'Model
{
private $BP;
private $Temperature;
private $Medical_Info;
private $Patient_ID; //foreign key
private $DateOfMeeting;
public function setDateOfMeeting($value)
{
$this->DateOfMeeting = $value;
}
public function getDateOfMeeting()
{
return $this->DateOfMeeting;
}
}
该类还有其他类似的getter和setter,我没有在这篇文章中包括。至于表,它具有与模型类的属性同名的列,但还有一个额外的列,即Unique_ID,即主键。它设置为随表中的每个新条目自动递增。
现在这是我的选择语句:
$select_query = "Select "
."PatientInfo.BP,"
."PatientInfo.Temperature,"
."PatientInfo.Medical_Info,"
."PatientInfo.Patient_ID,"
."PatientInfo.DateOfMeeting FROM PatientInfo WHERE Patient_ID = :pid:";
$patient1 = $this->modelsManager->executeQuery($select_query,array('pid' => '4gt'));
//my echo statement
$this->view->setVar("patient_id", $patient1->Patient_ID);
在相应的视图中,我有这个回声语句:
<div>Patient's ID: <?php echo $patient_id; ?></div>
当我运行代码时,没有显示任何内容来代替回声。它只是空白,就像"患者 ID:"就是这样。
我哪里出错了?
尝试:
$this->view->setVar("patient_id", $patient1[0]->Patient_ID);
去掉双引号中的逗号并删除连接点:
$select_query = "Select PatientInfo.BP, PatientInfo.Temperature, PatientInfo.Medical_Info, PatientInfo.Patient_ID, PatientInfo.DateOfMeeting FROM PatientInfo WHERE Patient_ID = :pid:";
你的XAMPP应该有phpMyAdmin。 在phpMyAdmin中运行查询,看看你得到的结果还是错误。
或者在executeQuery
语句之后检查错误。