search engine & pagination

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
kilikeio
Δημοσιεύσεις: 52
Εγγραφή: 08 Ιούλ 2008 16:53

search engine & pagination

Δημοσίευση από kilikeio » 19 Ιαν 2010 17:04

καλησπερα

εχω κανει αυτο το search engine με pagination:

Κώδικας: Επιλογή όλων

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http&#58;//www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http&#58;//www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link href="style.css" rel="stylesheet" type="text/css">
<style type="text/css">
p.sample &#123;
     
    background-color&#58;#efffff;
    font-family&#58; fantasy;
	font-style&#58; normal;
	font-variant&#58; small-caps;
	font-weight&#58; 200;
	font-size&#58; 50px;
	line-height&#58; 200%;
	word-spacing&#58; normal;
	letter-spacing&#58; 0.1ex;
	text-decoration&#58; none;
	text-transform&#58; lowercase;
	text-align&#58; left;
	text-indent&#58; 0ex;
&#125;
</style>

<p class="sample">
<a href="http&#58;//localhost/insert/index.php"  style="color&#58;#000000; text-decoration&#58;none;">.MusicDatabase.</a>
</p>

</head>
<body>
<a href="http&#58;//localhost/insert/ins.php">Add</a> <a href="http&#58;//localhost/insert/index.php">Index</a>

<a href="http&#58;//localhost/insert/searchform.php">Search</a>








