婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Go語言實現(xiàn)簡單留言板的方法

Go語言實現(xiàn)簡單留言板的方法

熱門標(biāo)簽:滁州自建外呼系統(tǒng) 智能營銷軟件 工商信用卡外呼系統(tǒng)教程 經(jīng)常接到推銷電話機器人的電話 客服級電銷機器人 海外照相館地圖標(biāo)注入駐 外呼系統(tǒng)如何接收服務(wù)密碼 旅游廁所如何電子地圖標(biāo)注 外呼系統(tǒng)多少錢一年

本文實例講述了Go語言實現(xiàn)簡單留言板的方法。分享給大家供大家參考。具體實現(xiàn)方法如下:

復(fù)制代碼 代碼如下:
package main
import (
    // "fmt"
    "io"
    "log"
    "net/http"
    "text/template"
    "time"
    "database/sql"
    "github.com/ziutek/mymysql/godrv"
)
   
// 留言結(jié)構(gòu)
type Liuyan struct {
    Id int
    Name string
    Content string
    Time int
}
   
// 顯示留言時間
func (l Liuyan) ShowTime() string {
    t := time.Unix(int64(l.Time), 0)
    return t.Format("2006-01-02 15:04:05")
}
   
func main() {
    godrv.Register("SET NAMES utf8")
   
    // 連接數(shù)據(jù)庫
    db, err := sql.Open("mymysql", "tcp:127.0.0.1:3306*go/root/123456")
    if err != nil {
        panic(err)
    }
    defer db.Close()
   
    // 準(zhǔn)備模板
    tpl, err := template.New("liuyanbook").Parse(html)
    if err != nil {
        panic(err)
    }
   
    // 顯示留言頁面 /
    requestList := func(w http.ResponseWriter, req *http.Request) {
        // 查詢數(shù)據(jù)
        rows, err := db.Query("select * from liuyan")
        if err != nil {
            log.Fatal(err)
        }
        defer rows.Close()
   
        // 獲取數(shù)據(jù)
        lys := []Liuyan{}
        for rows.Next() {
            ly := Liuyan{}
            err := rows.Scan(ly.Id, ly.Name, ly.Content, ly.Time)
            if nil != err {
                log.Fatal(err)
            }
            lys = append(lys, ly)
        }
   
        // 顯示數(shù)據(jù)
        err = tpl.ExecuteTemplate(w, "list", lys)
        if err != nil {
            log.Fatal(err)
        }
    }
   
    // 留言頁面 /liuyan
    requestLiuyan := func(w http.ResponseWriter, req *http.Request) {
        err := req.ParseForm()
        if err != nil{
            log.Fatal(err)
        }
   
        if "POST" == req.Method {
            if len(req.Form["name"]) 1 {
                io.WriteString(w, "參數(shù)錯誤!\n")
                return
            }
            if len(req.Form["content"]) 1 {
                io.WriteString(w, "參數(shù)錯誤!\n")
                return
            }
   
            name := template.HTMLEscapeString(req.Form.Get("name"))
            content := template.HTMLEscapeString(req.Form.Get("content"))
   
            // sql語句
            sql, err := db.Prepare("insert into liuyan(name, content, time) values(?, ?, ?)")
            if err != nil {
                log.Fatal(err)
            }
            defer sql.Close()
   
            // sql參數(shù),并執(zhí)行
            _, err = sql.Exec(name, content, time.Now().Unix())
            if err != nil {
                log.Fatal(err)
            }
   
            // 跳轉(zhuǎn)
            w.Header().Add("Location", "/")
            w.WriteHeader(302)
   
            // 提示信息
            io.WriteString(w, "提交成功!\n")
   
            return
        }
   
        err = tpl.ExecuteTemplate(w, "liuyan", nil)
        if err != nil {
            log.Fatal(err)
        }
    }
   
    http.HandleFunc("/", requestList)
    http.HandleFunc("/liuyan", requestLiuyan)
    err = http.ListenAndServe(":12345", nil)
    if err != nil {
        log.Fatal("ListenAndServe: ", err)
    }
}
   
