2015-06-07 2 views
-1

У меня есть этот код:Display пользователь онлайн скрипт

$user_query = executeQuery("SELECT * 
           FROM student 
           WHERE stdid=".$_SESSION['stdid'].";") 
        or die(mysql_error()); 

    $row = mysql_fetch_array($user_query); 

    $user_query1 = executeQuery("SELECT * 
           FROM testconductor 
           WHERE tcid=".$_SESSION['tcid'].";") 
        or die(mysql_error()); 

    $row1 = mysql_fetch_array($user_query1); 

    $vst_id = '-Vizitator-';   

    $uvon = isset($_SESSION['stdname']) 
      ? ($row['nume_student']." ".$row['prenume_student']) 
      : $_SERVER['SERVER_ADDR']. $vst_id ; 

    $uvon = isset($_SESSION['tcname']) 
      ? $row1['nume_profesor']." ".$row1['prenume_profesor'] 
      : $_SERVER['SERVER_ADDR']. $vst_id; 

Как я могу присоединиться как $uvon в одном для отображения правильных пользователей из обеих таблиц базы данных, если они войти в систему?

Теперь с помощью этого кода он показывает только $uvon с tcname и первый $uvon дисплей stdname как Гость.

ответ

0

Прежде всего, плз рассмотрим 2 вещи:

  • Think о MySQLi или PDO - Так как функции MySQL амортизируются
  • Bad отступы не круто читать.

Давайте прохождение игры в $ uvon переменные (чтобы выделить перезаписать проблемы)

$uvon = isset($_SESSION['stdname']) 
     ? ($row['nume_student'] . " " . $row['prenume_student']) 
     : $_SERVER['SERVER_ADDR'] . $vst_id ; 

$uvon = isset($_SESSION['tcname']) 
     ? $row1['nume_profesor'] . " " . $row1['prenume_profesor'] 
     : $_SERVER['SERVER_ADDR'] . $vst_id; 

Корпус: Student дело

  • первая декларация $ uvon isset($_SESSION['stdname']) == TRUE

    $uvon = ($row['nume_student'] . " " . $row['prenume_student']) 
    
  • вторая декларация $ uvon: isset($_SESSION['tcname'] == FALSE

    $uvon = $_SERVER['SERVER_ADDR'] . $vst_id i.e. ('-Vizitator-') 
    

Чтобы это исправить:

Использование Если/другое заявление вместо Mark?Colon: (я предполагаю, что это возможно с Mark?Colon: но будет нечитаемым).

Код:

if(isset($_SESSION['stdname'])) 
    $uvon = ($row['nume_student'] . " " . $row['prenume_student']); 

elseif(isset($_SESSION['tcname'])) 
    $uvon = $row1['nume_profesor'] . " " . $row1['prenume_profesor']; 

else 
    $uvon = $_SERVER['SERVER_ADDR'] . $vst_id; 
+0

Спасибо, это работает. – Octavian

+0

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