Eine Tabellenspalte mit zwei Begriffen abfragen
Hallo,
wie oben schon beschrieben, möchte ich eine Tabellenspalte mit zwei Begriffen abfragen. Das kann man sich so vorstellen: Ich habe eine Spalte "Vorname". Dann mache ich ein "POST", wo in dem Feld "Hans Müller" steht (also der User will "Hans Müller" in beispielsweise einem Telefonbuch finden). Bei mir zeigt er dann aber überhaupt nichts an. PHP-Code:
Ich bitte um Hilfe. Vielen Dank für jede Antwort. |
AW: Eine Tabellenspalte mit zwei Begriffen abfragen
Vielleicht ist Müller ja ein Nachnahme?
Außerdem ist/scheint dein Code anfällig für SQL Injections. |
AW: Eine Tabellenspalte mit zwei Begriffen abfragen
Hallo,
danke für die Antwort. Er sollte doch aber trotzdem alle Vorname ausgeben, die mit "Hans" anfangen. Manche Leute haben auch einen Nachnamen, die einige Personen als Vornamen haben. //edit: Sicherheit steht erstmal nicht im Vordergrund "SELECT vorname FROM tabellenname WHERE vorname LIKE '%$postvariable%' OR nachname LIKE '%$postvariable%' " So zeigt er auch nichts an. |
AW: Eine Tabellenspalte mit zwei Begriffen abfragen
Zitat:
Wenn in $postvariable "Hans Müller" steht, dann sucht das Programm auch danach. Deine % Platzhalter beziehen sich auf alle Zeichen vor und nach der Zeichenkette "Hans Müller". Gefunden werden würde zB. "Fritz-Hans Müller-Motzenbacher". Nicht gefunden wird "Hans Meier", weil "Hans Meier" != "Hans Müller" ist. btw: mit den Umlauten wirst Du noch Probleme haben, falls Charset und Collation der Datenbank/Tabelle nicht mit dem Charset des Formulars übereinstimmt. |
AW: Eine Tabellenspalte mit zwei Begriffen abfragen
Wie soll ich demnach einen Platzhalter einbauen?
|
AW: Eine Tabellenspalte mit zwei Begriffen abfragen
Erstmal solltest du Vorname und Nachname trennen.
|
AW: Eine Tabellenspalte mit zwei Begriffen abfragen
Zitat:
Beachte dabei folgendes: 1. verwende mindestens die Spalten Vorname und Nachname 2. beachte, daß nicht sicher ist, ob Doppelnamen mit nem Bindestrich verbunden sind. Beispiele: Rainer Maria Rilke oder Hans-Jürgen Müller 3. beachte auch, daß alte Adelstitel heute Bestandteil des Nachnamens sind. Beispiele: Otto Graf Lambsdorf, Jürgen in der Au 4. Die Amis haben zT. nen Mittelnamen und die Russen haben den Vatersnamen an zweiter Position. Beispiele: John Fitzgerald Kennedy, Iwan Iwanowitsch Iwanow 5. im asiatischen Raum sind Vor- und Nachname vertauscht. usw. Beachte auch, daß Titel (Dr., Prof. usw) mit zum Namen gehören. Beispiel: Dr. Fritz Müller bzw. Dr. Müller |
AW: Eine Tabellenspalte mit zwei Begriffen abfragen
Zitat:
Ich bräuchte einfach mal eine Beispiel-SQL-Abfrage. Kann mir da wer behilflich sein? Zwei Spalten: Vorname und Nachname Gebe über eine Textbox "Hans Müller" ein. Bei der Ausgabe sollen dann nur die Datensätze angezeigt werden, die "Hans Müller" wirklich irgendwoe auch nur im Namen haben. Kann ja auch einer einen Doppelnamen haben, dann sollte Beispielsweise "Hans Müller-Wohlfahrt" auch angezeigt werden. |
AW: Eine Tabellenspalte mit zwei Begriffen abfragen
Zitat:
Code:
test=*# select * from leute; |
AW: Eine Tabellenspalte mit zwei Begriffen abfragen
Klappt bei mir komischerweise nicht!
Wo hast du das denn getestet?! |
Alle Zeitangaben in WEZ +2. Es ist jetzt 14:10:17 Uhr. |
Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.