<?php
	$con = mysql_connect&#40;"localhost","root",""&#41;;
	if &#40;!$con&#41; &#123; die&#40;'Could not connect&#58; ' . mysql_error&#40;&#41;&#41;; &#125;
	mysql_select_db&#40;"my_db", $con&#41;;

	$tbl_name="persons";		//your table name
	// How many adjacent pages should be shown on each side?
	$adjacents = 3;
	
	/* 
	   First get total number of rows in data table. 
	   If you have a WHERE clause in your query, make sure you mirror it here.
	*/
	$query = "SELECT COUNT&#40;*&#41; as num FROM $tbl_name";
	$total_pages = mysql_fetch_array&#40;mysql_query&#40;$query&#41;&#41;;
	$total_pages = $total_pages&#91;num&#93;;
	
	/* Setup vars for query. */
	$targetpage = "search21.php"; 	//your file name  &#40;the name of this file&#41;
	$limit = 10; 								//how many items to show per page
	$page = $_GET&#91;'page'&#93;;
	if&#40;$page&#41; 
		$start = &#40;$page - 1&#41; * $limit; 			//first item to display on this page
	else
		$start = 0;								//if no page var is given, set start to 0
	
	/* Get data. */
	
	
	/* Setup page vars for display. */
	if &#40;$page == 0&#41; $page = 1;					//if no page var is given, default to 1.
	$prev = $page - 1;							//previous page is page - 1
	$next = $page + 1;							//next page is page + 1
	$lastpage = ceil&#40;$total_pages/$limit&#41;;		//lastpage is = total pages / items per page, rounded up.
	$lpm1 = $lastpage - 1;						//last page minus 1
	
	/* 
		Now we apply our rules and draw the pagination object. 
		We're actually saving the code to a variable in case we want to draw it more than once.
	*/
	$pagination = "";
	if&#40;$lastpage > 1&#41;
	&#123;	
		$pagination .= "<div class=\"pagination\">";
		//previous button
		if &#40;$page > 1&#41; 
			$pagination.= "<a href=\"$targetpage?page=$prev\">« previous</a>";
		else
			$pagination.= "<span class=\"disabled\">« previous</span>";	
		
		//pages	
		if &#40;$lastpage < 7 + &#40;$adjacents * 2&#41;&#41;	//not enough pages to bother breaking it up
		&#123;	
			for &#40;$counter = 1; $counter <= $lastpage; $counter++&#41;
			&#123;
				if &#40;$counter == $page&#41;
					$pagination.= "<span class=\"current\">$counter</span>";
				else
					$pagination.= "<a href=\"$targetpage?page=$counter\">$counter</a>";					
			&#125;
		&#125;
		elseif&#40;$lastpage > 5 + &#40;$adjacents * 2&#41;&#41;	//enough pages to hide some
		&#123;
			//close to beginning; only hide later pages
			if&#40;$page < 1 + &#40;$adjacents * 2&#41;&#41;		
			&#123;
				for &#40;$counter = 1; $counter < 4 + &#40;$adjacents * 2&#41;; $counter++&#41;
				&#123;
					if &#40;$counter == $page&#41;
						$pagination.= "<span class=\"current\">$counter</span>";
					else
						$pagination.= "<a href=\"$targetpage?page=$counter\">$counter</a>";					
				&#125;
				$pagination.= "...";
				$pagination.= "<a href=\"$targetpage?page=$lpm1\">$lpm1</a>";
				$pagination.= "<a href=\"$targetpage?page=$lastpage\">$lastpage</a>";		
			&#125;
			//in middle; hide some front and some back
			elseif&#40;$lastpage - &#40;$adjacents * 2&#41; > $page && $page > &#40;$adjacents * 2&#41;&#41;
			&#123;
				$pagination.= "<a href=\"$targetpage?page=1\">1</a>";
				$pagination.= "<a href=\"$targetpage?page=2\">2</a>";
				$pagination.= "...";
				for &#40;$counter = $page - $adjacents; $counter <= $page + $adjacents; $counter++&#41;
				&#123;
					if &#40;$counter == $page&#41;
						$pagination.= "<span class=\"current\">$counter</span>";
					else
						$pagination.= "<a href=\"$targetpage?page=$counter\">$counter</a>";					
				&#125;
				$pagination.= "...";
				$pagination.= "<a href=\"$targetpage?page=$lpm1\">$lpm1</a>";
				$pagination.= "<a href=\"$targetpage?page=$lastpage\">$lastpage</a>";		
			&#125;
			//close to end; only hide early pages
			else
			&#123;
				$pagination.= "<a href=\"$targetpage?page=1\">1</a>";
				$pagination.= "<a href=\"$targetpage?page=2\">2</a>";
				$pagination.= "...";
				for &#40;$counter = $lastpage - &#40;2 + &#40;$adjacents * 2&#41;&#41;; $counter <= $lastpage; $counter++&#41;
				&#123;
					if &#40;$counter == $page&#41;
						$pagination.= "<span class=\"current\">$counter</span>";
					else
						$pagination.= "<a href=\"$targetpage?page=$counter\">$counter</a>";					
				&#125;
			&#125;
		&#125;
		
		//next button
		if &#40;$page < $counter - 1&#41; 
			$pagination.= "<a href=\"$targetpage?page=$next\">next »</a>";
		else
			$pagination.= "<span class=\"disabled\">next »</span>";
		$pagination.= "</div>\n";		
	&#125;
?>

	<?php
$searchtype=$_POST&#91;"searchtype"&#93;;
$searchterm=addslashes&#40;$_POST&#91;"searchterm"&#93;&#41;;

	$sql = "SELECT*FROM $tbl_name WHERE ".$searchtype." LIKE '%".$searchterm."%' LIMIT $start, $limit";
	$result = mysql_query&#40;$sql&#41;;
Print "<table border=1 align=center cellpadding=3>";
Print "<tr><th>Link</th><th>Artist</th><th>Album</th><th>Year</th><th>Comments</th><th>Genre</th></tr>";
		while&#40;$row = mysql_fetch_array&#40;$result&#41;&#41;
		&#123;	
   //the format is $variable = $r&#91;"nameofmysqlcolumn"&#93;;
   //modify these to match your mysql table columns
 
  
//display the row

    Print "<tr>";
    Print "<td><a href=\"".$row&#91;'Link'&#93;."\">".$row&#91;'Link'&#93;."</a></td> ";
	Print "<td>".$row&#91;"Artist"&#93;."</td>";
	Print "<td>".$row&#91;"Album"&#93;."</td>";
	Print "<td>".$row&#91;"Year"&#93;."</td>";
	Print "<td>".$row&#91;"Comments"&#93;."</td>"; 
	Print "<td>".$row&#91;"Genre"&#93;."</td>";
	Print "</tr>";
   
  
