Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: переход по ссылке
Форумы портала PHP.SU » PHP » SQL и Архитектура БД » переход по ссылке

Страниц (1): [1]
 

1. Petro - 15 Ноября, 2010 - 12:06:10 - перейти к сообщению
Здравствуйте!
Вывожу из бд список юзеров, и при нажатии на user_n перехожу на страницу user_n,
но чтобы не создавать каждому юзеру свою страницу(файл пхп) хочу создать 1 файл в котором по запросу будет формироваться страница юзера с его данными(все данные берутся из бд). Пытаюсь это сделать с помощью сессий, в данном случае мне кажется что они более подходящие. Подскажите пожалуйста что я делаю не так?
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <?php
  3. [color=red]session_start();[/color]
  4. ?>
  5. <html>
  6. <center><head><h1>all users</h1></head>
  7. <body>
  8. <?php
  9. $mshost="127.0.0.1"; //host
  10. $msuser="root"; //user
  11. $mspass="123456"; //password
  12.  
  13. $mscon=mysql_connect($mshost, $msuser, $mspass) or die(mysql_error()); //soedinenie s mysql
  14. mysql_select_db('base') or die(mysql_error()); //выбор БД
  15.  
  16. $row=mysql_query('select num_komp, name_u, name_i from users');
  17.  
  18. while($r=mysql_fetch_array($row)){
  19.   [color=red]  $_SESSION[$r[1]]=$r[1];[/color]
  20.     $filename=$r[1].'.php';
  21.     if (file_exists($filename)){
  22.        echo '<a href='.$r[1].'.php>'.$r[1].' '.$r[2].' ('.$r[0].')</a><br>';}
  23.     else {echo 'nugno sozdatb'.$filename.'<br>';}
  24.                                 }
  25. mysql_close($mscon);
  26. ?>
  27. </center>
  28. </body>
  29. </html>


CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <html>
  3. <center><head><h1>Motorykin Petro Mikhaylovich</h1></head>
  4. <body>
  5.  
  6. <?php
  7. include '../dannue.php';
  8. $r=mysql_query("select name_o, num_komp, ip from users where name_u='[color=red]$_SESSION[$r[1]][/color]'");
  9. echo '<table border=1>';
  10. while($row=mysql_fetch_array($r))
  11. {
  12.         echo '<tr><td>Otdel:</td><td>', $row[0], '</td></tr>
  13.               <tr><td>№ Komp</td><td>', $row[1], '</td></tr>
  14.               <tr><td>ip adres</td><td>192.168.1.', $row[2], '</td></tr>';
  15. }
  16.  
  17. mysql_close($mscon);
  18. ?>
  19.  
  20. </center>
  21. </body>
  22. </html>
2. AdMeen - 15 Ноября, 2010 - 13:31:37 - перейти к сообщению
Ужас. Один файл, передаем в него Id юзера и по нему выводим, что надо. и всё. вы же какой-то огород нагородили.
3. Petro - 15 Ноября, 2010 - 14:24:33 - перейти к сообщению
А как передать это id (name_u)?
У меня выводит список юзеров:
all users
Petro M. P. (0)
Vasya Y. K. (1)
Kolya R. B. (2)

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

Не знаю поможет ли данная информация, но все же. Я не использую сдесь форму, у меня нет ($_POST и $_GET, тоесть данные не вводятся, они берутся из бд).
4. AdMeen - 15 Ноября, 2010 - 15:51:27 - перейти к сообщению
Petro пишет:

Не знаю поможет ли данная информация, но все же. Я не использую сдесь форму, у меня нет ($_POST и $_GET, тоесть данные не вводятся, они берутся из бд).


у вас есть и пост и гет. форма чтобы передавать данные нафиг не нужна. filenam.php?uid=<тут передаем айди вашего юзера> и получаем его из $_GET['uid']
5. Petro - 15 Ноября, 2010 - 16:52:01 - перейти к сообщению
Огромное спасибо тебе AdMeen, я то думал... , а оказалось как всегда Улыбка
Вот что получилось:
CODE (htmlphp):
скопировать код в буфер обмена
  1. <?php
  2. include '../dannue.php';
  3.  
  4. $row=mysql_query('select num_komp, name_u, name_i from users');
  5.  
  6. while($r=mysql_fetch_array($row))
  7.  {
  8.     echo '<a href=petro.php?uid='.$r[1].'>'.$r[1].' '.$r[2].' ('.$r[0].')</a><br>';
  9.  }
  10. mysql_close($mscon);
  11. ?>


CODE (htmlphp):
скопировать код в буфер обмена
  1. <?php
  2. include '../dannue.php';
  3. $name_u=$_GET['uid'];
  4. $r=mysql_query("select name_o, num_komp, ip from users where name_u='$name_u'");
  5. echo '<table border=1>';
  6. while($row=mysql_fetch_array($r))
  7. {
  8.         echo '<tr><td>Otdel:</td><td>', $row[0], '</td></tr>
  9.               <tr><td>№ Komp</td><td>', $row[1], '</td></tr>
  10.               <tr><td>ip adres</td><td>192.168.1.', $row[2], '</td></tr>';
  11. }
  12. mysql_close($mscon);
  13. ?>

 

Powered by ExBB FM 1.0 RC1