2017-03-27 3 views
-2

その行の列の1つが指定された値を持つ場合、データベースから行全体をエコーし​​ようとしています。beginner php mysql行からすべての列を印刷する方法

は、ここで私は何をしようとしているの簡単な例を示します。この

database

から私は「レベル」の値として1を持って行全体をエコーし​​ます。

アダム・スミス1つのもの757890

ネルソン・マンデラ1と別のもの800656

だから当然、私はこれを試してみました::だから、例えば、最終的な結果は以下のようになり

$query = "SELECT * FROM data WHERE level = '" . $askedLevel . "'"; 
$run_query = mysqli_query($mysql, $query); 

しかし、ここから私が欲しいものを正確にエコーする方法はありますか?

あなたは、各行の上に、そのようなループであろう任意の助け

+2

[so]へようこそ!あなたがここで何が予想されるかについてもっと知る必要があるように見えます。**自分でコードを書くことができます**。 [もっと研究をして](// meta.stackoverflow.com/questions/261592)問題がある場合は**あなたが試したことを投稿することができます** **動作していないことの明確な説明** [** Minimal、Complete、Verifiable example **](// stackoverflow.com/help/mcve)を提供します。私は良い質問と[完璧な質問]を読むことをお勧めします(http://codeblog.jonskeet.uk/2010/08/29/writing-the-perfect-question/)。また、[ツアー]も必ず行ってください。 –

+0

ちょうどあなたの見出しをgoogleに入力して、何が起こったのかを見てください。 'PHP mysqlの行からすべての列を表示する方法'あなたはこの質問のスタックオーバーフローを必要としません。 ' –

答えて

1

してくれてありがとう:明らか

while($row = mysqli_fetch_assoc($run_query)){ 
    echo $row["first_name"] . $row["last_name"]; 
} 

、あなたが必要とどのような列名を持つ"first_name""last_name"を変更するだろうが、これはの基本でありますするべきこと。

mysqli_fetch_assocは、結果をフェッチし、相対カラム名とともに配列に格納します。

arif_suhail_123も指摘したように、あなたはあなたのSQL内のセキュリティ上の問題を持っています。つまり、変数を解析するためのパラメータ化されたクエリをSQLに使用しないでください。あなたがどうなるのか、この問題を解決するには

は次のとおりです。参考

$stmt = mysqli_prepare($mysql, "SELECT * FROM data WHERE level = ?"); 
mysqli_stmt_bind_param($stmt, 'i', $askedLevel); // binding the variable $askedLevel to '?' 
$result = mysqli_stmt_execute($stmt); // executing the question 

while($row = mysqli_fetch_assoc($result)){ 
    // print rows 
} 

iは整数を意味します。 sは文字列を意味します。 dはダブルを意味します。


SUGGESTION:あなたのクエリが正しく動作するために今、これは必要ありません、しかし、それはクリーンアップ(と読みやすく)劇的にあなたのPHPます。しかし、私は非常にあなたがオブジェクト指向PHPに切り替えることをお勧めします。

その代わり、こののようなものを見て上記のスクリプトを変更します

$stmt = $mysql->prepare("SELECT * FROM data WHERE level = ?"); 
$stmt->bind_param('i', $askedLevel); 
$result = $stmt->execute(); 

while($row = $result->fetch_object()){ 
    echo $row->first_name . $row->last_name; 
} 

をただし、完全にあなた次第です! :)

+0

コードは安全ではないことを彼にも教えてください。 –

+1

@ arif_suhail_123私は彼が最初に持っていた質問に答えました。私は現在、彼が間違いなくパラメータ化されたクエリを使用すべきであるという事実を含めるように私の答えを編集中です。 –

+0

yep valid Answer now +1 –

関連する問題