Davs derude udviklerer!
Som opfølger på en tidligere post omkring en forrige | næste-funktion til min søgefunktion skrevet i php. (
http://www.udvikleren.dk/PHP/Thread.aspx/6/24100/)Nu er jeg kommet længere end jeg nogensinde har været, men har bare stadig et lille problem, som gør at funktionen ikke virker! - problemet er, at jeg ikke ved hvad, og det er så det jeg håber at nogle af jer kloge hoveder derude kan spotte
Her er min nuværende kode:
<?
if ($_REQUEST['form'] =="ok") {
//Opretter forbindelse her, soeger i tabellen land, under feltet sogeord
mysql_connect("localhost","min-bruger", "*******");
mysql_select_db("min-database");
$sog = mysql_real_escape_string($_REQUEST['sog']);
//Forrige - Næste ting...
$total = mysql_result(mysql_query("SELECT COUNT(id) FROM tabel WHERE sogeord LIKE '%$sog%'"),0);
$pr_side = 6;
$offset = (isset($_GET['offset']) && is_numeric($_GET['offset']) && $_GET['offset'] > 0) ? intval($_GET['offset']) : 0;
//tror det er her den er gal...
if ($offset >= $pr_side) {
$forrige = $offset-$pr_side;
echo "<a href='?offset=".$forrige."&sog=".$sog."'>Forrige</a>";
}else{
echo "Ingen forrige";
}
echo '<br />';
if($total > $offset+$pr_side) {
$naeste = $offset+$pr_side;
echo "<a href='?offset=".$naeste."&sog=".$sog."'>Næste</a>";
}else{
echo "Ingen næste";
}
echo '<br />';
//Selve søgefunktionen..
$query = mysql_query("SELECT * FROM tabel WHERE sogeord LIKE '%$sog%' LIMIT ".$offset.", ".$pr_side);
if(mysql_num_rows($query) > 0){
while ($row = mysql_fetch_array($query)) {
echo $row['Navn'] . "<br>";
echo $row['Kontakt'] . "<br>";
echo $row['Info'] . "<br>";
}
}
}
?>
Når jeg søger, så levere den godt nok de kun de 6 resultater, som bedt om, men i stedet for en forrige - næste knap, bliver der til at starte med skrevet: ingen forrige, og ingen næste. Jeg har i koden refereret til det sted hvor jeg tror fejlen ligger, men jeg skal ikk kunne vide mig sikker på noget. Anyway - 150 UP til den der kan spotte fejlen