&#125;

Print "</table>";
mysql_close&#40;$con&#41;;
	?>

<?php echo $pagination?>

</body>
</html>
και ενω οταν παταω search μου βγαζει τα πρωτα 10 αποτελεσματα στη συνεχεια οταν παταω το κουμπι next στο pagination μου πεταει αυτο το error

Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\insert\search21.php on line 169

υποψιαζομαι οτι εχω καποιο λαθος στην συνταξη στην εντολη

Κώδικας: Επιλογή όλων

	$sql = "SELECT*FROM $tbl_name WHERE ".$searchtype." LIKE '%".$searchterm."%' LIMIT $start, $limit";
αλλα δεν μπορω να το βρω με τιποτα. οποιος μπορει να βοηθησει.. :-? :-?
παραθετω και την φορμα της search engine

Κώδικας: Επιλογή όλων

<html>
<body>
<head>
<style type="text/css">
p.sample &#123;
     
    background-color&#58;#efffff;
    font-family&#58; fantasy;
	font-style&#58; normal;
	font-variant&#58; small-caps;
	font-weight&#58; 200;
	font-size&#58; 50px;
	line-height&#58; 200%;
	word-spacing&#58; normal;
	letter-spacing&#58; 0.1ex;
	text-decoration&#58; none;
	text-transform&#58; lowercase;
	text-align&#58; left;
	text-indent&#58; 0ex;
&#125;
</style>

<p class="sample">
<a href="http&#58;//localhost/insert/index.php"  style="color&#58;#000000; text-decoration&#58;none;">.MusicDatabase.</a>
</p>
</head>
<a href="http&#58;//localhost/insert/ins.php">Add</a> |
<a href="http&#58;//localhost/insert/index.php">Index</a> 

<form action = "search21.php" method = "post" name = "search">
          <div align="center"><br>
            &nbsp;&nbsp;
            <select name="searchtype">
              <option value  = "artist">Search By Artist
              <option value  = "album">Search By Album
			  <option value = "genre">Search By Genre
			  
            </select>
            <br>
            &nbsp;&nbsp;
            <input name =  "searchterm" type = text>
            <br>
            &nbsp;&nbsp;
            <input type = submit  value = "iSearch">
        </form>

</body>
</html>

Apostolis_38
Δημοσιεύσεις: 1969
Εγγραφή: 14 Φεβ 2008 16:20
Τοποθεσία: ΠΕΙΡΑΙΑΣ

search engine & pagination

Δημοσίευση από Apostolis_38 » 19 Ιαν 2010 18:35

Εφόσον τα αποτελέσματα στα φέρνει βάσει αναζήτησης τότε και για τις επόμενες σελίδες πρέπει να περαστούν τα κριτήρια της αναζήτησης.

Κάτι σαν:

Κώδικας: Επιλογή όλων

$pagination.= "<a href=\"$targetpage?page=$lpm1&searchtype=$searchtype\">$lpm1</a>";
Υπάρχει κι ένα παρόμοιο topic όπου είχα κι εγώ ίδιο πρόβλημα και με βοήθησαν τα παιδιά.
Κοίτα αυτό http://www.freestuff.gr/forums/viewtopic.php?t=38949 και κυρίως εκεί που λέει ο vassilism για τα keywords. Πιστεύω πως είναι αυτό που ψάχνεις.

kilikeio
Δημοσιεύσεις: 52
Εγγραφή: 08 Ιούλ 2008 16:53

search engine & pagination

Δημοσίευση από kilikeio » 19 Ιαν 2010 19:39

ευχαριστω για την απαντηση. το κοιταξα το thead που εστειλες αλλα δεν μπορω να το ταιριαξω με το δικο μου.
το καταλαβα που ειναι το λαθος. πρεπει να περναει και στις επομενες σελιδες το αποτελεσμα. αλλα ειμαι αρχαριος γενικα και κολλαω στην συνταξη. και τωρα στον κωδικα δεν ξερω πως ακριβως να το κανω.τη συνταξη εννοω. επειδη επειγει οποιος μπορει να βοηθησει και να με κατατοπισει τι πρεπει να αλλαξω. Thnx εκ των προτερων.

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

