webForumDet fria alternativet

sök med text och 2 rollnings list

ASP

30 svar · 439 visningar · startad av cupy · sida 2 av 2

Frågan, av cupy

Jag vill bygga en sök skript med två rollnings list och ett text fält men jag kan inte få in text fälten i sql sats så, hur kan man sätta in en text fält i sök skript? Jag kör nu med två rollnings list, de heter kommun och kategori, såhär ser sql satsen ut: strSQL = "Select Distinctrow From FILES WHERE visa=true AND ANNO = true AND kommun LIKE '%" & Request("kommun") & "%' AND KATEGORI

Läs frågan i sin helhet →
Medlem sedan apr. 2002299 inlägg
#21

jag fått den här med Response .write sql

Select * From FILES WHERE visa = true AND ANNO = false AND kommun LIKE '%%' AND KATEGORI LIKE '%%' OR KATEGORI LIKE '%%' ORDER BY DATUM DESC

och här får ni hela koden

<%  intPage = Request("page") 
kommun = Request("kommun")
kategori = Request("kategori")
ordsiq = Request("ordsiq")
If isNumeric(intPage) = False Or intPage < 1 Then 
intPage = 1 
End If 
 
set objConn = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.RecordSet") 
'kolla dubbel %% i sql sats
strKom = trim(Request.Form("kommun"))
strKat = trim(Request.Form("kategori"))
strFree = trim(Request.Form("ord"))

strSQL = "Select * From FILES WHERE visa = true AND ANNO = false "&_
"AND kommun LIKE '%"& strKom &"%' AND KATEGORI LIKE '%"& strKat &"%' OR KATEGORI LIKE '%"& strFree &"%' ORDER BY DATUM DESC" 
strDSN = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("omni.mdb") 
objConn.open strDSN
rs.Open strSQL, objConn, 3, 3 

If Rs.EOF Then 
Response.Write " DET FINNS INGET "
Response.Write"<br><center>"
Response.Write "<a href='JavaScript:history.back(1)'>Tillbaka</a></center>"
Else
%>

<table style="TABLE-LAYOUT: fixed" align="center" cellspacing="2" cellpadding="0" border="0" WIDTH="600" bgcolor="#ff8C00">
<tr>
	<td align="center"><h1><a href="faq/default.asp">xxx</a></h1></td>
	<td align="center"><h1><a href="kalux.asp">xxxx</a></h1></td>
	<td align="center"><h1><a href="salux.asp">xxx</a></h1></td>
	<td align="center"><h1><a href="insertx.asp">xxx</a></h1></td>
	<td align="center"><h1><a href="hem.asp">xxx</a></h1></td>
</tr></table><h2>

</h2>

<FORM name="kommun" action ="kalux.asp" method="get"> 
<select name="kommun"> 
<font face="verdana, Helvetica" size=2> 
<option value="">-----------ALLA LÄN----------</option>
<option<%If strS = "Blekinge" Then Response.Write " Selected"%>>Blekinge</option> 
		<option<%If strS = "Dalarna" Then Response.Write " Selected"%>>Dalarna</option>
		<option>asv...Gotland</option>
		</select>  
    <%
strS = Request("kategori")
%>          
			  <select name="kategori">
<option value=""> ----- KATEGORIER -----</option>
<option<%If strS = "grundskla" Then Response.Write " Selected"%>>grundskola</option>
<option<%If strS = "högskola" Then Response.Write " Selected"%>>högskola</option>
<option>osv...</option>

<OPTION VALUE=""></option>
</select><p><input type="text" size="30" name="ord">
        
        
<INPUT title="sök" style="BORDER-TOP-WIDTH: 1px;BORDER-LEFT-WIDTH: 
1px; BORDER-LEFT-COLOR: #000000; BORDER-BOTTOM-WIDTH: 1px; BORDER-BOTTOM-COLOR: #000000; 
WIDTH: 342px;  BORDER-TOP-COLOR: #000000; HEIGHT: 22px; BACKGROUND-COLOR: #FFFFFF; 
BORDER-RIGHT-WIDTH: 1px; BORDER-RIGHT-COLOR: #000000" type=submit value=SÖK name=sök size=1119></FORM><br>

<br>
<table style="TABLE-LAYOUT: fixed" align="center" cellspacing="2" cellpadding="0" border="0" WIDTH="560">
<tr valign="bottom">
	<td align=left WIDTH = 100><h4>Datum</h4></td>
	<td align=left WIDTH = 350><h4>&nbsp;&nbsp;&nbsp;Rubrik</h4></td>
	<td align=left WIDTH = 100><h4>Kategori</h4></td>
	
</tr>
</table>

<%

If Not (rs.BOF Or rs.EOF) Then 
rs.PageSize = 10 
rs.AbsolutePage = intPage 
intRecCount = rs.PageSize 
intPageCount = rs.PageCount 
Response.Write "<p><b>Sida " & intPage & " av " & intPageCount & "</b></p>" 
Do While Not rs.EOF And intRecCount > 0 %>
 
