欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

php+Memcached實(shí)現(xiàn)簡單留言板功能示例

 更新時(shí)間:2017年02月15日 08:54:45   作者:水晶依戀  
這篇文章主要介紹了php+Memcached實(shí)現(xiàn)簡單留言板功能,結(jié)合實(shí)例形式較為詳細(xì)的分析了php結(jié)合memcached實(shí)現(xiàn)留言板的具體步驟與相關(guān)操作技巧,需要的朋友可以參考下

本文實(shí)例講述了php+Memcached實(shí)現(xiàn)簡單留言板功能。分享給大家供大家參考,具體如下:

MyPdo.php

<?php
class MyPdo{
  private $pdo;
  function __construct()
  {
    $this->pdo = $this->getPdo();
  }
   /**
   * CreatePDO
   *
   * @return PDO
   */
  public function getPdo()
  {
    $dbms='mysql';
    $dbName='testdb';
    $user='root';
    $pwd='diligentyang';
    $host='localhost';
    $dsn="$dbms:host=$host;dbname=$dbName";
    try{
      $pdo=new PDO($dsn,$user,$pwd);
    }catch(Exception $e){
      echo $e->getMessage().'<br>';
      exit();
    }
    $pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
    $pdo->exec("set names utf8");
    return $pdo;
  }
   /**
   * Execute SQL
   *
   * @param string $sql Sql
   * @param string $mode Mode
   *
   * @return mixed
   */
  function query($sql = "", $mode = "array")
  {
    $sql = trim($sql);
    if ($sql == "") {
      $this->showErrors("the mothe query neet at least one param!");
    }
    $query = $this->pdo->query($sql);
    if (!$query) {
      $this->showErrors("the sql string is false");
    }
    if (strpos(strtolower($sql), "select") ===false) {
      return $query;
    }
    switch ($mode) {
    case 'array' :
      $res = $query->fetchAll(PDO::FETCH_ASSOC);
      break;
    case 'object' :
      $res = $query->fetchObject();
      break;
    case 'count':
      $res = $query->rowCount();
      break;
    default:
      $this->showErrors("SQLERROR: please check your second param!");
    }
    return $res;
  }
  /**
  * 提示錯(cuò)誤
  *
  * @param string $str 錯(cuò)誤提示內(nèi)容
  */
  public function showErrors($str)
  {
    echo "<h1>$str<h1/>";
    exit();
  }
}

ShowMessage.php

<?php
include("MyPdo.php");
//連接Memcached服務(wù)器
$m = new Memcached();
$m->addServer('127.0.0.1',11211);
//獲取Memcached中的list
$res = $m->get("list");
//如果沒有數(shù)據(jù),則從數(shù)據(jù)庫中查出,并放入Memcached中,如果有數(shù)據(jù)則直接輸出
if(!$res){
  $MyPdo = new MyPdo();
  $res = $MyPdo->query("select * from message","array");
  $m->set('list',$res,3600);
}
foreach($res as $val){
  echo $val['title']."-------".$val['content']."<br>";
}
?>
<a href="AddMessage.php" rel="external nofollow" >添加留言</a>

AddMessage.php

<form action="CheckAdd.php" method="post">
  標(biāo)題:<input type="text" name="title"><br>
  內(nèi)容:<input type="text" name="content"><br>
  <input type="submit" value="提交">
</form>

CheckAdd.php

<?php
include("MyPdo.php");
//連接Memcached服務(wù)器
$m = new Memcached();
$m->addServer('127.0.0.1',11211);
$title = $_POST['title'];
$content = $_POST['content'];
$MyPdo = new MyPdo();
$res = $MyPdo->query("insert into message(title,content) values('$title','$content')");
if($res){//如果insert語句執(zhí)行成功則清除Memcache中的緩存
  $m->delete("list");
}
header("location:ShowMessage.php");

運(yùn)行結(jié)果如下所示:

