Отображение зарегистрированной информации о пользователе - PullRequest
1 голос
/ 05 декабря 2011

В настоящее время я работаю над сценарием входа в систему, который использует PHP, Mysql и Jquery (хотя мне нужна помощь только с базой данных PHP и Mysql).Для этого я использую учебное пособие / скрипт: Учебное пособие

Так что мой сценарий на данный момент выглядит аналогично кодированию в учебнике с изменениями для моей конкретной базы данных Mysql.В настоящее время я пытаюсь добиться того, чтобы, как только пользователь вошел в систему, я хочу, чтобы ему была показана конкретная информация, такая как его имя, ранг и т. Д. У меня есть строки в базе данных mysql, в которых также содержится идентификатор,имя пользователя и т. д. В частности, есть место, которое я хочу, чтобы оно отображалось в скрипте, которое показано в части «demo.php»:

<?php
     // FROM TUTORIAL PAGE 
     if(!$_SESSION['id']):
?> 
[...]
<?php
else:

?>

<div class="left">

    <h1>Members panel</h1>

        <p>You can put member-only data here.
</p>
        <a href="registered.php">View a special member page</a>
        <p>- or -</p>
        <a href="?logoff">Log off</a>

        </div>

        <div class="left right">
        </div>

<?php
    endif;
?>

Там, где написано «вы можете поместить элемент-только данные здесь ", я хочу, чтобы код, извлекаемый из базы данных, отображал информацию, которую я хочу получить конкретно для имени пользователя, вошедшего в систему. Например, если вошел пользователь" dan124 ", где находятся данные только для членов, я хочу, чтобыпоказать текущий ранг dan124, набранные очки и тому подобное.В качестве примера можно привести одну строку, которую я хочу извлечь из базы данных: «pts».

Я пробовал несколько разных кодов и возился с некоторыми обнаруженными мною вещами, но я не могу получить то, чего пытаюсь достичь.Я знаю, как обходить базовые операции с базами данных, но я впервые работаю специально с зарегистрированной пользовательской информацией.

Если кто-то может помочь с этим, я был бы очень признателен.Я уверен, что я не первый, кто использовал учебник, с которым я работаю, и хотел получить такую ​​информацию, я просто не могу ничего найти!Если вам нужна дополнительная информация, дайте мне знать.

Ответы [ 2 ]

1 голос
/ 08 декабря 2011

Хорошо, большое спасибо Тому Хоусу, чей ответ помог мне выяснить, какое кодирование мне нужно, с некоторыми из предоставленных им кодировок. После долгих проб и ошибок мне удалось выработать php-кодирование, чтобы извлечь конкретную информацию из базы данных пользователей и показать ее при входе в систему. Это кодировка, с которой я работал:

<?php
if($_SESSION['id'])
$result = mysql_query("SELECT * FROM database WHERE `id` = $_SESSION[id]")
    or die(mysql_error());  

     while($row = mysql_fetch_array( $result )) {
 echo '<b>Points Accumulated:</b>' .$row['pts'];
 echo '<br>';
 echo '<b>Rank:</b>' .$row['rank'];
 }?>

Это привело к тому, что вошедшему в систему пользователю показывали ТОЛЬКО ЕГО / ЕГО баллы и звание, чего я и пытался добиться.

1 голос
/ 05 декабря 2011

Возможно, я неправильно понимаю, что вы спрашиваете, но я слышал, что вам нужна помощь с базовой архитектурой базы данных и SQL.

Очень распространенный способ использования MySQL - иметь таблицу visitor, которая выглядит следующим образом:

visitor_id|visitor_login_name|visitor_current_rank|visitor_points_accumulated
----------|------------------|--------------------|---------------------------
1         |dan124            |veteran             |1254
6892      |mary8             |honored guest       |1

Теперь, на всю жизнь, я не знаю, как вы заставляете посетителя входить в систему, не совершая более сложных действий, чем это уже было, но при условии, что вы вошли в систему с их логином, доступным в качестве переменной сеанса, вы бы используйте следующий запрос, чтобы получить необходимую информацию.

$query = "SELECT * FROM `visitor` WHERE `visitor_login_name` = $_SESSION[visitor_login_name]";

Затем вы запустите этот запрос, и результаты будут содержать информацию, необходимую вам как члены массива результатов, например:

$ rank = $ result ['visitor_current_rank'];

Если вы можете дать мне некоторую обратную связь относительно того, насколько хорошо я угадал ваше намерение, мы можем двигаться немного дальше отсюда.

...