PHP search results are displayed on the page. the problematic homepage is displayed. no data is displayed on pages... Code
Include_once ("script/conn. php "); class Page {private $ curPage; // The current Page private $ totalPages; // The total number of data pages displayed private $ dispNum; // The number of data entries displayed on each page is private $ queryStr; // The queried SQL statement is private $ limitStr; // The limit control statement after the query statement is private $ currentPage; // Obtain the public function _ construct ($ queryStr = '', $ dispNum = 3) {$ result = mysql_query ($ queryStr ); $ totalNum = mysql_num_rows ($ result); $ this-> dispNum = $ dispNum; $ currentPage = basename ($ _ SERVER ["PHP_SELF"]); // part of the file name in the returned path $ this-> totalPages = ceil ($ totalNum/$ dispNum ); $ this-> queryStr = $ queryStr; $ temp = (isset ($ _ GET ["curPage"])? $ _ GET ["curPage"]: 1); $ this-> setCurPage ($ temp); $ this-> showCurPage (); $ this-> showFoot ();} private function showCurPage () {$ this-> limitStr = 'limit '. ($ this-> curPage-1) * $ this-> dispNum ). ','. $ this-> dispNum; $ result = mysql_query ($ this-> queryStr. $ this-> limitStr); while ($ row = mysql_fetch_assoc ($ result) {echo ""; echo"
";}} Private function setCurPage ($ curPage) {if ($ curPage <1) {$ curPage = 1;} else if ($ curPage >$ this-> totalPages) {$ curPage = $ this-> totalPages;} $ this-> curPage = $ curPage;} private function showFoot () {echo 'homepage done'; echo 'curpage-1 ). '"> Previous Page'; echo 'curpage + 1 ). '"> Next Page comment'; echo 'totalpages. '"> Last Page comment'; echo" total ". $ this-> totalPages. "page marker"; echo "current number ". $ this-> curPage. "page" ;}}$ keyword =$ _ POST ['search']; $ sq L = mysql_query ("select * from didian where name like '% $ keyword %'"); $ raw = @ mysql_fetch_object ($ SQL); if (! $ Raw) {echo "the information you searched for does not exist. please search with similar keywords! ";}
If this output is used independently, it is okay .. However, if this line is added, no data is displayed on the page. this is the condition for determining the search box.
Switch ($ keyword) {case 'guilin ': $ pages = new Page ('select * FROM 'image _ GUILIN'', 3); break; case 'Hainan ': $ pages = new Page ('select * FROM 'image _ hainance', 3); break; case 'Beijing ': $ pages = new Page ('select * FROM 'image _ beijing '', 3); break; case 'jiuzhaigou ': $ pages = new Page ('select * FROM 'image _ jiuzhaigou '', 3); break; case 'taihang mountain ': $ pages = new Page ('select * FROM 'image _ taihengshance', 3); break; case 'Shangri-La ': $ pages = new Page ('select * FROM 'image _ xianggelila ', 3); break; case 'xiaoxinggan ': $ pages = new Page ('select * FROM 'image _ xiaoxinganling', 3); break; case 'xishuangbanna ': $ pages = new Page ('select * FROM 'image _ xishuangbannaca', 3); break ;}
Next is the html search box jump
I don't know why .. Ask for advice...
Reply to discussion (solution)
You did not include the keyword parameter when turning pages.
Private function showFoot (){
Echo 'homepage done ';
Echo 'curpage-1). '"> Previous Page success ';
Echo 'curpage + 1). '"> Next Page comment ';
Echo 'totalpages. '"> last pagination ';
Echo "total". $ this-> totalPages. "page details ";
Echo "current". $ this-> curPage. "page ";
}
The keyword parameter must be added here.
Echo 'curpage-1). '"> Previous Page success ';
You did not include the keyword parameter when turning pages.
Private function showFoot (){
Echo 'homepage done ';
Echo 'curpage-1). '"> Previous Page success ';
Echo 'curpage + 1). '"> Next Page comment ';
Echo 'totalpages. '"> last pagination ';
Echo "total". $ this-> totalPages. "page details ";
Echo "current". $ this-> curPage. "page ";
}
The keyword parameter must be added here.
Echo 'curpage-1). '"> Previous Page success ';
Still no data
What if there are no parameters on the homepage? This is the homepage's http: // localhost: 808/Web/search. php
This is the second page of http: // localhost: 808/Web/search. php? CurPage = & curPage = 2
Do I have to add anything to the form action? I changed it according to yours.
Private function showFoot () {echo 'homepage failed'; echo 'curpage-1 ). '"> Previous Page'; echo 'curpage + 1 ). '"> Next Page comment'; echo 'totalpages. '"> Last Page comment'; echo" total ". $ this-> totalPages. "page marker"; echo "current number ". $ this-> curPage. "page ";}
$ Keyword is not passed in showFoot, of course not.
$ Keyword is not passed in showFoot, of course not.
So how can we change it? I don't know where to change it ..
At least.
Echo'
Rivate function showFoot () {echo 'homepage failed'; echo 'curpage-1 ). '"> Previous Page'; echo 'curpage + 1 ). '"> Next Page comment'; echo 'totalpages. '"> Last Page comment'; echo" total ". $ this-> totalPages. "page marker"; echo "current number ". $ this-> curPage. "page ";}
You cannot get $ keyword in this method, so it is null.
Add a parameter.
DispNum = $ dispNum; $ this-> keyword = $ keyword; $ currentPage = basename ($ _ SERVER ["PHP_SELF"]); // return the file name section in the path $ this-> totalPages = ceil ($ totalNum/$ dispNum); $ this-> queryStr = $ queryStr; $ temp = (isset ($ _ GET ["curPage"])? $ _ GET ["curPage"]: 1); $ this-> setCurPage ($ temp); $ this-> showCurPage (); $ this-> showFoot ();} private function showCurPage () {$ this-> limitStr = 'limit '. ($ this-> curPage-1) * $ this-> dispNum ). ','. $ this-> dispNum; $ result = mysql_query ($ this-> queryStr. $ this-> limitStr); while ($ row = mysql_fetch_assoc ($ result) {echo ""; echo"
";}} Private function setCurPage ($ curPage) {if ($ curPage <1) {$ curPage = 1;} else if ($ curPage >$ this-> totalPages) {$ curPage = $ this-> totalPages;} $ this-> curPage = $ curPage;} private function showFoot () {echo 'keyword. '& curPage = 1 "> homepage comment'; echo 'keyword. '& curPage = '. ($ this-> curPage-1 ). '"> Previous Page'; echo 'keyword. '& curPage = '. ($ this-> curPage + 1 ). '"> Next Page comment'; echo 'keyword. '& curPage = '. $ this-> totalPages.' "> Last Page comment '; echo" total ". $ this-> totalPages. "page marker"; echo "current number ". $ this-> curPage. "page" ;}}$ keyword =$ _ POST ['search']; $ SQL = mysql_query ("select * from didian where name like '% $ keyword % '"); $ raw = @ mysql_fetch_object ($ SQL); if (! $ Raw) {echo "the information you searched for does not exist. please search with similar keywords! ";}?>
Parameters must be added during the call.
$ Pages = new Page ('select * FROM 'image _ GUILIN' ', $ keyword, 3 );
Parameters must be added during the call.
$ Pages = new Page ('select * FROM 'image _ GUILIN' ', $ keyword, 3 );
Or not .. The homepage I searched out has no suffix parameter http: // localhost: 808/Web/search. php.
At least.
Echo'
The homepage has no parameters .. Only the next page address has parameters ..
$ Keyword = $ _ POST ['search'];
1. the name of the parameter you obtained is search, not keyword.
2. because the page is using get, it cannot be obtained.
Change it to this.
DispNum = $ dispNum; $ this-> keyword = $ keyword; $ currentPage = basename ($ _ SERVER ["PHP_SELF"]); // return the file name section in the path $ this-> totalPages = ceil ($ totalNum/$ dispNum); $ this-> queryStr = $ queryStr; $ temp = (isset ($ _ GET ["curPage"])? $ _ GET ["curPage"]: 1); $ this-> setCurPage ($ temp); $ this-> showCurPage (); $ this-> showFoot ();} private function showCurPage () {$ this-> limitStr = 'limit '. ($ this-> curPage-1) * $ this-> dispNum ). ','. $ this-> dispNum; $ result = mysql_query ($ this-> queryStr. $ this-> limitStr); while ($ row = mysql_fetch_assoc ($ result) {echo ""; echo"
";}} Private function setCurPage ($ curPage) {if ($ curPage <1) {$ curPage = 1;} else if ($ curPage >$ this-> totalPages) {$ curPage = $ this-> totalPages;} $ this-> curPage = $ curPage;} private function showFoot () {echo 'keyword. '& curPage = 1 "> homepage comment'; echo 'keyword. '& curPage = '. ($ this-> curPage-1 ). '"> Previous Page'; echo 'keyword. '& curPage = '. ($ this-> curPage + 1 ). '"> Next Page comment'; echo 'keyword. '& curPage = '. $ this-> totalPages.' "> Last Page comment '; echo" total ". $ this-> totalPages. "page marker"; echo "current number ". $ this-> curPage. "page" ;}}$ keyword =$ _ REQUEST ['search']; $ SQL = mysql_query ("select * from didian where name like '% $ keyword % '"); $ raw = @ mysql_fetch_object ($ SQL); if (! $ Raw) {echo "the information you searched for does not exist. please search with similar keywords! ";}?>
$ Keyword = $ _ POST ['search'];
1. the name of the parameter you obtained is search, not keyword.
2. because the page is using get, it cannot be obtained.
Change it to this.
DispNum = $ dispNum; $ this-> keyword = $ keyword; $ currentPage = basename ($ _ SERVER ["PHP_SELF"]); // return the file name section in the path $ this-> totalPages = ceil ($ totalNum/$ dispNum); $ this-> queryStr = $ queryStr; $ temp = (isset ($ _ GET ["curPage"])? $ _ GET ["curPage"]: 1); $ this-> setCurPage ($ temp); $ this-> showCurPage (); $ this-> showFoot ();} private function showCurPage () {$ this-> limitStr = 'limit '. ($ this-> curPage-1) * $ this-> dispNum ). ','. $ this-> dispNum; $ result = mysql_query ($ this-> queryStr. $ this-> limitStr); while ($ row = mysql_fetch_assoc ($ result) {echo ""; echo"
";}} Private function setCurPage ($ curPage) {if ($ curPage <1) {$ curPage = 1;} else if ($ curPage >$ this-> totalPages) {$ curPage = $ this-> totalPages;} $ this-> curPage = $ curPage;} private function showFoot () {echo 'keyword. '& curPage = 1 "> homepage comment'; echo 'keyword. '& curPage = '. ($ this-> curPage-1 ). '"> Previous Page'; echo 'keyword. '& curPage = '. ($ this-> curPage + 1 ). '"> Next Page comment'; echo 'keyword. '& curPage = '. $ this-> totalPages.' "> Last Page comment '; echo" total ". $ this-> totalPages. "page marker"; echo "current number ". $ this-> curPage. "page" ;}}$ keyword =$ _ REQUEST ['search']; $ SQL = mysql_query ("select * from didian where name like '% $ keyword % '"); $ raw = @ mysql_fetch_object ($ SQL); if (! $ Raw) {echo "the information you searched for does not exist. please search with similar keywords! ";}?>
Well, I am so grateful !!