dongqiyou0303 2013-04-03 00:45
浏览 36

使用PHP从数据库打印数据[重复]

Everyone says printing data from a MySQL database is easy but so far I'm stumped. I am new to PHP, and am trying to print out an individuals data from a database. So for example Joe Bloggs has logged in, and then he can view what his hobbies are etc. So what I am trying to achieve is getting a user to log in and see THEIR info.

Basically, the user can log in, however I tried to set a up variable to store the SQL query and then print it out if the user logged in successfully, however I now get the following error message- that will no go away.

( ! ) SCREAM: Error suppression ignored for
( ! ) Warning: mysql_fetch_array() expects parameter 1 to be resource, string given in    C:\wamp\www\myfiles\login.inc.php on line 32
Call Stack
#   Time    Memory  Function    Location
1   0.0015  365584  {main}( )   ..\index.php:0
2   1.0144  387472  include( 'C:\wamp\www\myfiles\login.inc.php' )  ..\index.php:6
3   1.0427  390752  mysql_fetch_array ( )   ..\login.inc.php:32

Like virtually all beginners I have made the mistake of creating a massive file that overcomplicates what am trying to code,(it is also very late a night and I'm tired hence why I might not be able to see any errors). However it is well commented

I would appreciate any comments and suggestions!!

// create variables username and password,if a user doesn't enter a UN and PW send error message
if (isset($_POST['username'])&& isset ($_POST['password'])){
$username= $_POST['username'];
$password= $_POST['password'];
if (empty ($username)&&empty ($password)){
    echo 'supply username and password';
}

// save our MySQl queries as variables in order to reference them later on

// for login
$query = "SELECT * FROM `students` WHERE `username`='$username'AND `password`='$password'";
// user login result
$result= mysql_query($query);
// display the courses that user is taking
$user= "SELECT * FROM `students`";

// set conditions for login
if($result) {
// if the data matches by rows send a message saying the user has logged in
if(mysql_num_rows($result) > 0) {
session_regenerate_id();
$member = mysql_fetch_assoc($result);

        $_SESSION['SURNAME_NAME'] = $member['username'];
        $_SESSION['SESS_ID'] = $member['password'];
        session_write_close();
        //if logged on list course they are studying
        echo 'you are now logged in.<a href = "logout.inc.php">Log out</a>';
            while($row = mysql_fetch_array($user))
            {
                echo $row['GivenName'],$row['username'], $row['password'],$row['Course1'],$row['Course2'], $row['Course2'];
                echo "<br />";
            }
        exit();
    }else {
        // create boolean condition- if no match send error message
        $errflag = true;
        if($errflag) {
        session_write_close();
        echo 'invalid username/password combination';   
        exit();

        }
    }
}else {
// display errors
    echo mysql_errno() . ": " . mysql_error(); exit();

}

}

?>
<form method="POST">
Username: <input type = "text" name="username"> Password: <input type ="password" name="password">
<input type="submit" value="Log in">
</form


  • 写回答

3条回答 默认 最新

  • doushou5761 2013-04-03 00:49
    关注

    Heres are some of basics step that may help you if your a beginner in using php and mysql depends on what connection you are suitable to use..

    MYSQLI :

    FIRST : SET UP CONFIGURATION FOR DATABASE USER,PASS,HOST,DBNAME

    $conn = new mysqli('database_server','database_username','database_password','database_name');
    

    SECOND : Create a Query(you may insert your query here)..

    $result= $conn->query("SELECT SUM(Total_Steps) AS value_sum FROM users");
    

    FINAL : SHOWN RECORDS USING MYSQL FUNCTIONS LIKE..

    while($row = $result->fetch_assoc()){
        echo $row['dabatase_columnname'];
        echo $row['database_columnname'];
    }
    

    PDO :

    Connect to Database db = new PDO("...");

    Create a Query

    $statement = $db->prepare("select id from some_table where name = :name");
    

    Execute query with the bind paramater

    $statement->execute(array(':name' => "Jimbo"));

    Fetch all data return by query

    $row = $statement->fetch(); // Use fetchAll() if you want all results, or just iterate over the statement, since it implements Iterator
    

    MYSQL :

    FIRST : SET UP CONFIGURATION FOR DATABASE USER,PASS,HOST,DBNAME

    $conn = mysql_connect('database_server','database_username','database_password');
    mysql_select_db($conn,'databasename')
    

    SECOND : Create a Query(you may insert your query here)..

    $result= mysql_query("SELECT SUM(Total_Steps) AS value_sum FROM users");
    

    FINAL : SHOWN RECORDS USING MYSQL FUNCTIONS LIKE..

    while($row = $result->mysql_fetch_array($result)){
        echo $row['dabatase_columnname'];
        echo $row['database_columnname'];
    }
    
    评论

报告相同问题?

悬赏问题

  • ¥20 测距传感器数据手册i2c
  • ¥15 RPA正常跑,cmd输入cookies跑不出来
  • ¥15 求帮我调试一下freefem代码
  • ¥15 matlab代码解决,怎么运行
  • ¥15 R语言Rstudio突然无法启动
  • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
  • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法