0

フローは、ログイン (login.php) -> パスワードの変更 (changepass.php) のようになります。ここで、すべてのユーザーはパスワードを変更する必要があります -> ユーザーが自分のアカウントの詳細を表示できるホームページ (homepage.php) にリダイレクトします。 ...私のホームページで欲しいのは、情報または完全な名前の学生IDに従ってユーザーに挨拶することですが、セッションをエコーするときに表示できるのはユーザーの学生IDだけです。私のhomepage.phpの私のコードはここにあります

       <?php session_start(); ?>
       <?php require('connect/connect.php'); ?>
       <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"                 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
       <html xmlns="http://www.w3.org/1999/xhtml">
      <head>
       <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
      <title>Home Page</title>


    <link href="mm_spa.css" rel="stylesheet" type="text/css" />
      </head>

         <body class="oneColElsCtrHdr">

      <td width="487" valign="top">

    <?php
    // this is the session id where i could only get from the user(student id)
echo $_SESSION['username'];
$voter = $_SESSION['username'];
function getuserinfo($info){

$info_select = mysql_query ("SELECT `$info` FROM new_reg_student WHERE studid='$voter'");

     //this is my line 116 which i got an error saying 
     //Warning: mysql_query() expects parameter 1 to be string, 
     //resource given in C:\xampp\htdocs\project\homepage.php on line 116
if ($query_get = mysql_query($info_select)) { 

if ($result = mysql_result($query_get, 0, $info)) {
return $result;
}
}

}
$fname = getuserinfo('fname');
$lname = getuserinfo('lname');
echo 'hello '. $fname .' '.$lname.'';

   ?>

  </td>
    <div id="footer">
   <p>Footer</p>
    <!-- end #footer --></div>
  <!-- end #container --></div>
   </body>
  </html>

こちらが私のhomepage.phpのプレビューです

ホームページのプレビュー

4

2 に答える 2

1

mysql_query()を 2 回使用しているため、次のように変更します。

$info_select = mysql_query ("SELECT ... ");

$info_select = "SELECT..."; //remove mysql_query from here
if ($query_get = mysql_query($info_select)) { //as you have it here
  ...

: mysql_* は非推奨です。代わりにMySQLiまたはPDO_MySQLを使用してください

于 2013-01-21T03:57:33.090 に答える
0

studidを関数に渡さず、関数の外部で定義されていることgetuserinfo($info)を使用したクエリで、関数の外部から変数にアクセスする場合に使用します。$voterglobal

$voter = $_SESSION['username'];

function getuserinfo($info){

// Call the Student ID
global $voter;

$info_select = "SELECT $info FROM new_reg_student 
                    WHERE studid='".mysql_real_escape_string($voter)."'";

if ($query_get = mysql_query($info_select)) { 
    ......
}
} // Function Close
于 2013-01-21T04:12:35.277 に答える