1. 程式人生 > >測試php連線mysql的例項實現

測試php連線mysql的例項實現

1.在linux上搭建好lnmp架構後,先測試一下php是否可以連線上mysql.

測試程式碼:test.php

<?php 
$link=mysql_connect("172.25.90.14","root","redhat"); 
if(!$link) echo "FAILD!連線錯誤,使用者名稱密碼不對"; 
else echo "OK!可以連線"; 

?>

2.接下來利用php就可以對mysql進行增刪改查了

a.  config.php 首先可建立一個儲存常量的config.php

<?php  
define('MYSQL_HOST','172.25.90.14');  

define('MYSQL_USER','root'); 

define('MYSQL_PW','redhat');

b.  functions.php 再建立一個儲存函式的檔案functions.php:

<?php  
require_once 'config.php';  
function connnetDb(){  
    //連線mysql資料庫  
    $conn=mysql_connect(MYSQL_HOST,MYSQL_USER,MYSQL_PW);  
    //排除連線資料庫異常錯誤  
    if(!$conn){  
        die('can not connect db');  
    }  
    //在mysql中選中myapp資料庫  
    mysql_select_db("wzw");  
    return $conn;  

}

c.  allusers.php  查詢資料庫

<?php  
    require_once 'functions.php';  
?>  
<!DOCTYPE html>  
<html>  
<head>  
    <meta charset="UTF-8">  
    <title>所有使用者</title>  
    <style>  
        table{  
            border-collapse: collapse;  
        }  
        th,td{  
            border:1px solid #ccccff;  
            padding: 5px;  
        }  
        td{  
            text-align: center;  
        }  
    </style>  
</head>  
<body>  
<a href="adduser.html">新增使用者</a>  
<table>  
    <tr><th>id</th><th>名字</th><th>年齡</th><th>修改/刪除</th></tr>  
<?php  
//連線資料庫  
connnetDb();  
//查詢資料表中的所有資料,並按照id降序排列  
$result=mysql_query("SELECT * FROM users ORDER BY id DESC");  
//獲取資料表的資料條數  
$dataCount=mysql_num_rows($result);  
//echo $dataCount;  
//列印輸出所有資料  
 
 
for($i=0;$i<$dataCount;$i++){  
    $result_arr=mysql_fetch_assoc($result);  
    $id=$result_arr['id'];  
    $name=$result_arr['name'];  
    $age=$result_arr['age'];  
    //print_r($result_arr);  
    echo "<tr><td>$id</td><td>$name</td><td>$age</td><td><a href='edituser.php?id=$id'>修改</a> <a href='deleteuser.php?id=$id'>刪除</a></td></tr>";  
}  
?>  
</table>  
</body>  

</html>

d.  adduser.html  新建adduser.html頁面,提供使用者輸入表單

<!DOCTYPE html>  
<html>  
<head lang="en">  
    <meta charset="UTF-8">  
    <title>新增使用者</title>  
</head>  
<body>  
<form action="adduser.php" method="post">  
    <label>使用者ID:</label><input type="text" name="id">
    <label>使用者名稱:</label><input type="text" name="name">  
    <label>年齡:</label><input type="text" name="age">  
    <input type="submit" value="提交">  
</form>  
</body>  

</html>

e.  adduser.php  建立處理使用者表單資料的服務端檔案adduser.php,並將新增的資料返回到列表頁面

<?php  
require_once 'functions.php';  
//首先進行非空排錯
if(!isset($_POST['id'])){
    die('id is not define');
}  
if(!isset($_POST['name'])){  
    die('name is not define');  
}  
if(!isset($_POST['age'])){  
    die('age is not define');  
}  
$id=$_POST['id'];
$name=$_POST['name'];  
$age=$_POST['age'];  
if(empty($id)){
    die('id is empty');
}
if(empty($name)){  
    die('name is empty');  
}  
if(empty($age)){  
    die('age is empty');  
}  
//連線資料庫  
connnetDb();  
 
 
//執行型別轉換,防止SQL注入  
$age=intval($age);  
//插入資料  
mysql_query("INSERT INTO users(id,name,age) VALUES ('$id','$name','$age')");  
//返回列表頁面  
if(mysql_error()){  
    echo mysql_error();  
}else{  
    header("Location:allusers.php");  

}

f.  edituser.php  建立edituser.php,獲取需要修改的資料並呈現成表單,供使用者修改資料

<?php  
require_once 'functions.php';?>  
<!DOCTYPE html>  
<html>  
<head>  
    <meta charset="UTF-8">  
    <title>修改使用者資料</title>  
</head>  
<body>  
<?php  
    if(!empty($_GET['id'])){  
        //連線mysql資料庫  
        connnetDb();  
 
 
        //查詢id  
        $id=intval($_GET['id']);  
        $result=mysql_query("SELECT * FROM users WHERE id=$id");  
        if(mysql_error()){  
            die('can not connect db');  
        }  
        //獲取結果陣列  
        $result_arr=mysql_fetch_assoc($result);  
    }else{  
        die('id not define');  
    }  
?>  
<form action="edituser_server.php" method="post">  
    <label>使用者ID:</label><input type="text" name="id" value="<?php echo $result_arr['id']?>">  
    <label>使用者名稱:</label><input type="text" name="name" value="<?php echo $result_arr['name']?>">  
    <label>使用者年齡:</label><input type="text" name="age" value="<?php echo $result_arr['age']?>">  
    <input type="submit" value="提交修改">  
</form>  
</body>  

</html>

g.  edituser_server.php  提交給服務端edituser_server.php處理:

<?php  
    require_once 'functions.php';  
    if(empty($_POST['id'])){  
        die('id is empty');  
    }  
    if(empty($_POST['name'])){  
        die('name is empty');  
    }  
    if(empty($_POST['age'])){  
        die('age is empty');  
    }  
      
      
    $id=intval($_POST['id']);  
    $name=$_POST['name'];  
    $age=intval($_POST['age']);  
      
      
    //連線資料庫  
    connnetDb();  
      
      
    //修改指定資料  
    mysql_query("UPDATE users SET name='$name',age=$age WHERE id=$id");  
      
      
    //排錯並返回  
    if(mysql_error()){  
        echo mysql_error();  
    }else{  
        header("Location:allusers.php");  

    }

h.  deleteuser.php  執行刪除操作後返回主頁面

<?php  
    require_once 'functions.php';  
      
    //排空錯誤  
    if(empty($_GET['id'])){  
        die('id is empty');  
    }  
    //連線資料庫  
    connnetDb();  
      
    $id=intval($_GET['id']);  
      
    //刪除指定資料  
    mysql_query("DELETE FROM users WHERE id=$id");  
    //排錯並返回頁面  
    if(mysql_error()){  
        echo mysql_error();  
    }else{  
        header("Location:allusers.php");  

    }