注:此例子只是簡單實(shí)現(xiàn)了,留言列表和添加留言功能,需要注意的是,如果對數(shù)據(jù)庫的數(shù)據(jù)有了添加或修改,需要清除緩存,然后重新緩存一下,已保證數(shù)據(jù)顯示同步。

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP+MySQL留言板開發(fā)專題》、《php緩存技術(shù)總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結(jié)》、《PHP錯(cuò)誤與異常處理方法總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總

希望本文所述對大家PHP程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • PHP實(shí)現(xiàn)的進(jìn)度條效果詳解

    PHP實(shí)現(xiàn)的進(jìn)度條效果詳解

    這篇文章主要介紹了PHP實(shí)現(xiàn)的進(jìn)度條效果,結(jié)合實(shí)例形式分析了PHP結(jié)合JavaScript動(dòng)態(tài)顯示百分比進(jìn)度條功能,涉及PHP緩存、數(shù)學(xué)運(yùn)算及JavaScript頁面元素動(dòng)態(tài)操作相關(guān)技巧,需要的朋友可以參考下
    2016-05-05
  • php判斷兩個(gè)浮點(diǎn)數(shù)是否相等的方法

    php判斷兩個(gè)浮點(diǎn)數(shù)是否相等的方法

    這篇文章主要介紹了php判斷兩個(gè)浮點(diǎn)數(shù)是否相等的方法,涉及php操作浮點(diǎn)數(shù)的技巧,比較實(shí)用,需要的朋友可以參考下
    2015-03-03
  • php中ftp_chdir與ftp_cdup函數(shù)用法

    php中ftp_chdir與ftp_cdup函數(shù)用法

    這篇文章主要介紹了php中ftp_chdir與ftp_cdup函數(shù)用法,以實(shí)例形式講述了PHP中的FTP目錄操作技巧,具有一定的借鑒價(jià)值,需要的朋友可以參考下
    2014-11-11
  • php 獲取SWF動(dòng)畫截圖示例代碼

    php 獲取SWF動(dòng)畫截圖示例代碼

    這篇文章主要介紹了php獲取SWF動(dòng)畫截圖的方法,需要的朋友可以參考下
    2014-02-02
  • PHP中JSON的應(yīng)用技巧

    PHP中JSON的應(yīng)用技巧

    這篇文章主要介紹了關(guān)于JSON以及JSON在PHP中的應(yīng)用技巧,需要的朋友可以過來參考下,希望對大家有所幫助。
    2015-10-10
  • PHP中構(gòu)造函數(shù)和析構(gòu)函數(shù)解析

    PHP中構(gòu)造函數(shù)和析構(gòu)函數(shù)解析

    這篇文章主要介紹了PHP中構(gòu)造函數(shù)和析構(gòu)函數(shù)解析,本文用代碼實(shí)例講解了PHP中構(gòu)造函數(shù)和析構(gòu)函數(shù),需要的朋友可以參考下
    2014-10-10
  • Discuz 6.0+ 批量注冊用戶名

    Discuz 6.0+ 批量注冊用戶名

    Discuz 6.0+ 批量注冊用戶名 此方法適合于手動(dòng)采集用戶名,自動(dòng)注冊用戶名,這樣做的好處是比較逼真!
    2009-09-09
  • php動(dòng)態(tài)生成縮略圖并輸出顯示的方法

    php動(dòng)態(tài)生成縮略圖并輸出顯示的方法

    這篇文章主要介紹了php動(dòng)態(tài)生成縮略圖并輸出顯示的方法,涉及php操作圖片的相關(guān)技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-04-04
  • php比較兩個(gè)字符串長度的方法

    php比較兩個(gè)字符串長度的方法

    這篇文章主要介紹了php比較兩個(gè)字符串長度的方法,涉及php中strlen與abs函數(shù)計(jì)算字符串與數(shù)學(xué)運(yùn)算的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-07-07
  • 腳本安全的本質(zhì)_PHP+MYSQL

    腳本安全的本質(zhì)_PHP+MYSQL

    從代碼級(jí)別上,也就是應(yīng)用層次上考慮代碼安全的話(也就是不考慮底層的語言本身等問題的漏洞),腳本安全問題就是函數(shù)和變量的問題。
    2008-10-10

最新評(píng)論