search engine & pagination

Δημοσίευση από fafos » 19 Ιαν 2010 20:46

kilikeio έγραψε:ευχαριστω για την απαντηση. το κοιταξα το thead που εστειλες αλλα δεν μπορω να το ταιριαξω με το δικο μου.
το καταλαβα που ειναι το λαθος. πρεπει να περναει και στις επομενες σελιδες το αποτελεσμα. αλλα ειμαι αρχαριος γενικα και κολλαω στην συνταξη. και τωρα στον κωδικα δεν ξερω πως ακριβως να το κανω.τη συνταξη εννοω. επειδη επειγει οποιος μπορει να βοηθησει και να με κατατοπισει τι πρεπει να αλλαξω. Thnx εκ των προτερων.
to lathos ksekina apo thn forma opou exeis method=post.. thelei get.. meta sta paging links dineis kai ta get..p.x.:

Κώδικας: Επιλογή όλων

 $pagination.= "<a href="$targetpage?page=$prev&searchtype=$_GET&#91;searchtype&#93;&searchterm=$_GET&#91;searchterm&#93;">« previous</a>"; 
auta prepei na ta exeis se ola sou ta links ( &searchtype=$_GET[searchtype]&searchterm=$_GET[searchterm] )
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

kilikeio
Δημοσιεύσεις: 52
Εγγραφή: 08 Ιούλ 2008 16:53

search engine & pagination

Δημοσίευση από kilikeio » 20 Ιαν 2010 16:58

