Just nu i M3-nätverket
Gå till innehåll

Hjälp med sökscript


jompa tompa

Rekommendera Poster

Om du får sökordet via querystring lär du lägga med sökordet i dina sidlänkar...

 

Sedan rekommenderar jag att du börjat ta för vana att använda $_POST och $_GET variablerna istället för att ropa på queryvariabeln direkt. Dels för säkerhet och dels för att förtydliga var du får variabeln ifrån.

 

I ditt fall $_GET["sokvag"]

 

 

 

Länk till kommentar
Dela på andra webbplatser

På de ställen där du länkar vidare till nästa söksida lägger du bara till $sokord variabeln i querystringen:

 

echo "<a href=\"$PHP_SELF?sida=$nysida&sokord=$sokord\"> >> </a><p>\n";

 

Du bör oxå göra så som JonasGauffin skriver, alltså att använda $_GET eller $_POST beroende på vilket av de du använder. Jag hade skickat sökordet i querystringen, då ska du använda dig av $_GET["sokord"]

 

Länk till kommentar
Dela på andra webbplatser

<?

$pagecnt = 15;

if (isset($_GET["page"]))

$curpage = $_GET["page"]

else

$curpage = 0;

 

//Bygg ihop en sqlsats, inkludera sida om den finns med i querystring

$sql = "select * from info WHERE innehall LIKE '%$sokord%'";

If ($curpage <> 0) $sql .= " LIMIT ".$curpage.", ".$pagecnt;

if (!$res_id = mysql_query($sql)) die("Din sqlsträng var felaktigt");

 

//titta ifall sökningen gav något resultat

if ($rows = mysql_num_rows($res_id)) {

echo "Din sökning på <b>$sokord</b> gav $antal träff<br><br>";

} else {

 

//loopa igenom alla rader

while($row = mysql_fetch_array($res_id)) {

 

//effektivera o ta strtoupper på samma rad.

$titel = strtoupper($row["titel"]);

 

//Använd replace för sånna här enkla ersättningar. effektivare.

$text = str_replace(str_replace($row["innehall"],"<b>","</b>"),"<td>"," ");

$text = str_replace(str_replace($text,"<tr>",". "),"<ul>"," ");

$text = str_replace($text,"<lu>",". ");

$text = strip_tags($text, '<b><i><u><img><ul><li>');

 

$url = $row;

 

//ineffektiv

// $match = "/s?(([^\.\?\!\:]*?)$sokord([^\.\?\!\:]*?)[\.\?\!\:])/i";

// preg_match($match, $text, $m);

$text = str_replace($text, $sokord, "<font color='red'><b>".$sokord."</b></font>");

 

 

if

//lista sidor

if ($curpage != 0) echo "<a href=\"$PHP_SELF?page=".($curpage - 1)."\"> << </a> &nbsp; \n";

for ($a = 0; $a <= $rows; $a += $pagecnt)

{

echo "<a href=\"$PHP_SELF?sida=".intval($a/$pagecnt)+1."\"> >> </a><p>\n";

}

//denna kommer nog inte funka så bra

if ($curpage < ($rows - $rowcnt)) echo "<a href=\"$PHP_SELF?page=".($curpage + 1)."\"> >> </a> &nbsp; \n";

 

}//while loop

 

?>

[inlägget ändrat 2002-01-29 10:47:11 av JonasGauffin]

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...