Wie kann ich die kombinieren 2 Spalten in der sql-Tabelle die Suche nach vollständigen Namen
Ich habe eine mySQL Datenbank mit einer FirstName-und LastName-Spalte, und jetzt habe ich eine Suchanfrage die Suche nach Nachnamen, und Wenn die Nachnamen übereinstimmen Sie sind im Klartext auf dem Bildschirm zusammen mit dem Vorname aus der Reihe, Nun ist das große, was ich wie zu erfahren ist, wie kann ein stellen Sie die Abfrage-Suche für FullNames, die eingegeben werden in das input-Feld, halten Sie im Verstand, dass ich nicht eine FullName Spalte der vollständige name wird sein, was der Benutzer eingibt, unten wird ein Beispiel von dem, was ich derzeit habe zu arbeiten! Danke.
if(isset($_GET['name'])){
$raw_name=$_GET['name'];
if(preg_match("/[A-Z | a-z]+/", $raw_name)){
$name=$raw_name;
include "connect.php";
//-query the database table
$sql="SELECT userId, FirstName, LastName FROM residential2 WHERE FirstName='" . $name ."'";
//-run the query against the mysql query function
$result=mysql_query($sql);
//-count results
$numrows=mysql_num_rows($result);
echo "<div align=\"center\">" . $numrows . " results found for " . stripslashes($name) . "</div>";
while($row=mysql_fetch_array($result)){
$FirstName =$row['FirstName'];
$LastName=$row['LastName'];
$userId=$row['userId'];
//-display the result of the array
echo "<ul>\n";
echo "<li>" . "<a href=\"index.php?id=$userId\">" . $LastName . " " .$FirstName . " </a></li>\n";
echo "</ul>";
}
}
else {
echo "<p>Please enter a search query</p>";
}
}
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden
concat()
WHERE FirstName LIKE {split[0]} OR LastName LIKE {split[n]}
Können Sie dies tun:
seine sehr, sehr einfach !!
SELECT * FROM your_table
WO CONCAT( Feld1, '' , filed2 ) like '% $query %'
Haben Sie zur Spaltung der volle name in Vorname und Nachname und dann die Suche entsprechend. Ein code-snippet für Euch:
Hoffe, es hilft.