php與mysql實現用戶數據的增刪改查


首先可創建一個保存常量的config.PHP

<?php  
define('MYSQL_HOST','localhost');  
define('MYSQL_USER','root');  
define('MYSQL_PW',''); 

然后再創建一個保存函數的文件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("myapp");  
    return $conn;  

一.查詢數據庫
創建主文件allusers.php,將數據庫myapp的數據表user的所有輸出在html頁面上,並添加“添加用戶、修改、刪除”的鏈接;

<?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> 

可獲得連接數據庫后查詢數據得到的頁面

二.添加數據
新建adduser.html頁面,提供用戶輸入表單:

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

創建處理用戶表單數據的服務端文件adduser.php,並將添加的數據返回到列表頁面

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

點擊主頁面的“添加用戶”,跳轉到adduser.html頁面,輸入數據:


呈現的結果為:


特別提醒的是:字符串數據一定要加引號,非字符串一定要進行類型轉換,防止SQL注入,以保證數據庫安全。
三.修改數據
創建edituser.php,獲取需要修改的數據並呈現成表單,供用戶修改數據,然后提交給服務端edituser_server.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>

創建服務端edituser_server.php處理修改的數據,並返回到主頁面allusers.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");  
}  
<?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");  
}  

點擊主頁面其中一個修改按鈕,跳轉到修改數據的表單,並將該用戶的年齡修改為26:


點擊提交修改,回到主頁面,可看到數據已修改:

 


四.刪除數據

創建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");  
} 

點擊主頁面一個刪除按鈕,可直接刪除相應數據:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM