Я сделал форму входа и выхода из системы, используя «сессии». Есть 2 пользователя admin и ритейлер. Когда администратор вошел в систему, он может увидеть список розничных продавцов, которые создали учетную запись на своем веб-сайте.
Я отобразил список, используя следующий код
<?php
con=mysqli_connect("abc.com","abc","abc","abc");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$result = mysqli_query($con,"SELECT * FROM retailerregister");
echo "<table id='admin'>
<tr>
<th>ID</th>
<th>Name</th>
<th>Email</th>
</tr>";
while($row = mysqli_fetch_array($result))
{
echo "<tr>";
echo "<td>" . $row['id'] . "</td>";
echo "<td>" . $row['name'] . "</td>";
echo "<td><a href='admin_view_retailer_profile.php'>" . $row['email'] . "</td>";
echo "</tr>";
}
echo "</table>";
mysqli_close($con);
?>
Страница, которая отображается, выглядит следующим образом
ID Name Email
1 retailer1 [email protected]
2 retailer2 [email protected]
Когда администратор нажимает на электронное письмо, оно перенаправляется на другую страницу, т.е. admin_view_retailer_profile.php, на которой должны отображаться сведения, связанные с этим конкретным письмом. Часть кода на этой странице
$result = mysqli_query($con,"SELECT * FROM retailerregister where email='email'");
while($row = mysqli_fetch_array($result))
{
echo "Name: " . $row['name'] . "<br>";
echo "Email: " . $row['email'] . "<br>";
echo "Phoneno: " . $row['phoneno'] . "<br>";
echo "Country: " . $row['country'] . "<br>";
echo "Street: " . $row['street'] . "<br>";
echo "City: " . $row['city'] . "<br>";
echo "State: " . $row['state'] . "<br>";
echo "Zipcode: " . $row['zipcode'] . "<br>";
}
Просмотр базы данных
id name email password phoneno country street city state zipcode
1 retailer1 [email protected] email1 phoneno1 country1 street1 city1 state1 zipcode1
2 retailer2 [email protected] email2 phoneno2 country2 street2 city2 state2 zipcode2
Проблема в том, что я не могу просмотреть детали конкретного письма. был бы признателен, если бы кто-то мог сказать мне, как это делается
Замени эту строку
echo "<td><a href='admin_view_retailer_profile.php'>" . $row['email'] . "</td>";
к
echo '<td><a href=\'admin_view_retailer_profile.php?email='.$row['email'].'\'>'.$row['email']. '</td>';
Отсюда мой комментарий.
ссылка, которую вы дали мне это
Последняя порция. Так должно быть
?электронная почта = что-то
; вместо этого вы получаете? Фолио = что-то. я не понимаю, как мы используем электронную почту. в ссылке в этой ссылке. см. утверждение эха. Это ссылка, которую мы даем.
href=\'admin_view_retailer_profile.php?email='.$row['email'].'\'>
Второй момент, если вы проверите ссылку. нет admin_view_retailer. Ссылка, которую вы мне дали в разделе комментариев. Так что я немного озадачен этим. потому что я проверил код в моем локальном хосте. И это работает. попробуйте новое утверждение эха. Если это все еще не работает, вам нужно поговорить с вашим сервисом. поставщик. как я не могу ничего сделать.
потому что решение, которое я дал тебе, работает нормально. Я проверил это. если вы хотите, вы можете проверить на локальном сервере, а также.
Новый комментарий заканчивается сейчас.
Чем занести ваш запрос, если оставлен последний запрос
if(isset($_GET['email']))
{
$email=$_GET['email'];
//change this line in your query as well
$result = mysqli_query($con,"SELECT * FROM retailerregister where email='email'");
//To
$result = mysqli_query($con,"SELECT * FROM retailerregister where email='$email'");
}
Один из способов получения сведений, относящихся к этому конкретному электронному письму, заключается в предоставлении этого электронного письма через URL.
Например: -Смотрите код ниже
<?php
con=mysqli_connect("abc.com","abc","abc","abc");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$result = mysqli_query($con,"SELECT * FROM retailerregister");
echo "<table id='admin'>
<tr>
<th>ID</th>
<th>Name</th>
<th>Email</th>
</tr>";
while($row = mysqli_fetch_array($result))
{
echo "<tr>";
echo "<td>" . $row['id'] . "</td>";
echo "<td>" . $row['name'] . "</td>";
echo "<td><a href='admin_view_retailer_profile.php'>" . $row['email'] . "</td>";
echo "</tr>";
}
echo "</table>";
mysqli_close($con);
?>
В приведенном выше коде admin_view_retailer_profile.php не знает адрес электронной почты, который был выбран
Таким образом, альтернативой является приведенный ниже код.
echo "<table id='admin'>
<tr>
<th>ID</th>
<th>Name</th>
<th>Email</th>
</tr>";
while($row = mysqli_fetch_array($result))
{
echo "<tr>";
echo "<td>" . $row['id'] . "</td>";
echo "<td>" . $row['name'] . "</td>";
echo "<td><a href='admin_view_retailer_profile.php?email=<?php echo $row['email'];?>'>" . $row['email'] . "</td>";
echo "</tr>";
}
echo "</table>";
Теперь admin_view_retailer_profile.php изменения в [email protected]
На admin_view_retailer_profile.php сначала проверьте, была ли установлена переменная $ _GET [’email’]. Если она установлена, затем продолжайте запрашивать базу данных.
Например: —
if(isset($_GET['email'])){
$email = $_GET['email'];$result = mysqli_query($con,"SELECT * FROM retailerregister where email={$email}");
while($row = mysqli_fetch_array($result))
{
echo "Name: " . $row['name'] . "<br>";
}
Имейте в виду, что приведенный выше код не реализует никакой безопасности, т.е. проверяет, существует ли электронная почта или нет.