[PHP/MySQL] Suchanfrage gibt kein Ergebnis zurück
-
Moin Moin!
Um es vorweg zu sagen: Ich finde den Fehler seit zwei Tagen nicht.
Ich habe eine Formularseite.
Der Inhalt des Textfeldes wird dann an eine *.php Datei weitergeleitet und soll verarbeitet werden. Es sollen dann alle Datensätze, die der Suchanfrage entsprechen aufgelistet werden. Das Problem ist aber, dass überhaupt kein Ergebnis angezigt wird. Ich bekomme zwar die Tabelle mit "Datum" und "Titel", aber mehr auch nicht, obwohl ich einen Suchbegriff verwendet habe, der hundertprozentig vorhanden ist. Ich habe den zu durchsuchenden Tabellen auch mehrmals "Volltext" über phpMyadmin zugewiesen. Außerdem ist meine mysql Version deutlich über 3.23.23 . Bitte helft mir! Anbei der Source der beiden Dateien.Formularseite:
<form action="?page=admin&sub=suche&cat=<? echo $_GET['sub']; ?>&PHPSESSID=<?php echo session_id(); ?>" method="post"> <table> <tr> <td style="background-color:#B2B0B1;" colspan="2"><b>Suche</b></td> </tr> <tr> <td> </td> </tr> <tr> <td align="center" colspan="2"><b>Suche</b> <input type="text" name="searchvalue" size="25" /> <input type="submit" value="›" name="submitsearch"></td> </tr> <tr> <td> </td> </tr> <tr> <td colspan="2"><hr /></td> </tr> </table> </form>
PHP Datei zur verarbeitung
<?php echo '<table>'; switch($_GET['cat']) { case "news": $query2 = mysql_query("SELECT realdatum, headline FROM findus_news WHERE MATCH (realdatum, author, headline, text) AGAINST ('".mysql_escape_string($_POST['searchvalue'])."' IN BOOLEAN MODE)"); echo' <tr> <td style="background-color:#B2B0B1;"><b>Datum</b></td> <td style="background-color:#B2B0B1;"><b>Titel</b></b> </tr>'; while($data2 = mysql_fetch_array($query2)); { echo' <tr> <td>'.$data2['realdatum'].'</td> <td>'.$data2['headline'].'</b> </tr>'; } break; } echo '</table>'; ?>
-
Ohne mich jetzt großartig durch deinen Code gelesen zu haben, ist mir folgendes aufgefallen:
Du versuchst, GET und POST gleichzeitig zu verwenden!Das kann so nicht wirklich funktionieren, wie du dir das vorstellst!
-
Reyx schrieb:
Du versuchst, GET und POST gleichzeitig zu verwenden!
Das kann so nicht wirklich funktionieren, wie du dir das vorstellst!Also ich hatte damit bisher keine Probleme
Bin grad in SQL nicht mehr so fit, aber versuche es mal ohne das IN BOOLEAN MODE...
-
Also ich hatte bisher auch keine Probleme damit POSTund GET gleichzeitig anzusprechen.
Die einen Informationen hole ich mit POST über ein Formular und die anderen mit GET aus der URL. Vorsichtshalber werde ich aber mal das Formular mit GET übergeben.Am IN BOOLEAN MODE hat es nicht gelegen (ich habe es ausprobiert). Das ist ja auch nur ein Zusatz, der eine genauere definierung der Suchabfrage zulässt. Die richtige MySQL-Version hätte ich dafür. Ich habs aber erstmal rausgenommen.
-
ALso wenn ich das Formular mit get abschicke komme ich zurück zur index-seite. Das war also die falsche Spur. Zumal ich ja POST und GET schon in anderen Scripts zusammen benutzt habe (ohne Probleme). Der Fehler muss woanders sitzen.
-
Ich hatte mal in 'nem Projekt Probleme damit, zumal dann $_SERVER['REQUEST_METHOD'] nicht mehr verlässlich arbeitet, aber jetzt wo ihr's sagt: Stimmt, das geht
-
Kann mir denn keiner helfen?