2016-07-13 4 views
-1

サイトにユーザ登録した場合、データベースに保存されます(明らかです)。PHP - SQL:ユーザに電子メールデータベースを表示

<?php 
$query = mysql_query('select email from users where username="admin4"'); 

while ($row = mysql_fetch_assoc($query)) { 
    echo $row["email"]; 
} 
?> 

質問は銀行にだけアクティブなユーザーの電子メールを取得し、電子メールにサイトのすべてのユーザーを示していない方法です。 アクティブなユーザーと電子メールに「エコー$電子メール」を表示し、どこにどのように表示するかわかりません。

ありがとうございました!

+0

SQLにWHERE句を追加する必要があります。しかし、アクティブなユーザがどのようになっているかを知っているわけではないので、より具体的な助けを与える方法はありません。 – andrewsi

+0

[mysql_'データベース拡張]を使用しないでください(http://stackoverflow.com/questions/12859942/whyあなたがPHPを学んでいるだけならば、あなたのエネルギーを 'PDO'データベースの拡張機能を学ぶのに費やすことができます。 [こちらから](http://php.net/manual/en/book.pdo.php)はとても簡単です。 – RiggsFolly

+2

これは実際にはSQL 101です。これは本の第1章から学ぶべきです。 ** SOはチュートリアルサイトではありません** – RiggsFolly

答えて

0

あなたはこのサイトのすべてのユーザーをあなたのクエリで選択しています。これは一例であり、注意

SELECT email FROM users WHERE username = 'USERNAMEGOESHERE' 

SELECT * FROM users WHERE username = 'USERNAMEGOESHERE' 

または多分

:あなたはこのようなものであるためにあなたのクエリを変更する必要があります。私はあなたのユーザー名の列の名前またはあなたの電子メールの列や個々のユーザーの名前がわからない。

WHERE句は、照会しているテーブルからすべてのレコードを取得できないようにする条件を追加します。

この場合、少なくともあなたのニーズを正しく理解している場合は、ORDER BY句は必要ありません。

クエリのアクティブユーザーをどのように取得するのかわかりませんが、セッション変数からそのユーザーを渡す必要がありますが、そのデータを格納している必要があります。

+0

ありがとうアンドリュー!しかし、どのように私は、このアプリケーションを "自動"にするためにログインしたユーザーを取ることができますか?素敵な!! – eduardo

+0

あなたのセッションで話していたことですが、ログインしているユーザーのためにデータを保存しています。アプリケーションのその部分がどのように機能しているのかわからず、このクエリから完全に分離されています部分。おそらく、$ _SESSION ['username']のようなことをする必要がありますが、それ以上の情報はわかりません。 アクティブなユーザーのユーザー名を取得する方法と、ユーザーのログイン方法(そのプロセスの仕組みに関するすべて)を記述する方法について、別の質問を開く必要があります。あなたが私にタグを付けることができるなら、私はそれにも答えようとします。 –

+0

オクラ、あなたをアンドック! – eduardo

関連する問題