2016-09-27 4 views
0

mysqliバインド関数を使用してデータベースから行を表現するとき、printf()の代わりにfetch_arrayを使用する方法を知っています。fetch_arrayを使用したバインドパラメータによるMysqliクエリ

$row->mysqli_fetch_arrayを使用して、printf()機能を使用する代わりに、$row[0],$row[1]をデータベースから印刷するにはどうすればよいですか?私はあなたの質問を得た場合

+0

申し訳ありませんが、そのどれも意味がありません。あなたはその質問を試して言い換えることができますか? –

+0

それは難しいかもしれません。可能な解決策については、私の記事を参照してください。[mysqliのPDOと比較したユーザビリティの問題](https://phpdelusions.net/pdo/mysqli_comparison#compatibility) –

+0

また、あなたが行っていたことのコードサンプルを投稿してください。行き詰まった。 – boroboris

答えて

0

プリペアドステートメントからの連想配列を返す次のようにあなたは、このように手順をフォローアップすることができます。

<?php 
$category = $_POST['category']; 
$sql = "select id, name from items where category = ?"; 
$stmt = $connection->prepare($sql); 
$stmt->bind_param('s', $category); 
if($stmt->execute()) 
{ 
$result = $stmt->get_result(); 
$a = $result->fetch_array(MYSQLI_ASSOC); // this does work :) 
} 
else 
{ 
    error_log ("Didn't work"); 
} 
?> 

連想配列から値を出力するためにwhileループを使用できます。

while($a = $result->fetch_array(MYSQLI_ASSOC)) 
{ 
    echo 'Id: '. $a['id']; 
    echo '<br>'; 
    echo 'Name: '.$a['name']; 
} 

出力:

Id: 1 

Name: Example 
+0

ありがとう、私はあなたの例のどのパラメータが$クエリであるか尋ねたいですか? $ sql?それは$ result = $ sql-> get_result()でなければなりません。 ? – MrJustin

+0

@ MrJustin。私は出力を修正しましたが、今はうまくいきます。思考を共有する。ありがとう:) –

+0

おかげで今、それはいいです:) – MrJustin

0

正しくあなたが試すことができます:

$row=mysqli_fetch_array($result,MYSQLI_NUM); 
foreach($row as $cell) { 
    echo "$cell"; 
} 
+0

彼は*準備*クエリからそれを得る方法を尋ねています –

関連する問題