잠시만 기다려 주세요

HOME   |  여기는?   |  바다물때표   |  여러가지 팁 (888)  |  추천 및 재미 (152)  |  자료실 (20)  |  끄적거림 (519)  |  시나리오 (760)  |  드라마 대본 (248)  |  

2020년 09월 22일
절제하니 또 절제가 된다. 사람의 의지는 생각보다 정말 강하다. - 바다아이
 




    golang

golang - golang 게시판 페이지 네비게이션. 페이지 이동. page move
이 름 : 바다아이   |   조회수 : 2368         짧은 주소 : https://www.bada-ie.com/su/?521591803300
소스가 지저분하지만.... ^^; 잘 고쳐 쓰세요....
실행 후 브라우저에서 localhost 로 접속해 보세요...

package main

import (
	"io"
	"math"
	"net/http"
	"strconv"
)

// 네비게이션 함수
func GotoPage(page int, total_page int, page_per_block int, s string) string {

	var Page_Total string
	var new_page int

	// 페이지 링크설정
	total_block := float64(total_page) / float64(page_per_block)
	n_total_block := int(math.Ceil(total_block))

	block := float64(page) / float64(page_per_block)
	n_block := int(math.Ceil(block))
	first_page := (n_block - 1) * page_per_block
	last_page := n_block * page_per_block

	if n_total_block <= n_block {
		last_page = total_page
	}

	// 첫페이지 링크
	if n_block > 1 {
		Page_Total = `<a href='` + s + `&page=1'><font color='333333'>처음</font></a>&nbsp;&nbsp;`
	}

	// 이전 페이지 링크
	if n_block > 1 {
		new_page = first_page
		Page_Total += `<a href='` + s + `&page=` + strconv.Itoa(new_page) + `'>
<font color='333333'>이전</font></a>&nbsp;&nbsp;`
	}

	// 선택 페이지 링크
	for direct_page := first_page + 1; direct_page <= last_page; direct_page++ {
		direct_page2 := strconv.Itoa(direct_page)
		if page == direct_page {
			Page_Total += `<b>` + direct_page2 + `</b>&nbsp;&nbsp;`
		} else {
			Page_Total += `<a href='` + s + `&page=` + direct_page2 + `'>` + direct_page2 + `</a>
&nbsp;&nbsp;`
		}
	}

	// 다음 페이지 링크
	if last_page < total_page {
		new_page = last_page + 1
		Page_Total += `<a href='` + s + `&page=` + strconv.Itoa(new_page) + `'>
<font color='333333'>다음</font></a>&nbsp;&nbsp;`
	}

	// 끝 페이지 링크
	if n_block < n_total_block {
		Page_Total += `<a href='` + s + `&page=` + strconv.Itoa(total_page) + `'>
<font color='333333'>끝</font></a>&nbsp;&nbsp;`
	}

	return Page_Total
}

func aa(w http.ResponseWriter, req *http.Request) {

	var page2 int

	page := req.FormValue("page")

	if page == "" {
		page2 = 1
	} else {
		page2, _ = strconv.Atoi(page)
	}

	// 현재페이지, 전체페이지, 네비게이션 블록개수, url 및 넘겨줄 querystring, 물음표는 꼭 쓰셔야 합니다. 
    // 그 뒤에 인자들이 붙습니다.
	a := GotoPage(page2, 20, 10, "./a?")
	io.WriteString(w, a)
}

func main() {

	mux := http.DefaultServeMux
	mux.HandleFunc("/", aa)

	srv := http.Server{
		Addr:    ":80",
		Handler: mux,
		// ReadTimeout:    10 * time.Second,
		// WriteTimeout:   10 * time.Second,
		// MaxHeaderBytes: 1 << 20,
	}
	_ = srv.ListenAndServe()
}
| |


      1 page / 6 page
번 호 카테고리 제 목 이름 조회수
173 golang , String Formatting 바다아이 223
172 golang rand.Intn , random, , . 바다아이 242
171 golang golang ... 바다아이 1404
170 golang golang gopath, goroot .. 바다아이 1059
169 golang golang ... Force download file example 바다아이 1557
168 golang golang , , cpu, memory, disk 바다아이 2283
167 golang golang , ... GOOS, GOARCH 바다아이 1606
166 golang golang checkbox ... 바다아이 1842
165 golang golang , , http .... 바다아이 1775
164 golang golang nil , nil , nil ... 바다아이 1868
163 golang 2 golang, go , .... golang .... 바다아이 2672
162 golang golang postgresql, mysql, mariadb ... ` Grave () .. .. 바다아이 1949
161 golang golang postgresql mysql, mariadb scan , null .. 바다아이 2044
160 golang golang , iconv 바다아이 2189
159 golang golang quote escape, unquote 바다아이 2103
158 golang golang , http errorLog , , ... 바다아이 2211
157 golang golang interface , 바다아이 2144
156 golang golang struct .... 바다아이 2272
155 golang golang map map , 바다아이 2128
154 golang golang map .... .... 바다아이 2097
153 golang golang slice copy 바다아이 2057
152 golang golang goto 바다아이 2141
151 golang golang slice sort , int, string, float64 바다아이 2206
150 golang URL Parsing, url . parse 바다아이 2266
149 golang golang , interface{} ... 바다아이 2191
148 golang golang interface to string, , , map slice json 바다아이 2042
147 golang golang How to convert JSON string to map and slice, json 바다아이 2190
146 golang golang , file write, Writing Files 바다아이 2318
145 golang golang Insert Line or String to File, , , , , 바다아이 2070
144 golang golang replace 바다아이 2149
| |








Copyright ⓒ 2001.12. bada-ie.com. All rights reserved.
이 사이트는 리눅스에서 firefox 기준으로 작성되었습니다. 기타 브라우저에서는 다르게 보일 수 있습니다.
[ FreeBSD + GoLang + PostgreSQL ]
서버위치 : 구글 클라우드 플랫폼  실행시간 : 0.04822
to webmaster... gogo sea. gogo sea.