fathom/models/pageview.go

51 lines
826 B
Go
Raw Normal View History

2016-11-21 17:36:25 +01:00
package models
2016-12-10 15:58:54 +01:00
import (
"database/sql"
)
2016-11-21 17:36:25 +01:00
type Pageview struct {
ID int64
PageID int64
VisitorID int64
ReferrerKeyword string
ReferrerUrl string
Timestamp string
}
type Pageviews struct {
Hostname string
2016-11-21 17:36:25 +01:00
Path string
Count int
2016-11-22 17:03:29 +01:00
CountUnique int
2016-11-21 17:36:25 +01:00
}
2016-12-10 15:58:54 +01:00
func(pv *Pageview) Save(conn *sql.DB) error {
// prepare statement for inserting data
stmt, err := conn.Prepare(`INSERT INTO pageviews (
page_id,
visitor_id,
referrer_url,
referrer_keyword,
timestamp
) VALUES( ?, ?, ?, ?, ? )`)
if err != nil {
return err
}
defer stmt.Close()
result, err := stmt.Exec(
pv.PageID,
pv.VisitorID,
pv.ReferrerUrl,
pv.ReferrerKeyword,
pv.Timestamp,
)
if err != nil {
return err
}
pv.ID, err = result.LastInsertId()
return err
}