2017-05-21 4 views
0

私はここに座っていて、catogoryで4レコードを選択する必要があるmysqlクエリのために頭をひねり、チェックする必要がありますメッセージは、すでに顧客に送信されている場合、それは私が再びクエリを実行する必要がありますされている場合:データベース内に4レコードを見つけて他のテーブルに存在するかどうかを確認

$result=mysqli_query($conn, "Select * from messages where approved='1' AND 
catogory='".$catogory."' ORDER by rand() LIMIT 4"); 
    while($row=mysqli_fetch_array($result)) 


     $result=mysqli_query($conn, "select * from send_messages where 
message_id='".$id."' AND username='".$username."'"); 
     while($row=mysqli_fetch_array($result)) 
     $rowcount=mysqli_num_rows($result); 
     if($rowcount > "0"){ 
      header("location: index.php?username=$username"); 
      exit(); 
     } 
echo "<input type='radio' id='test' name='message' value='$row[id]'><label for='test'>$row[message]</label><br>"; 
    echo "</form>"; 

コードは、1つのレコードの良い作品が、私は4つのレコードをプリントアウトする必要があり、その後、私はこれを試してみてくださいコードは表示されません

答えて

0

最初のmysql結果変数$resultを2回目のmysqli_query()呼び出しで上書きしています。これは、3行目のwhileループが実際には6行目のmysqlクエリの内容をチェックすることを意味します。ループが終了すると、利用可能なメッセージが増えても結果セットは空になります。

さまざまなmysqlクエリに異なる結果変数を使用するので、 "SELECT * FROM messages"の結果セットまたは "SELECT * FROM send_messages"の結果セットのいずれかで作業します。

+0

ええ、あなたはそれを行う方法の例を教えてください。 –

+0

名前1変数 '$ result1'、もう1つの' $ result2'です。 – Progman

+0

まだ動作していないのであれば、2番目のクエリでそれらを実行し、最後に4つのメッセージをエコーできるように、最初のクエリで4つのIDを取得する必要があります –

関連する問題