Hallo,
habe vor einiger Zeit schonmal hier nachgefragt wegen einer Suchfunktion, die nicht richtig funktionieren wollte. Diese funzt jetzt zwar prima, aber meine Blätterfunktion arbeitet nicht so mit der Suchfunktion zusammen. Da ich ein ziemlicher Neuling in Sachen PHP bin und jeden Tag was Neues dazulerne kann mir vielleicht einer von Euch mir nochmal helfen. Hier mein Code:
echo " <form method=post action='" .$_SERVER['PHP_SELF'] ."'>\n";
echo "<input class= formular name=suche type=text maxlenght=255 size=20 value='".$_POST['suche']."'>\n";
echo "<input class= formular type=submit name=Submit value='Senden'>\n</form>";
$tmp = explode(' ', $_POST['suche']);
foreach ($tmp as $key => $value) {
$tmp[$key] = '+' . $value;
}
/
$suche = implode(' ', $tmp);
$start = 0;
$step = 5;
if (isset($_GET["start"])) {
$start = $_GET["start"];
}
mysql_connect("xyz.de", "xyz", "xyz");
mysql_select_db("xyz");
$sql1 = "SELECT * from `Adressverzeichnis` WHERE MATCH (Name,Vorname) AGAINST ('+$suche')";
$sql2 = "SELECT * from `Adressverzeichnis` WHERE MATCH (Name,Vorname) AGAINST ('+$suche') LIMIT $start, $step";
$result1 = mysql_query($sql1);
$zeilen = mysql_num_rows($result1);
$result2 = mysql_query($sql2);
echo "<br><br>";
echo "<table width=400 height=30 align=center cellpadding=10 cellspacing=10>" . "<tr>" . "<td>" . "<b>$zeilen Einträge gefunden:</b></td></tr></table><br><br>";
for ($i=0;$zeilen>$i;$i=$i+$step) {
$anf=$i+1;
$end=$i+$step;
if ($end>$zeilen) {
$end=$zeilen;
}
if ($anf==$end) {
echo "[ <a href=\"$_SERVER[PHP_SELF]?start=$i\">$end</a> ]" . " ";
}
else {
echo "[ <a href=\"$_SERVER[PHP_SELF]?start=$i\">$anf-$end</a> ]" . " ";
}
}
while ($row = mysql_fetch_assoc($result2))
{
Habe nämlich die Problematik, dass zwar nach eingegebenem Suchbegriff bei den Links der Blätterfunktion die richtige Anzahl an Suchergebnissen angezeigt wird (zB. 1-5, 6-10 usw.). Wenn ich aber dann z.B. von Seite 1 auf Seite 7 gehen will und 6-10 anklicke, werden auf dieser Seite dann keine Ergebnisse mehr angezeigt und es wird grundsätzlich 0 Ergebnisse angezeigt.
Das heisst, er zählt immer nur auf der ersten Seite richtig. Es muss wohl mit der Suchfunktion zusammenhängen, da vorher das Zählen und die Blätterfunktion eindeutig gingen. Vielleicht kennt jemand das Phänomen und kann mir dabei helfen?!
Das wäre echt super, als Anfänger steht man ja immer wieder vor irgendwelchen Problemen, grrrr...
habe vor einiger Zeit schonmal hier nachgefragt wegen einer Suchfunktion, die nicht richtig funktionieren wollte. Diese funzt jetzt zwar prima, aber meine Blätterfunktion arbeitet nicht so mit der Suchfunktion zusammen. Da ich ein ziemlicher Neuling in Sachen PHP bin und jeden Tag was Neues dazulerne kann mir vielleicht einer von Euch mir nochmal helfen. Hier mein Code:
echo " <form method=post action='" .$_SERVER['PHP_SELF'] ."'>\n";
echo "<input class= formular name=suche type=text maxlenght=255 size=20 value='".$_POST['suche']."'>\n";
echo "<input class= formular type=submit name=Submit value='Senden'>\n</form>";
$tmp = explode(' ', $_POST['suche']);
foreach ($tmp as $key => $value) {
$tmp[$key] = '+' . $value;
}
/
$suche = implode(' ', $tmp);
$start = 0;
$step = 5;
if (isset($_GET["start"])) {
$start = $_GET["start"];
}
mysql_connect("xyz.de", "xyz", "xyz");
mysql_select_db("xyz");
$sql1 = "SELECT * from `Adressverzeichnis` WHERE MATCH (Name,Vorname) AGAINST ('+$suche')";
$sql2 = "SELECT * from `Adressverzeichnis` WHERE MATCH (Name,Vorname) AGAINST ('+$suche') LIMIT $start, $step";
$result1 = mysql_query($sql1);
$zeilen = mysql_num_rows($result1);
$result2 = mysql_query($sql2);
echo "<br><br>";
echo "<table width=400 height=30 align=center cellpadding=10 cellspacing=10>" . "<tr>" . "<td>" . "<b>$zeilen Einträge gefunden:</b></td></tr></table><br><br>";
for ($i=0;$zeilen>$i;$i=$i+$step) {
$anf=$i+1;
$end=$i+$step;
if ($end>$zeilen) {
$end=$zeilen;
}
if ($anf==$end) {
echo "[ <a href=\"$_SERVER[PHP_SELF]?start=$i\">$end</a> ]" . " ";
}
else {
echo "[ <a href=\"$_SERVER[PHP_SELF]?start=$i\">$anf-$end</a> ]" . " ";
}
}
while ($row = mysql_fetch_assoc($result2))
{
Habe nämlich die Problematik, dass zwar nach eingegebenem Suchbegriff bei den Links der Blätterfunktion die richtige Anzahl an Suchergebnissen angezeigt wird (zB. 1-5, 6-10 usw.). Wenn ich aber dann z.B. von Seite 1 auf Seite 7 gehen will und 6-10 anklicke, werden auf dieser Seite dann keine Ergebnisse mehr angezeigt und es wird grundsätzlich 0 Ergebnisse angezeigt.
Das heisst, er zählt immer nur auf der ersten Seite richtig. Es muss wohl mit der Suchfunktion zusammenhängen, da vorher das Zählen und die Blätterfunktion eindeutig gingen. Vielleicht kennt jemand das Phänomen und kann mir dabei helfen?!
Das wäre echt super, als Anfänger steht man ja immer wieder vor irgendwelchen Problemen, grrrr...
Kommentar