企業官方網站Pro版php
//數據操做 <?php //header('content-type:text/html;charset=utf-8'); class PdoMySQL{ public static $config=array();//設置鏈接參數,配置信息 public static $link=null;//保存鏈接標識符 public static $pconnect=false;//是否開啓長鏈接 public static $dbVersion=null;//保存數據庫版本 public static $connected=false;//是否鏈接成功 public static $PDOStatement=null;//保存PDOStatement對象 public static $queryStr=null;//保存最後執行的操做 public static $error=null;//報錯錯誤信息 public static $lastInsertId=null;//保存上一步插入操做產生AUTO_INCREMENT public static $numRows=0;//上一步操做產生受影響的記錄的條數 /** * 鏈接PDO * @param string $dbConfig * @return boolean */ public function __construct($dbConfig=''){ if(!class_exists("PDO")){ self::throw_exception('不支持PDO,請先開啓'); } if(!is_array($dbConfig)){ $dbConfig=array( 'hostname'=>DB_HOST, 'username'=>DB_USER, 'password'=>DB_PWD, 'database'=>DB_NAME, 'hostport'=>DB_PORT, 'dbms'=>DB_TYPE, 'dsn'=>DB_TYPE.":host=".DB_HOST.";dbname=".DB_NAME ); } if(empty($dbConfig['hostname']))self::throw_exception('沒有定義數據庫配置,請先定義'); self::$config=$dbConfig; if(empty(self::$config['params']))self::$config['params']=array(); if(!isset(self::$link)){ $configs=self::$config; if(self::$pconnect){ //開啓長鏈接,添加到配置數組中 $configs['params'][constant("PDO::ATTR_PERSISTENT")]=true; } try{ self::$link=new PDO($configs['dsn'],$configs['username'],$configs['password'],$configs['params']); }catch(PDOException $e){ self::throw_exception($e->getMessage()); } if(!self::$link){ self::throw_exception('PDO鏈接錯誤'); return false; } self::$link->exec('SET NAMES '.DB_CHARSET); self::$dbVersion=self::$link->getAttribute(constant("PDO::ATTR_SERVER_VERSION")); self::$connected=true; unset($configs); } } /** * 獲得全部記錄 * @param string $sql * @return unknown */ public static function getAll($sql=null){ if($sql!=null){ self::query($sql); } $result=self::$PDOStatement->fetchAll(constant("PDO::FETCH_ASSOC")); return $result; } /** * 獲得結果集中的一條記錄 * @param string $sql * @return mixed */ public static function getRow($sql=null){ if($sql!=null){ self::query($sql); } $result=self::$PDOStatement->fetch(constant("PDO::FETCH_ASSOC")); return $result; } /** * 根據主鍵查找記錄 * @param string $tabName * @param int $priId * @param string $fields * @return mixed */ public static function findById($tabName,$priId,$fields='*'){ $sql='SELECT %s FROM %s WHERE id=%d'; return self::getRow(sprintf($sql,self::parseFields($fields),$tabName,$priId)); } ... //接口製做 <?php class Response { const JSON = "json"; /** * 按綜合方式輸出通訊數據 * @param integer $code 狀態碼 * @param string $message 提示信息 * @param array $data 數據 * @param string $type 數據類型 * return string */ public static function show($code, $message = '', $data = array(), $type = self::JSON) { if(!is_numeric($code)) { return ''; } //$type = isset($_GET['format']) ? $_GET['format'] : self::JSON; $result = array( 'code' => $code, 'message' => $message, 'data' => $data, ); if($type == 'json') { self::json($code, $message, $data); exit; } elseif($type == 'array') { var_dump($result); } elseif($type == 'xml') { self::xmlEncode($code, $message, $data); exit; } else { // TODO } } /** * 按json方式輸出通訊數據 * @param integer $code 狀態碼 * @param string $message 提示信息 * @param array $data 數據 * return string */ public static function json($code, $message = '', $data = array()) { if(!is_numeric($code)) { return ''; } $result = array( 'code' => $code, 'message' => $message, 'data' => $data ); echo json_encode($result); exit; } /** * 按xml方式輸出通訊數據 * @param integer $code 狀態碼 * @param string $message 提示信息 * @param array $data 數據 * return string */ public static function xmlEncode($code, $message, $data = array()) { if(!is_numeric($code)) { return ''; } $result = array( 'code' => $code, 'message' => $message, 'data' => $data, ); header("Content-Type:text/xml"); $xml = "<?xml version='1.0' encoding='UTF-8'?>\n"; $xml .= "<root>\n"; $xml .= self::xmlToEncode($result); $xml .= "</root>"; echo $xml; } public static function xmlToEncode($data) { $xml = $attr = ""; foreach($data as $key => $value) { if(is_numeric($key)) { $attr = " id='{$key}'"; $key = "item"; } $xml .= "<{$key}{$attr}>"; $xml .= is_array($value) ? self::xmlToEncode($value) : $value; $xml .= "</{$key}>\n"; } return $xml; } } ?>
一、下載或者clone工程到本地 二、修改數據庫配置文件 config.php 三、新建數據庫 **db_cro** 四、將數據表導入並執行 五、預覽查看效果並修改爲本身須要的版本
一、用戶註冊,填寫郵箱 -> 登陸郵箱點擊連接激活帳號 -> 登陸 二、查看官網信息。具有多設備適配、圖片預覽 三、查看產品,根據不一樣檢索條件查找,下單 四、完善收貨地址 五、查看訂單 六、公司招聘信息、FQA、位置、公司新聞、行業新聞、聯繫咱們等諸多功能
演示視頻html
<h1>若是以爲項目對你有幫助,請給個star。雖然開源,可是用於商業用途請聯繫本人,不然承擔相應的責任</h1>前端