成人精品一区二区三区中文字幕-成人精品一区二区三区-成人精品一级毛片-成人精品亚洲-日本在线视频一区二区-日本在线视频免费

導航首頁 ? 技術教程 ? php+Memcached實現簡單留言板功能示例
全站頭部文字 我要出現在這里
php+Memcached實現簡單留言板功能示例 705 2024-01-10   

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

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;
  }
  /**
  * 提示錯誤
  *
  * @param string $str 錯誤提示內容
  */
  public function showErrors($str)
  {
    echo "<h1>$str<h1/>";
    exit();
  }
}

ShowMessage.php

<?php
include("MyPdo.php");
//連接Memcached服務器
$m = new Memcached();
$m->addServer('127.0.0.1',11211);
//獲取Memcached中的list
$res = $m->get("list");
//如果沒有數據,則從數據庫中查出,并放入Memcached中,如果有數據則直接輸出
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  rel="external nofollow" >添加留言</a>

AddMessage.php

<form action="CheckAdd.php" method="post">
  標題:<input type="text" name="title"><br>
  內容:<input type="text" name="content"><br>
  <input type="submit" value="提交">
</form>

CheckAdd.php

<?php
include("MyPdo.php");
//連接Memcached服務器
$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語句執行成功則清除Memcache中的緩存
  $m->delete("list");
}
header("location:ShowMessage.php");

運行結果如下所示:

查看圖片

查看圖片

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

更多關于PHP相關內容感興趣的讀者可查看本站專題:《PHP+MySQL留言板開發專題》、《php緩存技術總結》、《PHP數組(Array)操作技巧大全》、《php字符串(string)用法總結》、《PHP錯誤與異常處理方法總結》、《php面向對象程序設計入門教程》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》

希望本文所述對大家PHP程序設計有所幫助。



主站蜘蛛池模板: 色戒 在线看| 爱你电视剧演员表| 宇宙护卫队电影| 女生被艹在线观看| 流萤美图| xiuren秀人网秀人集秀人美女免费| 孙婉| 风月电视剧免费观看剧情| 系统解剖学题库及答案| 男人吃女人逼视频| 宝宝满月酒微信邀请函| 邓紫飞| 日本电影致命诱惑| 热血高校 电影| 泷泽萝拉第二部| 罪孽天使| 火柴人游戏机怎么做| 电影喜宝| 五年级字谜| 叶子楣哪部三级露了| 初一英语完形填空20篇免费| 黄网站在线观看视频| 就爱小姐姐| 南来北往电视剧剧情介绍| 韩国青草视频| 乱世三人行| interracial| 木乃伊5| 啊啊视频| 性行| 吻激情| 改朝换代| high heels| 菊次郎的夏天钢琴谱简谱| 爱的替身| 色戒未| 妹妹扮演的角色| 送元二使安西课堂笔记| 电影同船爱歌| 龙凤店| 女孩们在线观看|

?。。≌鹃L長期在線接?。?!

網站、小程序:定制開發/二次開發/仿制開發等

各種疑難雜癥解決/定制接口/定制采集等

站長微信:lxwl520520

站長QQ:1737366103