δοκιμασα τις αλλαγες αλλα τιποτα :(
η εντολη $sql = "SELECT*FROM $tbl_name WHERE ".$searchtype." LIKE '%".$searchterm."%' LIMIT $start, $limit"; ειναι οκ στην συνταξη?? γιατι το error Μου το πεταει γιαυτην συγκεκριμενα.

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

search engine & pagination

Δημοσίευση από fafos » 20 Ιαν 2010 17:13

Κώδικας: Επιλογή όλων

$sql = "SELECT * FROM $tbl_name WHERE $searchtype LIKE '%$searchterm%' LIMIT $start, $limit"; 
vale apo kato ena echo $sql; na deis ti dinei
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

kilikeio
Δημοσιεύσεις: 52
Εγγραφή: 08 Ιούλ 2008 16:53

search engine & pagination

Δημοσίευση από kilikeio » 20 Ιαν 2010 17:26

βγαζει SELECT*FROM persons WHERE LIKE '%%' LIMIT 0, 10

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

search engine & pagination

Δημοσίευση από fafos » 20 Ιαν 2010 17:32

kilikeio έγραψε:βγαζει SELECT*FROM persons WHERE LIKE '%%' LIMIT 0, 10
thn forma thn ekane get? an nai:
$searchtype=$_GET["searchtype"];
$searchterm=addslashes($_GET["searchterm"]);
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

kilikeio
Δημοσιεύσεις: 52
Εγγραφή: 08 Ιούλ 2008 16:53

search engine & pagination

Δημοσίευση από kilikeio » 20 Ιαν 2010 17:42

δουλεψε οκ απλα μου βγαζει 7 σελιδες στο pagination στανταρ σε οτι search και να κανω.
ευχαριστω πολυ παντως

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

search engine & pagination

Δημοσίευση από fafos » 20 Ιαν 2010 18:30

dhladh ena tetoio: SELECT*FROM persons WHERE artist LIKE '%kapoia leksi%' LIMIT 0, 10

sou gyrnaei ola ta apotelesmata?
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

kilikeio
Δημοσιεύσεις: 52
Εγγραφή: 08 Ιούλ 2008 16:53

search engine & pagination

Δημοσίευση από kilikeio » 20 Ιαν 2010 18:40

afto pou katalava einai oti mou girnaei oses selides metraei mesa stin vasi dedomenon aneksartita apo to search. gia na to eksigiso kalitera: fernei ta apotelesmata pou exo kanei search kai oxi parapano alla mou epistrefei epipleon kenes selides giati poli apla me tin etnoli
$query = "SELECT COUNT(*) as num FROM $tbl_name";
metraei ola osa exo apothikefsei mesa stin vasi. elpizo na egina katanoitos

kai meta to $query einai oi entoles:
$total_pages = mysql_fetch_array(mysql_query($query));
$total_pages = $total_pages[num];

pou epistrefoun selides analogos ta stoixeia pou exo mesa stin vasi kai oxi analaogos ta stoixeia pou vriskei sto search. ta stoixeia pou vriskei sto search mou ta epistrefei kanonika opos prepei apla mou fernei kai epipleon kenes selides. elpizo na min ta leo mperdemena :o :o
Τελευταία επεξεργασία από το μέλος kilikeio την 20 Ιαν 2010 18:47, έχει επεξεργασθεί 1 φορά συνολικά.

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

search engine & pagination

Δημοσίευση από fafos » 20 Ιαν 2010 18:42

parathse to.. des auto pou exo steilei edo: http://www.freestuff.gr/forums/viewtopic.php?t=46390

einai poly pio eukolo kai to parametropoieis aneta..
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

kilikeio
Δημοσιεύσεις: 52
Εγγραφή: 08 Ιούλ 2008 16:53

search engine & pagination

Δημοσίευση από kilikeio » 20 Ιαν 2010 18:56

thnx makari na to eixa vrei noritera afto alla tora mou einai diskolo na allakso olo ton kodika giati to xrisomopoio kai allou to diko mou paging kai thelo na iparxei mia omoiomorfia sti selida. paratheto kai ton kodika:

Κώδικας: Επιλογή όλων

<?php
	$con = mysql_connect&#40;"localhost","root",""&#41;;
	if &#40;!$con&#41; &#123; die&#40;'Could not connect&#58; ' . mysql_error&#40;&#41;&#41;; &#125;
	mysql_select_db&#40;"my_db", $con&#41;;

	$tbl_name="persons";		//your table name
	// How many adjacent pages should be shown on each side?
	$adjacents = 3;
	
	/* 
	   First get total number of rows in data table. 
	   If you have a WHERE clause in your query, make sure you mirror it here.
	*/
	&#91;code&#93;$query = "SELECT COUNT&#40;*&#41; as num FROM $tbl_name";
	$total_pages = mysql_fetch_array&#40;mysql_query&#40;$query&#41;&#41;;
	$total_pages = $total_pages&#91;num&#93;;&#91;/code&#93;
	
	/* Setup vars for query. */
	$targetpage = "search21.php"; 	//your file name  &#40;the name of this file&#41;
	$limit = 10; 								//how many items to show per page
	$page = $_GET&#91;'page'&#93;;
	if&#40;$page&#41; 
		$start = &#40;$page - 1&#41; * $limit; 			//first item to display on this page
	else
		$start = 0;								//if no page var is given, set start to 0
	
	/* Get data. */

	
	/* Setup page vars for display. */
	if &#40;$page == 0&#41; $page = 1;					//if no page var is given, default to 1.
	$prev = $page - 1;							//previous page is page - 1
	$next = $page + 1;							//next page is page + 1
	$lastpage = ceil&#40;$total_pages/$limit&#41;;		//lastpage is = total pages / items per page, rounded up.
	$lpm1 = $lastpage - 1;						//last page minus 1
	
	/* 
		Now we apply our rules and draw the pagination object. 
		We're actually saving the code to a variable in case we want to draw it more than once.
	*/
	$pagination = "";
	if&#40;$lastpage > 1&#41;
	&#123;	
		$pagination .= "<div class=\"pagination\">";
		//previous button
		if &#40;$page > 1&#41; 
		 $pagination.= "<a href=\"$targetpage?page=$prev&searchtype=$_GET&#91;searchtype&#93;&searchterm=$_GET&#91;searchterm&#93;\">&laquo; previous</a>"; 
			
		else
			$pagination.= "<span class=\"disabled\">&laquo; previous</span>";	
		
		//pages	
		if &#40;$lastpage < 7 + &#40;$adjacents * 2&#41;&#41;	//not enough pages to bother breaking it up
		&#123;	
			for &#40;$counter = 1; $counter <= $lastpage; $counter++&#41;
			&#123;
				if &#40;$counter == $page&#41;
					$pagination.= "<span class=\"current\">$counter</span>";
				else
					
					$pagination.="<a href=\"$targetpage?page=$counter&searchtype=$_GET&#91;searchtype&#93;&searchterm=$_GET&#91;searchterm&#93;\">$counter</a>";
			&#125;
		&#125;
		elseif&#40;$lastpage > 5 + &#40;$adjacents * 2&#41;&#41;	//enough pages to hide some
		&#123;
			//close to beginning; only hide later pages
			if&#40;$page < 1 + &#40;$adjacents * 2&#41;&#41;		
			&#123;
				for &#40;$counter = 1; $counter < 4 + &#40;$adjacents * 2&#41;; $counter++&#41;
				&#123;
					if &#40;$counter == $page&#41;
						$pagination.= "<span class=\"current\">$counter</span>";
					else
							
						$pagination.="<a href=\"$targetpage?page=$counter&searchtype=$_GET&#91;searchtype&#93;&searchterm=$_GET&#91;searchterm&#93;\">$counter</a>";
				&#125;
				$pagination.= "...";
				$pagination.="<a href=\"$targetpage?page=$lpm1&searchtype=$_GET&#91;searchtype&#93;&searchterm=$_GET&#91;searchterm&#93;\">$lpm1</a>";	
				$pagination.= "<a href=\"$targetpage?page=$lastpage&searchtype=$_GET&#91;searchtype&#93;&searchterm=$_GET&#91;searchterm&#93;\">$lastpage</a>";
			&#125;
			//in middle; hide some front and some back
			elseif&#40;$lastpage - &#40;$adjacents * 2&#41; > $page && $page > &#40;$adjacents * 2&#41;&#41;
			&#123;
			$pagination.= "<a href=\"$targetpage?page=1&searchtype=$_GET&#91;searchtype&#93;&searchterm=$_GET&#91;searchterm&#93;\">1</a>";
				$pagination.= "<a href=\"$targetpage?page=2&searchtype=$_GET&#91;searchtype&#93;&searchterm=$_GET&#91;searchterm&#93;\">2</a>";
				$pagination.= "...";
				for &#40;$counter = $page - $adjacents; $counter <= $page + $adjacents; $counter++&#41;
				&#123;
					if &#40;$counter == $page&#41;
						$pagination.= "<span class=\"current\">$counter</span>";
					else
						
						$pagination.="<a href=\"$targetpage?page=$counter&searchtype=$_GET&#91;searchtype&#93;&searchterm=$_GET&#91;searchterm&#93;\">$counter</a>";
				&#125;
				$pagination.= "...";
				
				$pagination.="<a href=\"$targetpage?page=$lpm1&searchtype=$_GET&#91;searchtype&#93;&searchterm=$_GET&#91;searchterm&#93;\">$lpm1</a>";
					
				$pagination.= "<a href=\"$targetpage?page=$lastpage&searchtype=$_GET&#91;searchtype&#93;&searchterm=$_GET&#91;searchterm&#93;\">$lastpage</a>";
			&#125;
			//close to end; only hide early pages
			else
			&#123;
				
				$pagination.= "<a href=\"$targetpage?page=1&searchtype=$_GET&#91;searchtype&#93;&searchterm=$_GET&#91;searchterm&#93;\">1</a>";
				
				$pagination.= "<a href=\"$targetpage?page=2&searchtype=$_GET&#91;searchtype&#93;&searchterm=$_GET&#91;searchterm&#93;\">2</a>";
				$pagination.= "...";
				for &#40;$counter = $lastpage - &#40;2 + &#40;$adjacents * 2&#41;&#41;; $counter <= $lastpage; $counter++&#41;
				&#123;
					if &#40;$counter == $page&#41;
						$pagination.= "<span class=\"current\">$counter</span>";
					else
							
						$pagination.="<a href=\"$targetpage?page=$counter&searchtype=$_GET&#91;searchtype&#93;&searchterm=$_GET&#91;searchterm&#93;\">$counter</a>";
				&#125;
			&#125;
		&#125;
		
		//next button
		if &#40;$page < $counter - 1&#41; 
			
			 $pagination.= "<a href=\"$targetpage?page=$next&searchtype=$_GET&#91;searchtype&#93;&searchterm=$_GET&#91;searchterm&#93;\"> next &raquo</a>"; 
		else
			$pagination.= "<span class=\"disabled\">next &raquo</span>"; //to raquo einai gia ta velakia pou emfanizontai dipla sto next
		$pagination.= "</div>\n";		
	&#125;
?>

	<?php
	$searchtype=$_GET&#91;"searchtype"&#93;;
$searchterm=addslashes&#40;$_GET&#91;"searchterm"&#93;&#41;;

	$sql = "SELECT*FROM $tbl_name WHERE ".$searchtype." LIKE '%".$searchterm."%' LIMIT $start, $limit";
	$result = mysql_query&#40;$sql&#41;;
	
	if&#40;$searchterm==''&#41; &#123;
print "Please go <a href='javascript&#58;history.back&#40;&#41;'>back</a> and enter something"; exit;
&#125; 
Print "<table border=1 align=center cellpadding=3 class=sortable id=sortable_example>";
Print "<tr><th>Link</th><th>Artist</th><th>Album</th><th>Year</th><th>Comments</th><th>Genre</th><th>Date</th></tr>";
		while&#40;$row = mysql_fetch_array&#40;$result&#41;&#41;
		&#123;	
   //the format is $variable = $r&#91;"nameofmysqlcolumn"&#93;;
   //modify these to match your mysql table columns
 
  
//display the row

    Print "<tr>";
    Print "<td><a href=\"".$row&#91;'Link'&#93;."\">Rapidshare.com</a></td>";     //Print "<td><a href=\"".$row&#91;'Link'&#93;."\">".$row&#91;'Link'&#93;."</a></td> ";
	Print "<td>".$row&#91;"Artist"&#93;."</td>";
	Print "<td>".$row&#91;"Album"&#93;."</td>";
	Print "<td>".$row&#91;"Year"&#93;."</td>";
	Print "<td>".$row&#91;"Comments"&#93;."</td>"; 
	Print "<td>".$row&#91;"Genre"&#93;."</td>";
	Print "<td>".$row&#91;'submitdate'&#93;."</td>";
	Print "<td><a href=\"edit.php?id=".$row&#91;'id'&#93;."\">Edit</a></td> ";
	Print "</tr>";
   
  
&#125;

Print "</table>";
mysql_close&#40;$con&#41;;
?>

<?php echo $pagination?>

</body>
</html>
aftes oi treis entoles einai aftes pou anefera proigoumenos:

Κώδικας: Επιλογή όλων

$query = "SELECT COUNT&#40;*&#41; as num FROM $tbl_name";
	$total_pages = mysql_fetch_array&#40;mysql_query&#40;$query&#41;&#41;;
	$total_pages = $total_pages&#91;num&#93;;
entaksei den einai kai toso provlima afto pou leo giati mou ta epistrefei ta apotelesmata pou zitao. apla exei kai tis kenes selides.
thnx kai pali gai tin boitheia fafos

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

search engine & pagination

Δημοσίευση από fafos » 20 Ιαν 2010 19:39

sto grafei sta sxolia:

If you have a WHERE clause in your query, make sure you mirror it here.

ta where pou exeis sto $sql prepei na mpoun kai sto $query...

epishs.. asfalise ta GETS... p.x.:

Κώδικας: Επιλογή όλων

$searchtype = mysql_real_escape_string&#40;$_GET&#91;searchtype&#93;&#41;;

Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

kilikeio
Δημοσιεύσεις: 52
Εγγραφή: 08 Ιούλ 2008 16:53

search engine & pagination

Δημοσίευση από kilikeio » 20 Ιαν 2010 20:28

ok doulepse mia xara!!efxaristo fafos!!!!

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 2 επισκέπτες