2016-01-29 38 views
0

我想获得echo $ userRow ['student_firstname'];传入html,以便我可以使用它作为自动方式更改显示用户的名字&注销登录&登录。第一个echo $ userRow ['student_firstname'];确实有效,但是第二个没有。这个想法能够让第二个工作,所以我可以删除第一个。如果没有会话,则显示登录名&寄存器。回声不传递var通过,而

<?php 
session_start(); 
include_once 'dbconnect_new.php'; 
?> 

    <!DOCTYPE html> 
    <html lang="en"> 

    <head> 
     <meta charset="utf-8"> 
     <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimal-ui"> 
     <link href="favicon.png" type="image/x-icon" rel="shortcut icon"> 
     <link href="assets/css/master.css" rel="stylesheet"> 
     <script src="assets/plugins/jquery/jquery-1.11.3.min.js"></script> 
    </head> 

    <?php if(isset($_SESSION['user'])) { 
    // error_reporting(E_ALL^E_DEPRECATED); 
    $res=mysql_query("SELECT * FROM studentdata WHERE student_id=".$_SESSION['user']); 
    if ($res === FALSE){ 
     die(mysql_error()); 
    } 
    while($userRow=mysql_fetch_array($res)) 
    { 
     echo $userRow['student_firstname']; 
    } 
    ?> 
     <li class="dropdown"> 
      <a href=""> 
       <?php echo $userRow['student_firstname'];?><span class="nav-subtitle">Account</span></a</li> 
        <li><a href="includes/logout.php" title="">Logout<span class="nav-subtitle">Goodbye</span></a></li> 
        <?php } else { ?> 
         <li><a href="includes/register_new.php" title="">Register<span class="nav-subtitle">for Students</span></a></li> 
         <li><a href="includes/login_new.php" title="">Login<span class="nav-subtitle">for Students</span></a></li> 
         <?php } ?> 

    </html> 
+0

如果你完全删除while块,只留下'$ userRow = mysql_fetch_array($ res);'就行了?另外,不推荐使用mysql_query。 –

+0

哪个'echo'失败了,'while'还是外面的? 'while'外面的那个只会有最后一行。你也应该使用预先准备的语句。 – chris85

+0

外面的一个失败 – Lost

回答

0

检查这个环节出http://php.net/manual/en/function.mysql-fetch-array.php, 提示:使用库MySQLi/MySQL的为不推荐使用PDO。

<?php 
session_start(); 
include_once 'dbconnect_new.php'; 
?> 

<!DOCTYPE html> 
<html lang="en"> 

    <head> 
     <meta charset="utf-8"> 
     <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimal-ui"> 
     <link href="favicon.png" type="image/x-icon" rel="shortcut icon"> 
     <link href="assets/css/master.css" rel="stylesheet"> 
     <script src="assets/plugins/jquery/jquery-1.11.3.min.js"></script> 
    </head> 

    <?php 
    if (isset($_SESSION['user'])) { 
     // error_reporting(E_ALL^E_DEPRECATED); 
     $res = mysql_query("SELECT * FROM studentdata WHERE student_id=" . $_SESSION['user']); 
     if ($res === FALSE) {//IF QUERY RETURNS NULL 
      die(mysql_error()); 
     } else { 
      $userRow = mysql_fetch_array($res, MYSQL_ASSOC); //DATA IN ARRAY TYPE 
      //IF BELOW DOES NOT WORK USE print_r(); to check the structure of array ! 
      ?> 
      <li class="dropdown"> 
       <a href=""><?php echo $userRow['student_firstname']; //ACCESS DATA THROUGH ITS INDEX ?><span class="nav-subtitle">Account</span></a> 
      </li> 
      <li> 
       <a href="includes/logout.php" title="">Logout<span class="nav-subtitle">Goodbye</span></a> 
      </li> 
      <?php 
     } 
    } else { 
     ?> 
     <li><a href = "includes/register_new.php" title = "">Register<span class = "nav-subtitle">for Students</span></a></li> 
     <li><a href = "includes/login_new.php" title = "">Login<span class = "nav-subtitle">for Students</span></a></li> 
     <?php } ?> 
</html> 

我希望这个作品!

+0

同样的问题在哪里<?php echo $ userRow ['student_firstname'];不会显示student_firstname一页。然而所有其他部分的工作。 – Lost

相关问题