kan någon säga varför inte detta fungerar när jag ska söka i databasen, får inga resultat
<form action="/search/default.asp" method="post">
<input type="text" name="sok" value="">
<input type="submit">
</form>
<%Set sokRS=objConn.Execute("Select username, userID From tblUsers where username LIKE '%" & sok & "%'" )%>
<%
if sokRS.EOF then
response.write "Inga poster kunde hittas"
else
do until sokRS.EOF
response.write ""& username &" <br>"
sokRS.MoveNext
Loop
end if
%>
@ndersMedlem sedan juni 200032 969 inlägg Du sätter aldrig variabeln sok till något, exempelvis:
sok = replace(request.form("sok"), "'", "''")
Edit: fast visserligen borde du få träff på alla poster med den kod du har nu.
Prova alltid att skriva ut SQL-frågan, så ser du om det är något värde som saknas.
Mvh
<%Set sokRS=objConn.Execute("Select username, userID From tblUsers where username LIKE '%" & username & "%'" )%>
<form action="/search/default.asp" method="post">
<input type="text" name="sok" value="">
<input type="submit">
</form>
<%sokUsername = replace(request.form("sok"), "'", "''")%>
<%
if sokRS.EOF then
response.write "Inga poster kunde hittas"
else
do until sokRS.EOF
response.write ""& sokUsername &" <br>"
sokRS.MoveNext
Loop
end if
%>
Detta var inte heller riktigt rätt :-D
@ndersMedlem sedan juni 200032 969 inlägg Nä, du kan inte ställa SQL-frågan innan du skapat variabeln. (Dessutom skapar du en variabel som heter sokUsername, men i SQL-frågan använder du username?)
Visst är det så att formuläret postar till samma sida?
<form action="/search/default.asp" method="post">
<input type="text" name="sok" value="">
<input type="submit">
</form>
<%sokUsername = replace(request.form("sok"), "'", "''")%>
<%Set sokRS=objConn.Execute("Select username From tblUsers where username LIKE '%" & sokUsername & "%'" )%>
<%
if sokRS.EOF then
response.write "Inga poster kunde hittas"
else
do until sokRS.EOF
response.write ""& sokUsername &" <br>"
sokRS.MoveNext
Loop
end if
%>
Hur får man nu sql-en att skriva ut hela namnet på matchande användare
@ndersMedlem sedan juni 200032 969 inlägg do until sokRS.EOF
response.write sokRS("username") &" <br>"
sokRS.MoveNext
Loop
Mvh
vet inte vad jag gjorde, först funka det, nu visar den alla poster innan man hinner söka
@ndersMedlem sedan juni 200032 969 inlägg Du får sätta en ifsats runt sökningen, så den bara körs om man har postat formuläret.
sokUsername = replace(request.form("sok"), "'", "''")
if sokUsername <> "" then
Set sokRS=objConn.Execute("Select username From tblUsers where username LIKE '%" & sokUsername & "%'" )
if sokRS.EOF then
response.write "Inga poster kunde hittas"
else
do until sokRS.EOF
response.write ""& sokUsername &" <br>"
sokRS.MoveNext
Loop
end if
end if
%>
Mvh
Tack vare din hjälp @nders så kan jag nu söka efter användarnamn, man eller kvinna :-)
@ndersMedlem sedan juni 200032 969 inlägg Härligt!
Lycka till med resten! :bire
funderar på att klistra in koden här om nån annan vill veta hur man gör, vad tycker du?