亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

PDO基本操作總結(jié)

Original 2018-12-10 14:49:38 243
abstract:本章主要學(xué)習(xí)了利用PDO進(jìn)行數(shù)據(jù)庫的增刪改查操作。通過學(xué)習(xí),對本章知識點(diǎn)進(jìn)行練習(xí),代碼如下:<?php require 'ComFun.php'; try {     //1.連接數(shù)據(jù)庫     $pdo=new PDO('mysql:host=127.0.0.1;

本章主要學(xué)習(xí)了利用PDO進(jìn)行數(shù)據(jù)庫的增刪改查操作。通過學(xué)習(xí),對本章知識點(diǎn)進(jìn)行練習(xí),代碼如下:

<?php

require 'ComFun.php';

try
{
    //1.連接數(shù)據(jù)庫
    $pdo=new PDO('mysql:host=127.0.0.1;dbname=MySql_Study;charset=utf8;','root','root');

    //region 執(zhí)行插入
    //2.執(zhí)行sql語句
    $sql='INSERT INTO `users`(`LoginID`,`UserName`,`Password`,`MobilePhone`,`Sex`,`CreateTime`) VALUES(:LoginID,:UserName,:Password,:MobilePhone,:Sex,:CreateTime)';

    //3.驗(yàn)證sql語句并生成預(yù)處理對象
    $stmt=$pdo->prepare($sql);

    //4.參數(shù)綁定
    $LoginID='xiaom';
    $UserName='小明';
    $Password=sha1('123456');
    $MobilePhone='15815265324';
    $Sex=0;
    $CreateTime=time();

    $stmt->bindParam(':LoginID',$LoginID,PDO::PARAM_STR,20);
    $stmt->bindParam(':UserName',$UserName,PDO::PARAM_STR,20);
    $stmt->bindParam(':Password',$Password,PDO::PARAM_STR,20);
    $stmt->bindParam(':MobilePhone',$MobilePhone,PDO::PARAM_STR,20);
    $stmt->bindParam(':Sex',$Sex,PDO::PARAM_INT,1);
    $stmt->bindParam(':CreateTime',$CreateTime,PDO::PARAM_STR,10);

    //5.執(zhí)行
    if($stmt->execute())
    {
        echo '執(zhí)行添加成功。新增用戶:' , $UserName;
    }
    else
    {
        exit(print_r('執(zhí)行添加用戶出錯,錯誤原因:' ,$stmt->errorInfo(),true));
    }
    //endregion

    echo '<br>';

    //region 執(zhí)行更新 對剛剛插入的小明這一行進(jìn)行更新
    //2.執(zhí)行sql語句
    $sql="UPDATE `users` SET `CreateTime`=:CreateTime where `UserName`=:UserName";

    //3.驗(yàn)證sql語句并生成預(yù)處理對象
    $stmt=$pdo->prepare($sql);
    //4.參數(shù)綁定
    $UserName='小明';
    $CreateTime=time();

    $stmt->bindParam(':UserName',$UserName,PDO::PARAM_STR,20);
    $stmt->bindParam(':CreateTime',$CreateTime,PDO::PARAM_STR,10);

    //5.執(zhí)行
    if($stmt->execute())
    {
        echo '執(zhí)行更新成功。更新用戶:' , $UserName , '的創(chuàng)建時間';
    }
    else
    {
        exit(print_r('執(zhí)行更新用戶出錯,錯誤原因:' ,$stmt->errorInfo(),true));
    }

    //endregion

    echo '<br>';

    //region 查詢數(shù)據(jù)
    //2.執(zhí)行sql語句
    $sql='SELECT `LoginID`,`UserName`,`MobilePhone`,`Sex`,`CreateTime` FROM users WHERE CreateTime<=:CreateTime LIMIT 20';
    //3.驗(yàn)證sql語句并生成預(yù)處理對象
    $stmt=$pdo->prepare($sql);
    //4.參數(shù)綁定
    $CreateTime=time();

    $stmt->bindParam(':CreateTime',$CreateTime,PDO::PARAM_STR,10);
    //5.執(zhí)行
    if($stmt->execute())
    {
        //將列的值保存到變量
        $stmt->bindColumn('LoginID',$LoginID,PDO::PARAM_STR,20);
        $stmt->bindColumn('UserName',$UserName,PDO::PARAM_STR,20);
        $stmt->bindColumn('MobilePhone',$MobilePhone,PDO::PARAM_STR,11);
        $stmt->bindColumn('Sex',$Sex,PDO::PARAM_INT,1);
        $stmt->bindColumn('CreateTime',$CreateTime,PDO::PARAM_STR,10);
        //定義空數(shù)組,用于存放最終的結(jié)果
        $arrs=[];
        //循環(huán)遍歷,把數(shù)據(jù)存到數(shù)組
        while($row=$stmt->fetch(PDO::FETCH_ASSOC))
        {
            //$arrs[]=['LoginID'=>$LoginID,'UserName'=>$UserName,'MobilePhone'=>$MobilePhone,'Sex'=>$Sex,'CreateTime'=>$CreateTime];
            $arrs[]=$row;
        }

        //echo '<pre>' , var_export($arrs,true) , '</pre>';

    }
    else
    {
        exit(print_r('執(zhí)行查詢出錯,錯誤原因:' , $stmt->errorInfo(),true));
    }

    //endregion
}
catch (PDOException $ex)
{
    exit($ex->getMessage());
}
finally
{
    $stmt=null;
    $pdo=null;
}

?>

<style>
    table,th,td {
        border: 1px solid black;
        padding: 10px;
    }
    table {
        text-align: center;
        border: 1px solid black;
        width: 60%;
        margin: 30px auto;
        border-collapse: collapse;
    }
    table caption {
        font-size: 1.5em;
        font-weight: bolder;
        margin-bottom: 20px;
    }
    th {
        background-color: lightblue;

    }
</style>


<table>
    <caption>用戶基本信息表</caption>
    <tr>
        <th>用戶ID</th>
        <th>用戶名</th>
        <th>手機(jī)號</th>
        <th>性別</th>
        <th>注冊時間</th>
    </tr>
    <?php foreach ($arrs as $arr) : ?>
    <tr>
        <td><?php echo $arr['LoginID'] ?></td>
        <td><?php echo $arr['UserName'] ?></td>
        <td><?php echo $arr['MobilePhone'] ?></td>
        <td><?php echo getSex($arr['Sex']) ?></td>
        <td><?php echo date('Y-m-d H:i:s',$arr['CreateTime']) ?></td>
    </tr>
    <?php  endforeach; ?>

</table>

ComFun.php

<?php

function  getSex($sex)
{
    switch ($sex)
    {
        case 0:
            return '男';
            break;
        case 1:
            return '女';
            break;
        default:
            return '保密';
            break;
    }
}

效果圖:

QQ截圖20181210144538.jpg

Correcting teacher:韋小寶Correction time:2018-12-10 15:01:40
Teacher's summary:嗯!寫的很不錯!PDO連接數(shù)據(jù)庫是很基礎(chǔ)的東西!越基礎(chǔ)的東西越要牢牢掌握!課后記得多練習(xí)哦!

Release Notes

Popular Entries