PHP MySqlのパッケージおよび使用

10403 ワード

1、クラスのパッケージ
class ZYMySqlManager{

public $db;


//  
static private $zymysqlmanger;
//         
private  function __construct()
{

}
//     

/**
 * @return
 */
static  public function  installmysql(){

    //         
    if (!isset(self::$zymysqlmanger)) {

        self::$zymysqlmanger = new self();

        $sqlManager = ZYMySqlManager::installmysql();
        $sqlManager ->openMySql();
    }
    return self::$zymysqlmanger;

}
//     
private  function  __clone()
{
    // TODO: Implement __clone() method.
}


public  function openMySql(){

    $this->db = mysqli_connect("localhost:3306","root","abc123654");

  //        mysqli_select_db("phpBRService",$this->db);
    if ($this->db){//           

    }else{

    }
    //  db  ,          
    if (mysqli_query($this->db,"CREATE DATABASE phpBRServiceDB")){

    }else{

    }
    //       db  
    mysqli_select_db($this->db,"phpBRServiceDB");
    //     
    mysqli_set_charset('utf8',$this->db);


}
public function creatTab($sqlStr){
//   
//        $sqlc = "CREATE TABLE IF NOT EXISTS Persons
//            (
//              FirstName varchar(15),
//              LastName varchar(15),
//              Age int
//            )";




    mysqli_query($this->db,$sqlStr);
}
//    
public function insterData($sqlStr){
    //    
//    $sqlinser = "INSERT INTO Persons (FirstName, LastName, Age)
//VALUES ('Peter', 'Griffin', '35')";

    mysqli_query($this->db,$sqlStr);
}
//    
public function queryData($sqlStr,$keysArr){
//        $result = mysqli_query($this->db,"SELECT * FROM     Persons");
//
//        while($row = mysqli_fetch_array($result))
//        {
//            echo $row['FirstName'] . " " . $row['LastName'];
//            echo "";
//        }
//
//        mysqli_close($this->db);


    $searchResult = $this->db->query($sqlStr);

    $arr = array();

//      
    while ($item = mysqli_fetch_array($searchResult)){

        $dataDic = array();
        for ($i = 0; $i < count($keysArr); $i ++){
            $key = $keysArr[$i];
            // null     
            if ($item[$key]){
                $dataDic[$key] = $item[$key];
            }

        }

        $arr[] = $dataDic;
    };

    return $arr;

}

//    
public function deleData($sqlStr){
    mysqli_query($this->db,$sqlStr);
}
//    
public function updateData($sqlStr){
    $this->db->query($sqlStr);
}

}

2,登録インスタンスインタフェースファイルとして新しいphp fileを作成する
  userRegister($phone,$password);


$result = json_encode($resultArr);
echo $result;

3、ログインインスタンス
userLogin($phone,$password);
$result = json_encode($resultArr);
echo $result;

4,ユーザ情報インスタンスの変更
changeUserInfo($user_id,$realname,$nickname,$sign,$imgurl,$addr,$sex,$age,$weichatid);
$result = json_encode($resultArr);
echo $result;

5、ユーザー情報インスタンスの照会
getUserInfo($user_id);
$result = json_encode($resultArr);
echo $result;

6,パッケージ化されたユーザ情報処理クラス
  creatTab($sqlStr);

//           
    $keysArr = ["id","phone","realname","nickname","sign","sex","age","addr","imgurl","creattime"];
    $querySql = "select * from $tabName where phone='$phone'";

    $dataArr = $mySql->queryData($querySql,$keysArr);
    if ($dataArr && count($dataArr) > 0){//          
        $resultArr["code"] = 202;
        $resultArr["message"] = "phone is used";
        return $resultArr;
    }

//            
    $insertSql = "insert into $tabName (phone,password) values ('$phone','$password')";
    $mySql->insterData($insertSql);

