如何在一个php文件中定义mysqli连接,然后在另一个文件中使用它?

时间:2016-02-27 09:05:52

标签: php mysql sql database

我是PHP新手,我使用eclipse SDE构建一个简单的Web应用程序。

我的情景是:

  1. 我有 index.php 页面,其中包含登录表单( 2文本框和登录按钮
  2. 我有MySQL数据库,其中包含两个表:system_users& USER_ERRORS
  3. 每当用户在index.php页面中成功登录时,都应将其重定向到 page1.php ,然后从user_errors表中检索错误并列出它们。
  4. 我想在php中实现这一点。

    以下是我的代码:

    的index.php

        <html>
    
    <link rel="stylesheet" type="text/css" href="cssDesign.css">
    
    <head>
    <title>A BASIC HTML FORM</title>
    <?PHP
    
    //MySQL Database Connect 
    include 'mysql_connect.php';
    
    $conn = MySQLConnection::getConnection();
    
    
    // Create connection
    //global $con;
    //$con = new mysqli("192.168.0.2", "Invest", "NeeD$123","investmentprojects","3306");
    
    if (isset($_POST['Submit1'])) {
        $username = $_POST['username'];
        $password = $_POST['password'];
    
    $result = mysqli_query($conn,"SELECT id,username,password,type FROM system_users WHERE username = '".$username."' AND password='".$password."' ");
    $rows = mysqli_num_rows($result); 
    
    if ($rows == 1) {
      header('Location: page1.php');
    }       
    else {
        print ("You're not a member of this site");
        }
    }
    
    //mysqli_close($conn);
    
    ?>
    
    </head>
    <body>
    
    <FORM NAME ="form1" METHOD ="POST" ACTION = "index.php">
    
    <table border="0" style="width:370px;border:0px;">
        <tr> 
            <td style ="width:30%;border:0px;">User</td>
            <td style ="width:70%;;border:0px;"><INPUT style ="width:100%;" TYPE = "TEXT" VALUE ="" NAME = "username"> </td>
        </tr>
        <tr> 
            <td style ="width:30%;border:0px;">Password</td>
            <td style ="width:70%;border:0px;"><INPUT style ="width:100%;" TYPE = "TEXT" VALUE ="" NAME = "password"> </td>
        </tr>
        <tr> 
        <td style ="width:30%;border:0px;"></td>
            <td align='right' style ="width:70%;border:0px;"><INPUT style ="width:30%;" TYPE = "Submit" Name = "Submit1" VALUE = "Login"> </td>
        </tr>
    
    </table>
    
    
    </FORM>
    
    </body>
    </html>
    

    page1.php中

        <html>
    
    <link rel="stylesheet" type="text/css" href="cssDesign.css">
    
    <head>
    <title>A BASIC HTML FORM</title>
    </head>
    <body>
    
    <Form name ="form1" Method ="POST" Action ="page1.php">
    
    </FORM>
    
    </body>
    </html>
    
    <?php
    
    include 'mysql_connect.php';
    
    $conn = MySQLConnection::getConnection();
    
    $username = $_POST['username'];
    
    $sql = "SELECT user_name,error_form,error_date,error_description " . 
            "FROM error_log WHERE username ='".$username."'";
    
    $result = mysqli_query($conn,$sql);
    
    if ($result->num_rows > 0) {
        echo "<table>";
            echo "<tr>";
            echo "<th>User</th><th>Error Form</th><th>Error Date</th><th>Error Description</th>";
            echo "</tr>";
        // output data of each row
    
        while($row = $result->fetch_assoc()) {
            echo "<tr>";
            echo "<td>".$row["user_name"]."</td>";
            echo "<td>".$row["error_form"]."</td>";
            echo "<td>".$row["error_date"]."</td>";
            echo "<td>".$row["error_description"]."</td>";
            echo "</tr>";
        }
        echo "</table>";
    
    } else {
        echo "0 results";
    }
    
    //mysqli_close($conn);
    ?>
    

1 个答案:

答案 0 :(得分:0)

将文件connection.php与所有与mysql连接相关的文件连接起来,并在广告后使用mysql查询行include_once('connection.php');,或者你可以include_once('some_folder\connection.php');

如果您是初学者,可以使用此模式连接到数据库

 $link = mysqli_connect('localhost', 'mysql_user', 'mysql_password');
 if (!$link) {
   die('Could not connect: ' . mysqli_error());
 }
 echo 'Connected successfully';


$res=mysqli_query($link, "CREATE TEMPORARY TABLE myCity LIKE City");
  

http://php.net/manual/en/mysqli.query.php