-1

サイトのユーザー検索機能をコーディングしていますが、現在、結果は返されますが、完全一致のみが返されます。

現在の SQL クエリは次のとおりです。

SELECT * FROM users WHERE firstname='$term' OR lastname='$term' OR url='$term' OR firstname='".$termExploded[0]."' ORDER BY hits DESC

$term (または関連する場合は $termExploded[0]) の開始が用語と一致するかどうかもチェックするように、このクエリを変更するにはどうすればよいですか?

これは私が自分で思いついたものですが、これは機能しません:

SELECT * FROM users WHERE firstname='$term' LIKE '$term%' OR lastname='$term' LIKE '$term%' OR url='$term' LIKE '$term%' OR firstname='".$termExploded[0]."' LIKE '$term%' ORDER BY hits DESC

事前にどうもありがとう:)

4

1 に答える 1

1
SELECT *
FROM users
WHERE firstname LIKE '$term%' OR
      lastname LIKE '$term%' OR
      url LIKE '$term%' OR
      firstname LIKE '$termExploded[0]%'
ORDER BY hits DESC

明らかに、すべての変数を適切にエスケープすることに注意する必要があります。

于 2012-06-06T06:49:50.710 に答える