This is a creation in Article, where the information may have evolved or changed.
Adduser.html
<form action= ' user ' method= ' post ' >
<input Type=text Name=id/></br>
<input Type=text Name=name/></br>
<input type=submit/>
</form>
<a href= "Users" >show all</a>
---
Package Main
Import (
"Database/sql"
_ "Github.com/mattn/go-sqlite3"
"FMT"
"Html/template"
"Log"
"Net/http"
"StrConv"
)
Type User struct {
ID int
Name string
}
Func (user User) string () string {
Format: = ' ID:%d Name:%s '
Return to FMT. Sprintf (format, user.id, user. Name)
}
Func Saveuser (w http. Responsewriter, req *http. Request) {
UserId, _: = StrConv. Atoi (req. Formvalue ("Id"))
Name: = Req. Formvalue ("name")
Out: = StrConv. Itoa (userId) + "-" + Name
U: = &user{id:userid, Name:name}
Log. Println (out)
Fmt. fprintf (W, u.string ())
}
Func AddUser (w http. Responsewriter, R *http. Request) {
T, _: = template. Parsefiles ("tmpl/adduser.html")
T.execute (W, Nil)
}
Func Main () {
http. Handlefunc ("/", AddUser)
http. Handlefunc ("/user", Saveuser)
ERR: = http. Listenandserve (": 8880", nil)
If err! = Nil {
Log. Fatal ("Listenandserve:", err.) Error ())
}
}