管理者は、ユーザーのログインに基づいてメンバーを承認できるようにします。私はすべての情報を持つmemebersテーブルを持っています。管理者とpassword="xxxx"
とlocation="canada"
とすると、location= "canada"
のメンバーだけが表示されます。 これまで私が行ってきたことです。このSqlクエリを使用すると、データベース内のすべてのメンバーを表示する$view_members_query="select * from members";
が表示されます。私は管理者が場所に基づいて見るべきものだけを表示する必要があります。私を助けてください。ユーザーのログインに基づいてデータベースのデータを表示
おかげ
管理者ログイン
<?php
$con = mysqli_connect("localhost","root","","table");
if (mysqli_connect_errno())
{
echo "MySQLi Connection was not established: " . mysqli_connect_error();}
// checking the user
session_start();
if(isset($_POST['login'])){
$location = mysqli_real_escape_string($con,$_POST['location']);
$username = mysqli_real_escape_string($con,$_POST['username']);
$password = mysqli_real_escape_string($con,$_POST['password']);
$sel_user = "select * from Admin_table where location= '$location' AND user_name='$username' AND password='$password'";
$run_user = mysqli_query($con, $sel_user);
if (mysqli_num_rows($run_user)>0)
{
echo "<script>window.open('memberslist.php','_self')</script>";
$_SESSION['user_name']=$_POST['username'];
}
else {
echo "<script>alert('Location, Username or password is not correct, try again!') </script>";
}}
?>
memberslist.php
<table class="simple-table">
<thead>
<tr>
<th>First Name</th>
<th>Last Name</th>
<th>Location</th>
</tr>
</thead>
<?php
$view_members_query="select * from members";
$run=mysqli_query($con,$view_members_query);
while($row=mysqli_fetch_array($run))//while look to fetch the result and store in a array $row.
{
$fname=$row[1];
$lname=$row[2];
$location=$row[3];
?>
<tr>
<!--here showing results in the table -->
<td><?php echo $firstname; ?></td>
<td><?php echo $lastname; ?></td>
<td><?php echo $location; ?></td>
私はwhere条件を考えましたが、どこでlocation = locationを使用すれば、どのように管理者のログインにリンクするのですか?私は実際にセッションの使い方を知らない。私がこれを達成する方法を説明してください – user2998991
セッションを通して管理者アカウントにリンクしています。ログイン時に場所をセッションに保存し、メンバーに照会するときにこの情報を使用することで、各管理者に関連するメンバーだけが表示されます。セッションをどのように使用するかに関するリンクで答えを更新しました。 – Shadow