0
我正在研究一個應該從MySQL獲取數據的PHP腳本。MySQL查詢變量不被接受
下面是我在做什麼:
<?php
include('db.php');
session_start();
$doctor_actual=$_SESSION['doctor_actual'];
echo $doctor_actual;
if(isset($_REQUEST['actionfunction']) && $_REQUEST['actionfunction']!=''){
$actionfunction = $_REQUEST['actionfunction'];
call_user_func($actionfunction,$_REQUEST,$con,$limit,$adjacent);
}
function showData($data,$con,$limit,$adjacent){
$page = $data['page'];
if($page==1){
$start = 0;
}
else{
$start = ($page-1)*$limit;
}
$sql = "select * from tb_opiniones_doctor where codigo_verificacion = '".$doctor_actual."' order by id_opinion_doctor asc";
$rows = $con->query($sql);
$rows = $rows->num_rows;
$sql = "select * from tb_opiniones_doctor where codigo_verificacion = '".$doctor_actual."' order by id_opinion_doctor asc limit $start,$limit";
$data = $con->query($sql);
$str='<table><tr class="head"><td>Id</td><td>Firstname</td><td>Lastname</td></tr>';
if($data->num_rows>0){
while($row = $data->fetch_array(MYSQLI_ASSOC)){
$str.="<tr><td>".$row['id_opinion_doctor']."</td><td>".$row['id_opinion_doctor']."</td><td>".$row['id_opinion_doctor']."</td></tr>";
}
}else{
$str .= "<td colspan='5'>No Data Available</td>";
}
$str.='</table>';
echo $str;
pagination($limit,$adjacent,$rows,$page);
}
我的問題是在這兩個查詢,他們只當我把真正的價值爲$ doctor_actual,不作爲的變量。
我已經回覆$ doctor_actual的值,它是9dv2ACvtwn2。
如果我把查詢.. where codigo_verificacion =「9dv2ACvtwn2」...查詢工作正常。
如果我把:
codigo_verificacion = '".$doctor_actual."'
或
codigo_verificacion = '.$doctor_actual.'
或
codigo_verificacion = $doctor_actual
它顯示的信息:
No Data Available
謝謝Wolen,你是對的。 – mvasco
儘管技術上正確,但通常不建議使用'global' - >'global $ var;'。由於他們已經在使用函數參數,所以爲什麼不建議在那裏添加它。 – Sean
你是對的,作爲參數傳遞價值是更好的主意,我會更新我的答案,謝謝! – Wolen