hilfe bei suchformular

mi_tob

Grünschnabel
hallo,
bin neu in asp und möchte ein suchformular machen, dass nach eingabe eines textes ein ergebnis auf der gleichen seite ausgibt.

HTML:
<% 
DIM FEHLER 
Dim strSearchText 
      strSearchText = Request("SearchText") 
If strSearchText = "" Or strSearchText = "*" Then 
      Response.Write "<h5>Geben Sie hier Ihren Suchbegriff ein !</h5>" 
      Else 
            FEHLER = FALSE 
%> 
 
<%
' --- Zusammenstellen des gesamten Verbindungsstrings
Dim strComplete, rs, SQL, objConn

       strComplete = "PROVIDER=MSDASQL;Driver=SQL Server;Server=test_Server;UID=test;PWD=pass;Database=test

' --- Öffnen der Datenbankverbindung
Set objConn = Server.CreateObject("ADODB.Connection")
	objConn.open strComplete
	SQL= "Select * from [v_art] WHERE [artikelnr] LIKE '%" & strSearchText & "%'"
Set rs = Server.CreateObject("ADODB.Recordset") 	
	rs.Open SQL, objConn, 0, 1
%>

<% 
IF rs.BOF Or rs.EOF Then 
      Response.Write "<h5>Keine Übereinstimmung für den Suchbegriff: <font color=""red"">"& strSearchText & "</font> gefunden !</h5>" 
      Else 
            If rs.RecordCount = 1 Then 
                  strAnzahl = "" 
                  strArtikel = " enthält" 
                  Else 
                        strAnzahl = "n " 
                        strArtikel = "en enthalten" 
            End if 
            Response.Write "<h5><font color=""red"">" & rs.RecordCount & "</font> Artikelbeschreibung" & strArtikel & " Ihren Suchbegriff: <font color=""red"">" & strSearchText & "</font></h5>" 
%> 
<table BORDER="1" CELLSPACING="0" cellpadding="0" width="100%"> 
<tr> 
      <td BGCOLOR="#82A7D9" width="5%"><%=Font%><strong>mlfb</strong></font></td> 
</tr> 
<% 
rs.MoveFirst 
do while Not rs.eof 
%> 
<tr> 
      <td><%=rs.Fields("art")%></td> 
</tr> 
<% 
rs.MoveNext 
loop %> 
</table> 
<% 
End if 
%> 

<% 
End if 
%> 
</font> 
<form name="ArtSuche" action="test2.asp" method="GET"> 
      <input type="text" name="SearchText" value=""> 
      <input type="submit" value="Suchen"> 
</form>

die datendankverbindung steht. doch nach der eingabe der artikel kommt kein datensatz als ergebnis. weiß jemand rat? passt der code nicht?

gruß
mi_tob
 
Hi

so auf den ersten Blick:

hier fehlt das schließende Anführungszeichen, kann jetzt auch beim Überschreiben der passwörter hier passiert sein.

Code:
  strComplete = "PROVIDER=MSDASQL;Driver=SQL Server;Server=test_Server;UID=test;PWD=pass;Database=test"

Was ist Art für ein Feldformat?
Wenn ntext, dann speichere es vorher in der Schleife in eine Variable. Ist sowieso ratsam, auch bei anderen Formaten.

Hier kann das rs.moveFirst weg.

Code:
  <% 
  rs.MoveFirst 
  do while Not rs.eof 
%>

Was bewirkt die Variable "Fehler", die wird nirgends weiter im Script abgefragt.
Weiterhin würde ich ein Formular mittels method="POST" abschicken. Anonsten solltest Du die URL encodieren mit urlencode().
 

Neue Beiträge

Zurück