我在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);
在相应的视图中,我有这个echo语句:
<div>Patient's ID: <?php echo $patient_id; ?></div>
当我运行代码时,没有任何内容显示在echo的位置。它就像“患者的身份证”一样空白:就是这样。
我哪里错了?
答案 0 :(得分:1)
从双引号中取出逗号并删除连接点:
$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
语句后检查错误。
答案 1 :(得分:1)
尝试:
$this->view->setVar("patient_id", $patient1[0]->Patient_ID);