UrMeMedlem sedan apr. 2001762 inlägg Jag har en html sida som innehåller följande:
<FORM ACTION="databas4.php" METHOD=GET>
First Name: <INPUT TYPE=TEXT NAME="name">
<INPUT TYPE=SUBMIT VALUE="SEARCH"></FORM>
sedan har jag en php fil som heter databas.php4 denna innehåller:
$result = mysql_query(
"SELECT * FROM TEST WHERE Namn='$name' ");
Men jag kan bara söka på hela namn, om vi säger att det finns en som heter Kalle i databasen så vill jag kunna söka på "kall" och få upp alla namn som innehåller "kall"..
Hur gör jag detta på ett lätt sätt?
SPiNMedlem sedan mars 20007 896 inlägg Du använder s.k. wildcards, %-tecken, och LIKE istället för =.
SQL-satsen borde då se ut så här:
SELECT * FROM TEST WHERE Namn LIKE = '%$name%'
------------------
SPiN, bjorne.w@telia.com
--- Jag ÄR den enda med en britney-cursor! ---
LarsGMedlem sedan dec. 200012 464 inlägg Aha, man använder sig av like t.ex.
-- hitta alla vars namn
-- innehåller kall
SELECT * FROM TEST
WHERE Namn like '%kall%'
-- hitta alla vars namn
-- börjar på kall
select * from test
where name like 'kall%'
man använder % för att matcha ett godtyckligt antal tecken och _ för att matcha ett godtyckligt tecken
------------------
essentitia preter non sans multiplicandum
UrMeMedlem sedan apr. 2001762 inlägg En liten fråga till... om man vill ha fram alla namn när man söker .. går det?
LarsGMedlem sedan dec. 200012 464 inlägg Alla? Det enklaste är väl att utelämna villkoret överhuvudtaget.
select * from test
-- eller om man prompt
-- vill ha ett villkor
select * from test where namn like '%'
------------------
essentitia preter non sans multiplicandum
[Redigerat av LarsG den 05 apr 2001]
ChavezMedlem sedan maj 20001 953 inlägg Hett tips om man vill kolla hur en bra sökfunktion ser ut:
Ladda ner Phorum och kolla in den koden. Ganska komplex och fixar det mesta!
------------------
<A HREF="mailto:chavez@post.netlink.se">Mvh Chavez
</A> UIN: 73975020