// 網(wǎng)頁模板
var html string = `{{define "list"}}{{/* 留言列表頁面 */}}!DOCTYPE html>
html>
head>
meta http-equiv="Content-Type" content="text/html; charset=utf-8">
/head>
body>
    p>a href="/liuyan">給我留言/a>/p>
    table>
{{range .}}
    tr>
        td>{{.Id}}/td>td>{{.Name}}/td>td>{{.Content}}/td>td>{{.ShowTime}}/td>
    /tr>
{{end}}
    /table>
/body>
/html>{{end}}
{{define "liuyan"}}{{/* 發(fā)布留言頁面 */}}!DOCTYPE html>
html>
head>
meta http-equiv="Content-Type" content="text/html; charset=utf-8">
/head>
body>
    form method="post">
        姓名:input type="text" name="name" />br>
        內(nèi)容:input type="text" name="content" />br>
        input type="submit" value="提交" />
    /form>
/body>
/html>{{end}}

希望本文所述對大家的Go語言程序設(shè)計有所幫助。

您可能感興趣的文章:
  • js 實現(xiàn)的可折疊留言板(附源碼下載)
  • 本人ajax留言板的源程序 不錯的應(yīng)用js
  • php簡單的留言板與回復(fù)功能具體實現(xiàn)
  • php開發(fā)留言板的CRUD(增,刪,改,查)操作
  • 一個簡單的PHP&MYSQL留言板源碼
  • ASP+XML留言板介紹
  • 利用XML開發(fā)留言板簡單的例子
  • JS+CSS模擬可以無刷新顯示內(nèi)容的留言板實例

標(biāo)簽:晉城 湘潭 運城 楚雄 喀什 本溪 九江 深圳

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Go語言實現(xiàn)簡單留言板的方法》,本文關(guān)鍵詞  語言,實現(xiàn),簡單,留言板,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Go語言實現(xiàn)簡單留言板的方法》相關(guān)的同類信息!
  • 本頁收集關(guān)于Go語言實現(xiàn)簡單留言板的方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    日本欧美一区二区三区乱码| 欧美三级在线看| 亚洲欧美成人一区二区三区| 亚洲综合免费观看高清在线观看| 最新国产精品久久精品| 亚洲电影一区二区三区| 久久se精品一区精品二区| 国产福利一区二区三区视频在线| 91小视频在线免费看| 精品国产自在久精品国产| 爽好多水快深点欧美视频| 99这里只有精品| 国产精品天美传媒| 国产高清在线精品| 欧美mv日韩mv国产网站| 天天免费综合色| 91精品国产综合久久福利软件 | 日韩理论片网站| 午夜精品久久久久| 欧洲一区在线观看| 亚洲成人av福利| 欧美成人激情免费网| 青青草91视频| 欧美经典三级视频一区二区三区| 国产一区二区美女| 国产精品私人影院| 色偷偷久久人人79超碰人人澡 | 欧美高清性hdvideosex| 午夜一区二区三区视频| 91精品国产高清一区二区三区 | 久久99精品一区二区三区三区| 欧美综合久久久| 午夜视频久久久久久| 久久精品日韩一区二区三区| 99精品国产91久久久久久| 亚洲午夜在线视频| 中文字幕不卡在线观看| 91精品欧美福利在线观看| 成人av网站在线| 蜜桃精品视频在线观看| 亚洲精品视频自拍| 中文av一区二区| 久久久久久久精| 日韩天堂在线观看| 欧美日韩一区二区三区在线| 国产一区二区三区观看| 亚洲国产日韩一级| 亚洲欧洲av在线| 国产精品久久久久久户外露出| 欧美日韩精品二区第二页| 成人黄色国产精品网站大全在线免费观看| 日日夜夜免费精品| 亚洲一区二区美女| 亚洲男人的天堂在线观看| 成人免费一区二区三区视频| 3d动漫精品啪啪| 欧美一区二区三区在线看| 在线亚洲精品福利网址导航| 国产精品18久久久久| 麻豆免费精品视频| 中文字幕日韩一区| 久久久亚洲精品一区二区三区| 91精品国产免费| 中文字幕av一区二区三区高 | 日韩欧美激情在线| 日韩免费观看高清完整版在线观看 | 国产成人精品一区二区三区四区| 91亚洲精品久久久蜜桃| 日韩精品专区在线| 中文字幕一区二| 麻豆91精品视频| 欧美在线不卡一区| 中文字幕在线不卡一区| 亚瑟在线精品视频| 国产成人一区二区精品非洲| 9i在线看片成人免费| 99久久婷婷国产综合精品 | 波多野结衣的一区二区三区| 久久精品免费在线观看| 成人精品视频网站| 奇米影视7777精品一区二区| 亚洲国产精品一区二区久久恐怖片| 欧美精品一区二区三| 欧美国产欧美亚州国产日韩mv天天看完整| 日韩欧美国产小视频| 久久久高清一区二区三区| 国产精品色噜噜| 国产精品美女久久久久久久| 久久久久免费观看| 91美女在线观看| 欧美主播一区二区三区| 欧美综合一区二区三区| 色视频欧美一区二区三区| 欧美日韩国产精选| 久久婷婷国产综合国色天香| 91麻豆精品国产91| 国产精品久久久久四虎| 欧美亚洲一区三区| 国产欧美va欧美不卡在线| 精品成人一区二区三区| 色综合夜色一区| 91精品欧美福利在线观看| 26uuu亚洲综合色欧美| 亚洲色图欧美在线| 国内一区二区视频| 国产一区二区不卡| 欧美日韩精品是欧美日韩精品| wwww国产精品欧美| 一个色在线综合| 国产一区二区在线看| 在线成人午夜影院| 欧美三级中文字幕在线观看| 日本美女视频一区二区| 97久久人人超碰| 欧美日韩高清不卡| 亚洲欧美在线aaa| 国产精品自拍一区| 久久久国际精品| 欧美一区二区三区视频| 欧美男人的天堂一二区| 亚洲国产欧美日韩另类综合| 成人免费高清在线观看| 久久综合色播五月| 26uuu欧美日本| 91精品一区二区三区久久久久久| 亚洲欧美另类图片小说| 色综合久久精品| 亚洲精品免费看| 不卡视频一二三| 亚洲精品视频在线看| 欧美电影免费观看高清完整版在线观看| 亚洲最大成人网4388xx| av亚洲精华国产精华精| 裸体健美xxxx欧美裸体表演| 精品在线免费视频| 国产精品高潮呻吟久久| 欧美网站大全在线观看| 日本三级亚洲精品| 欧美国产成人精品| 99久久国产免费看| 午夜精品免费在线| 亚洲欧美日韩国产一区二区三区 | 国产综合色视频| 日韩欧美不卡在线观看视频| 久久99精品网久久| 亚洲一区欧美一区| 亚洲精品一区二区在线观看| 成人禁用看黄a在线| 午夜精品成人在线视频| 久久久久久久免费视频了| 大白屁股一区二区视频| 亚洲va国产天堂va久久en| 中文字幕 久热精品 视频在线| 欧美日韩国产色站一区二区三区| 欧美精品第1页| 99久久精品国产一区二区三区| 日韩黄色在线观看| 亚洲天堂精品在线观看| 欧美一级淫片007| 色妹子一区二区| 国产一区二区福利视频| 婷婷夜色潮精品综合在线| 日本久久一区二区三区| 91丝袜美女网| 免费美女久久99| 韩日av一区二区| 精品成a人在线观看| 国产精品理论在线观看| 亚洲乱码国产乱码精品精可以看| 中文字幕一区二区三区不卡在线| 亚洲欧洲精品天堂一级| 欧美韩国日本综合| 国产精品久久久久久久久快鸭 | 欧美三级三级三级| 欧洲精品一区二区三区在线观看| av成人免费在线观看| 在线一区二区三区四区| 精品国产一区二区三区不卡 | 欧美日韩视频一区二区| 欧美色图天堂网| 久久99深爱久久99精品| 成人av资源网站| 久久久综合精品| 国内国产精品久久| 欧美另类一区二区三区| ㊣最新国产の精品bt伙计久久| 日韩精品国产欧美| 欧美一区在线视频| 五月婷婷另类国产| 精品国产亚洲在线| 欧美伦理电影网| 日韩欧美国产一区二区在线播放| 亚洲国产精品t66y| 色噜噜狠狠色综合中国| 国产精品美女视频| 国产成人亚洲精品青草天美| 精品动漫一区二区三区在线观看| 制服丝袜中文字幕亚洲| av激情综合网| 一区二区三区精品久久久|