2017-10-11 6 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

$result= $result->execute();を置き換える

は、クエリであなたの '$のtable'は、あなたの関数の' $ tableName'ありますか? – SpOOnisBacK

+1

$ result-> fetch()を$ result-> fetch_array()に置き換えてください。 – Sucharitha

+0

あなたの関数は何か[エラーを返す](http://php.net/manual/en/function.return.php)メッセージはあなたの質問をhttps://stackoverflow.com/q/2973202/4265352の複製にします。 '$ table'という変数はありません(関数のパラメータリストに' $ tableName'があります)。 – axiac

答えて

0

mysqli_stmt::execute(またはそれに類するもの)を使用しているようですが、$result->execute()は明らかにブール値を返します。これを$resultに割り当て、ブール値でfetch()を呼び出してみます。ただ、$result->execute();

+0

完了。できます –