【发布时间】:2014-04-23 07:46:37
【问题描述】:
代码:
Function ShowDataPatient($idURL)
{
$query =" select * from cmu_list_insurance,cmu_home,cmu_patient where cmu_home.home_id = (select home_id from cmu_patient where patient_hn like '%$idURL%')
AND cmu_patient.patient_hn like '%$idURL%'
AND cmu_list_insurance.patient_id like (select patient_id from cmu_patient where patient_hn like '%$idURL%') ";
$result = pg_query($query) or die('Query failed: ' . pg_last_error());
while ($row = pg_fetch_array($result))
{
$hn = $row["patient_hn"];
$pid = $row["patient_id"];
$datereg = $row["patient_date_register"];
$prefix = $row["patient_prefix"];
$fname = $row["patient_fname"];
$lname = $row["patient_lname"];
$age = $row["patient_age"];
$sex = $row["patient_sex"];
}
return array($hn, $pid, $datereg, $prefix, $fname, $lname, $age, $sex);
}
错误:
Notice: Undefined variable: hn in C:\xampp\htdocs\...
Notice: Undefined variable: pid in C:\xampp\htdocs\...
Notice: Undefined variable: datereg in C:\xampp\htdocs\...
Notice: Undefined variable: prefix in C:\xampp\htdocs\...
Notice: Undefined variable: fname in C:\xampp\htdocs\...
Notice: Undefined variable: lname in C:\xampp\htdocs\...
Notice: Undefined variable: age in C:\xampp\htdocs\...
Notice: Undefined variable: sex in C:\xampp\htdocs\...
我该如何解决这个问题?
【问题讨论】:
-
你没有进入
while ()块,所以当你尝试返回它们时没有设置任何变量。 -
没有获取行,循环永远不会开始,您可能只想在找到行时返回
-
如果您的查询没有返回任何内容,则不会有
$row并且随后您的局部变量副本未定义。因此,请处理查询。 -
我猜您的查询没有按预期运行,并且您正在返回未定义变量的行。
-
看来您最多只希望返回一行,因此您可以简单地
return pg_fetch_array($result)并取消所有变量。