//        ,      
    $dataArr = $mySql->queryData($querySql,$keysArr);
    if ($dataArr && count($dataArr) > 0){//          
        $resultArr["code"] = 200;
        $resultArr["message"] = "success";
        $resultArr["data"] = $dataArr;
        return $resultArr;
    }


    $resultArr["code"] = 203;
    $resultArr["message"] = "register fail";
    return $resultArr;
}
/**
     
 */
public function userLogin($phone,$password){
    $mySql = ZYMySqlManager::installmysql();
    $tabName = "UserList";
    $resultArr = array();
    if (!$phone || !$password || strlen($phone) != 11){
        $resultArr["code"] = 201;
        $resultArr["message"] = "phone or password is wrong";
        return $resultArr;
    }

//           
    $keysArr = ["id","phone","realname","nickname","sign","sex","age","addr","imgurl","creattime"];
    $querySql = "select * from $tabName where phone='$phone' and password='$password'";

    $dataArr = $mySql->queryData($querySql,$keysArr);
    if ($dataArr && count($dataArr) > 0){//          
        $resultArr["code"] = 200;
        $resultArr["message"] = "success";
        $resultArr["data"] = $dataArr;
        return $resultArr;
    }

    $resultArr["code"] = 202;
    $resultArr["message"] = "log fail no user";
    return $resultArr;
}

/**
      
 */
public function getUserInfo($user_id){
    $mySql = ZYMySqlManager::installmysql();
    $tabName = "UserList";
    $resultArr = array();
    if (!$user_id){
        $resultArr["code"] = 201;
        $resultArr["message"] = "    ";
        return $resultArr;
    }
    //           
    $keysArr = ["id","phone","realname","nickname","sign","sex","age","addr","imgurl","creattime"];
    $querySql = "select * from $tabName where id='$user_id'";

    $dataArr = $mySql->queryData($querySql,$keysArr);
    if ($dataArr && count($dataArr) > 0){//          
        $resultArr["code"] = 200;
        $resultArr["message"] = "success";
        $resultArr["data"] = $dataArr;
        return $resultArr;
    }

    $resultArr["code"] = 202;
    $resultArr["message"] = "     ";
    return $resultArr;

}
/**
      
*/

public function changeUserInfo($user_id,$realname,$nickname,$sign,$imgurl,$addr,$sex,$age,$weichatid){
    $mySql = ZYMySqlManager::installmysql();
    $tabName = "UserList";
    $resultArr = array();
    if (!$user_id){
        $resultArr["code"] = 201;
        $resultArr["message"] = "    ";
        return $resultArr;
    }

    $updateStr = "update $tabName set  ";

    if ($realname){
        $updateStr = $updateStr."realname='$realname' ";
    }
    if ($nickname){
        $updateStr = $updateStr."nickname='$nickname' ";
    }
    if ($sign){
        $updateStr = $updateStr."sign='$sign' ";
    }
    if ($imgurl){
        $updateStr = $updateStr."imgurl='$imgurl' ";
    }
    if ($addr){
        $updateStr = $updateStr."addr='$addr' ";
    }
    if ($sex){
        $updateStr = $updateStr."sex=$sex ";
    }
    if ($age){
        $updateStr = $updateStr."age=$age ";
    }
    if ($weichatid){
        $updateStr = $updateStr."weichatid='$weichatid' ";
    }

    $updateStr = $updateStr."where id='$user_id'";
    $mySql->updateData($updateStr);
    echo $updateStr;

    //    
    $keysArr = ["id","phone","realname","nickname","sign","sex","age","addr","imgurl","creattime"];

    $querySql = "select * from $tabName where id='$user_id'";

    $dataArr = $mySql->queryData($querySql,$keysArr);
    if ($dataArr && count($dataArr) > 0){//          
        $resultArr["code"] = 200;
        $resultArr["message"] = "success";
        $resultArr["data"] = $dataArr;
        return $resultArr;
    }

    $resultArr["code"] = 202;
    $resultArr["message"] = "     ";
    return $resultArr;

}


}
?>