<!-- HÄR SKRIVS UT TEXTEN I TABELLEN --> 
<table style="TABLE-LAYOUT: fixed" align="center" cellspacing="0" cellpadding="0" border="0" WIDTH="600">
    <tr style="HEIGHT: 18px" onMouseOver="this.style.backgroundColor='#FFFFFC';" onMouseOut="this.style.backgroundColor='';">
        <td align=left WIDTH = 90><h5><%= FormatDateTime(Rs("datum"),2)%></h5></td><td align=left WIDTH = 15 NOWRAP><%IF trim(Rs("filename") & "") <> "" then%>
<a href="uploaded/<%= replace(Rs("filename"),"_th", "_or") %>"><img src="mpix/pil.gif" border=0 alt="bild" height="9" width="10"></a>
<%end if%></td>
        <td align=left WIDTH = 350 NOWRAP><a href="visa3.asp?id=<%=TRIM(Server.HTMLEncode(Rs("ID"))) %>"><% =TRIM(Server.HTMLEncode(Rs("rubrik")))%></a></td>
       
	    <td align=left WIDTH = 150><h5>&nbsp;&nbsp;<% = TRIM(Server.HTMLEncode(Rs("kategori")))%></h5></td>
        
    </tr><hr Size=1 NOSHADE Color="#FFFCC0">
</table>
<!-- Tabell slut --> 
<% intRecCount = intRecCount - 1 
rs.MoveNext 
Loop 
End If 
rs.Close 
Set rs = Nothing 
Response.Write "<p>Gå till sida " 
For intNum = 1 To intPageCount 
Response.Write "<a href=""kalux.asp?page=" & intNum & "&kommun=" & Server.URLEncode(kommun) & "&kategori=" & Server.URLEncode(kategori) & """>" & intNum & "</a> " 
Next 
End if
%>
Medlem sedan apr. 20003 174 inlägg
#22

Ehh.. Alltså resultatet du fick då du skrev ut sql-satsen. :)
Response.Write strSQL

Medlem sedan apr. 2002299 inlägg
#23

jag fått den här
Select * From FILES WHERE visa = true AND ANNO = false AND kommun LIKE '%%' AND KATEGORI LIKE '%%' OR KATEGORI LIKE '%%' ORDER BY DATUM DESC

Medlem sedan dec. 20002 526 inlägg
#24

[r]
dar ser du, det finns inget varde dar det ar '%%', det betyder att dom inte innehaller nat... skriv ut formularen.... ;)
[/r]

Bor du inte ha lite if sats runt sql:en, beroende vad man valde??? sen varfor har du tva defineringar av request.form???

Kan du forsoka forklara igen exakt vad du vill gora? ar det sa att man ska kunna valja pa om man vill soka pa kommun eller kategori?

Medlem sedan apr. 20003 174 inlägg
#25

Ok, då får du inte med någon formulärdata alls..

Ändra från: <FORM name="kommun" action ="kalux.asp" method="get">

Till: <FORM name="kommun" action ="kalux.asp" method="POST">

..och testa att skriva ut sql-satsen igen.

Medlem sedan apr. 20003 174 inlägg
#26

..sedan måste du också ha med value="värde" i dina dropmenyer, annars kommer det inte med något värde.

Medlem sedan apr. 2002299 inlägg
#27

man väljer kommun eller kategori eller båda och plus skriver in ett sök ord

men den skulle fungera ihopp eller separat . Allstså,, man behöver inte välja allt, bara om man vill, för att nå den bästa resultat

ett ex : vill du se alla skolor i göteborg då väljer du bara göteborg från kommun
eller om du vill se alla högskolor i landet då väljer du bara kategori
eller du vill se en grundskola i göteborg då väljer du båda osv...
plus att du kan skriva in ett valfritt ord som hjälper till att hitta exakt din skola Hoppas nu försår ni vad jag vill göra

Medlem sedan apr. 20003 174 inlägg
#28

Cupy: Mitt tips är att du går igenom koden ordentligt, jag hittar massor av fel.. :l

Medlem sedan apr. 2002299 inlägg
#29

Ursäkta att jag skriver lite sakta men jag hinner inte med alla frågor här. Så
Palle angående value="värde" jag hade problem på början med den och när jag tat väck då börjat funka allt
Nu funkar den här oxå om jag tar väck text fältet då kör jag bara de två rollningslistor,..... men jag vill ha en text fät oxå

Medlem sedan apr. 20003 174 inlägg
#30

Men du kan inte ta bort value="värdet", det måste du ha med om du ska kunna använda det för att söka med..
Det är nämligen just värdet som du använder.

Medlem sedan apr. 2002299 inlägg
#31

Du kan vara rätt men det funkar ändå fast inte med text sökning.

Jag vet inte jag kommer inte ihåg varför men jag var tvungen att ta väck de pga pagin eller annat jag vet inte riktig nu, men hittills funkade allt Det måste fungera på ngt sätt

265 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)