| | | | |
| | |
| PHP Code Flüsterer Registriert seit: 21.08.2005 Beiträge: 4682 PHP-Kenntnisse: Fortgeschritten | |
| | |
| Erfahrener Benutzer Registriert seit: 21.05.2008
Beiträge: 9.937
![]() | Genau, geh das ganze erstmal nicht so kompliziert und mit 3 Feldern an. Baue dir erstmal ein Skript, dass ein Wort in einem Feld findet. WHERE spalte1 LIKE '%suchbegriff1%' Und jetzt erweiter dein Skript schrittweise darum, mehrere Suchbegriffe eingeben zu können WHERE spalte1 LIKE '%suchbegriff1%' OR spalte1 LIKE '%suchbegriff2%' Am Ende solltest du dann das Skript haben für eine variable Anzahl Spalten und eine variable Anzahl Suchbegriffe. Hier könnten dir Schleifen und/oder Arrays (explode zum Splitten der Suchbegriffe und implode (das Gegenstück) zum Zusammensetzen des SQL-Befehls) helfen. Vielleicht hilft dir noch der Hinweis, auch so einen SQL-Befehl nutzen zu können WHERE 0 OR spalte1 LIKE '%suchbegriff1%' OR spalte1 LIKE '%suchbegriff2%' ..wobei die farbigen Blöcke gleich und damit leichter mit Schleifen zu erstellen sind. Natürlich gibts aber auch andere Möglichkeiten, die ein "0 OR" (null oder) überflüßig machen. |
| |
| | ||
| Erfahrener Benutzer | Danke für die Antworten. Ich habe jetzt MATCH genommen. Wenn man aber mehrere Suchwörter eingibt. dann werden alle einträge gezeigt, die dieses suchwort beinhalten Ich verstehe das mit Schleife/Arrays, explode/implode. Kann jetzt aber nicht nachvollziehen, wie es ausgeführt werden soll. Also meißt werden die Suchwörter mit Komma oder mit Leerzeichen getrennt. Wenn ich das nun mit explode in Einzelteile gepackt habe, was dann? Sorry, da komme ich jetzt nicht mit. Zitat:
Was ist der Unteschied zw. MATCH und LIKE, was würdet ihr empfehlen: Anders gefragt: in welchen Fällen greift man auf welche Funktion zurück? | |
| |
| | |||
| Erfahrener Benutzer Registriert seit: 21.05.2008
Beiträge: 9.937
![]() | Zitat:
- Das ist eben ein Suchbegriff, den du einsetzen muss. Natürlich kannst du dafür auch einen POST-String benutzen. Musst ihn eben nach den Regeln der String-Erstellung einbauen. - Schau doch ins Manual. MATCH AGAINST kann soweit ich weiß nur als Volltext indizierte Felder durchsuchen und erstellt zudem eine Art Relevanz-Ranking. % ist eine Wildcard bei LIKE-Bedingungen. LIKE "%eter" trifft "Peter" und "Übeltaeter". Mehr dazu im Manual. | ||
| |
| | ||
| Erfahrener Benutzer | Danke, wenn du mir noch den letzten Schups gibst, dann könnte ich die Arbeit endlich abschließen. Bin soweit gekommen. Code: $result = mysql_query("SELECT * FROM pboerse_firmen WHERE MATCH (titel,inhalt) AGAINST ('".$_POST["suchwort"]."') ORDER BY ".$_POST["sort"]." ".$_POST["sort_dir"]." LIMIT ".$_POST["anzahl"]."");
Zitat:
es existieren noch 2 weitere Felder (text (ort) und select (branche)) wenn man diese leer lässt, dann sollen diese ignoriert werden, anderenfalls soll nach einem bestimmten wort bei "ort" gesucht werden und bei "branche" - einfach den value mit dem wert in der spalte vergleichen. | |
| |
| | |
| Erfahrener Benutzer | Danke, das habe ich komplett vegessen Ich habe das Gefühl, dass mein Vorhaben, die Suche mit einem SQL-Ausdruck einzuschränken nicht möglich ist. Liege ich da falsch? Bei AND müssen alle Felder ausgefüllt werden und bei OR wird nur ein von diesen berücksichtigt. Muss ich kontrolieren, welches Feld aufgeüllt wurde und entsprechend einen neuen SQL-Befehl augeben? Oder lässt sich das doch in einem Ausdruck formulieren? Code: $result = mysql_query("SELECT * FROM pboerse_firmen WHERE MATCH (titel,inhalt) AGAINST ('".$_POST["suchwort"]."') AND ort='".$_POST["suchort"]."' ORDER BY ".$_POST["sort"]." ".$_POST["sort_dir"]." LIMIT ".$_POST["anzahl"]."") or die(mysql_error());
|
| |
| | |
| Erfahrener Benutzer | Also. Die Situation ist folgende: Ich habe zwei Textfelder und ein Auswahlfeld (select) Suchwort: _____________ Suchort: ______________ Branche: ______________ - Gibt man ein Suchwort ein, so werden alle Einträge gelistet, die dieses Wort enthalten. - Sollte man zusätzlich den Suchort eingeben, dann müssen logischerweise nur die Einträge gelistet werden, die das Suchwort beinhalten und mit dem Suchort übereinstimmten. - Das gleiche gilt für die Branche im Bezug auf das Suchwort. - Und wenn man alle drei Felder ausgefüllt/gewählt hat, muss eine entsprechende Einschränkung erfolgen. Also, da der Suchort und die Branche optionale Felder sind, weiß ich nicht wie der SQL-Befehl aussehen muss. |
| |
| Themen-Optionen | |
| Thema bewerten | |
|
|
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Mysql Server Einstellunen Optimieren | pchero | Datenbanken | 3 | 01.05.2007 19:50 |
| tutorial mysql klassen im oop projekt | phpdummi | Beitragsarchiv | 4 | 17.01.2007 20:17 |
| Gutes PHP & MySQL Tutorial | nicobischof | PHP Tipps 2006 | 1 | 30.04.2006 18:59 |
| MySQL Suchfunktion | winki | Datenbanken | 8 | 15.04.2006 12:54 |
| MySQL Tutorial anhand eines Newssystems? | Datenbanken | 12 | 13.03.2006 16:50 | |
| Suchfunktion in MySQL | FireFIghter | PHP Tipps 2006 | 5 | 10.01.2006 13:29 |
| [Erledigt] Gutes MySQL Tutorial | Datenbanken | 2 | 01.12.2005 17:11 | |
| Suche gutes mySQL Tutorial | imported_FlasH | Datenbanken | 1 | 26.10.2005 19:29 |
| Suchfunktion für die Homepage? Was muss der Anfänger wissen? | PHP Tipps 2005-2 | 1 | 11.10.2005 18:39 | |
| Suche Tipps für Persormance-Steigerung (Geld für Nützliches) | Beitragsarchiv | 18 | 16.08.2005 10:57 | |
| MySql error -- Suchfunktion mit mehreren Begriffen | PHP Tipps 2005 | 1 | 12.04.2005 21:06 | |
| Ein gutes DEU. Tutorial zur Installation von MYsql... | Datenbanken | 2 | 30.01.2005 17:44 | |
| Bloody n00b braucht Hilfe - Suchfunktion per PHP und MySQL | PHP Tipps 2004 | 2 | 04.08.2004 22:28 | |
| [Erledigt] PHP5 &a m p; MySQL | Datenbanken | 5 | 01.08.2004 05:47 | |
| [Erledigt] Mysql Datenbank durchsuchen - Tutorial | Datenbanken | 5 | 10.07.2004 13:32 | |
| Besucher kamen über folgende Suchanfragen bei Google auf diese Seite |
| php mysql suchfunktion, php suchfunktion tutorial, suchfunktion php mysql, php suchfunktion mysql, php mysql suchfunktion tutorial, mysql php suchfunktion, suchfunktion tutorial, php sql suchfunktion, suchfunktion php tutorial, php mysql suche tutorial, mysql suchfunktion tutorial, suchfunktion mysql php, suchfunktion sql php, tutorial suchfunktion, php tutorial suchfunktion, mysql suchfunktion php, http://www.php.de/php-tipps-2006/35700-php-mysql-suchfunktion-tutorial.html, php mysql suche, php mysql select suchfunktion, suchfunktion mit php mysql |

Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.