2017-10-11 35 views
0
<?php 
function createDBQuery($tableName, $condition, $cvalue,$pos) { 
include('../connect.php'); 

$sqlStatement="select * from $table where $condition = $cvalue"; 

$result = $db->prepare($sqlStatement); 

$result= $result->execute(); 

for($i=0; $rowTable = $result->fetch(); $i++){ 


    if($rowTable) 
    { 
     echo $rowTable[$pos]; 
    } 
    else 
    { 
     echo $rowTable[0]; 
    } 


}  

}사용자 정의 함수를 동적으로 부울에) (가져 오기

바디

$cval=$row['fileID']; 
$file= createDBQuery('file','fileID',$cval,'1'); 
//print_r($file); 
echo $file; 

출력

전화 멤버 함수에 PHP에서 데이터베이스 값을 반환합니다 C : \ xampp \ htdocs \ pos \ main \ purchase.php : 88

+0

쿼리에'$의 table'이 함수의'$ tableName'가되어 함께 $result= $result->execute();를 대체? – SpOOnisBacK

+1

$ result-> fetch()를 $ result-> fetch_array()로 대체하십시오. – Sucharitha

+0

함수가 [return "]하지 않습니다 (http://php.net/manual/en/function.return.php). 오류 메시지는 여러분의 질문을 https://stackoverflow.com/q/2973202/4265352의 복사본으로 만든다.'$ table'이라는 변수는 없다. (함수의 매개 변수 목록에'$ tableName'이있다.) – axiac

답변

0

mysqli_stmt::execute (또는 이와 비슷한 것)을 사용하고 있고 $result->execute()이 분명히 부울을 반환하는 것 같습니다. A$result에 할당 한 다음 fetch()을 부울로 시도하십시오.

그냥 $result->execute();

+0

완료. 그것은 작동한다. –