webForumDet fria alternativet

Loopa ut allt innehåll

ASP

8 svar · 285 visningar · startad av mattiasnordin

Medlem sedan maj 20012 080 inlägg
Frågan#1

#1) Fungerar inte sökfunktionen. Den klagar hela tiden på att jag har för korta sökningar eller något liknande.

#2) Hur loopar jag ut all information ur en databas?

Jag vet hur man får ur infot ur en kolumn men jag vill loopa ut allt. SQL frågan är en vanlig "SELECT * FROM databasenX"

<%
'bygg sql-fråga
testtest=request.querystring("SQLfragan")
sql = testtest
Response.write "<font color=red>" &sql &"</font><hr>"
'skapa recordset
set rs = connect.execute(sql)
%>

<% while not rs.eof %>

<%
' ???
%><br>

<%	
	'flytta till nästa post i recordsetet
	rs.movenext
	'om det är slut på poster så sätts eof (END OF FILE) till sant och då avslutas loopen
	wend
	'stäng recordset
	rs.close
	'stäng connection
	connect.close
	%>

Har för mig att jag har sett hur det går till här tidigare men jag kan inte hitta exemplet. Jag har labbat lite men får inte till det...

Medlem sedan maj 20002 597 inlägg
#2

#2)

<%
	Set RSConn = Server.CreateObject("ADODB.Recordset")

	SQL = "SELECT * FROM  Nyheter Order By ID DESC"

	RSConn.Open SQL, Connect, 1, 2

	Do Until RSConn.EOF
%>

blah blah blah

<%
RSConn.MoveNext	
Loop
RSConn.Close
Connect.Close
%>
Medlem sedan maj 20012 080 inlägg
#3

Finns det något alternativ till..

Det jag är ute efter är hur man loopar igenom all information ur
mitt record set (eller vad det nu än heter).

response.write rs("Firstname")

Ovan fungerar utmärkt men då får jag ju bara ut kolumnen Firstname. Jag vill ha ut alla kolumner oberoende av vad de heter. Är det någon guru som har ett exempel så jag kommer in på rätt spår? :)

Medlem sedan maj 20002 597 inlägg
#4

När du säjer "kolumnen" menar du "tabellen" eller??

du kan ju skriva
SQL = "SELECT * FROM Nyheter, Tabell2, Tabell3 ....

om det är till hjälp

Medlem sedan maj 20012 080 inlägg
#5

Ich bin ein nybörjare

Min tabell ser ut som så här:

ID, Firstname, Lastname, Email

med SELECT * FROM databasX får jag ut all information och om jag förstår det rätt så får man ut det i ett record set (rs).

Om man sen loopar detta recordset så kan du response.write:a ut all information.

Det jag undrar är om det finns något annat sätt att få ut den informationen än att använda response.write rs("KOLUMNNAMNET") ?

Visst heter det kolumn? En tabell kan väl ha flera kolumner och rader! Blir osäker när man är så novis som jag är inom detta område... :q

Kan man använda något som rs("1,2") eller något???

Medlem sedan mars 20015 287 inlägg
#6

Loopa ut all info.

<%
strConnString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("databas.mdb")

	Set Connect = Server.CreateObject("ADODB.Connection")
	Connect.Open strConnString
	Set rs=Server.CreateObject("ADODB.Recordset")

SQL = "SELECT * FROM tabell"

set rs = connect.execute(SQL) 

	Dim myArray
	myArray = RS.GetRows()

	RS.close
	set RS= nothing
	connect.Close
	set connect = nothing

Response.Write "<table border =1>"
For i = 0 to ubound(myArray,2)
Response.Write "<tr><td>" & i & ". Ny post *******************"
Response.Write "</td></tr>"

for t = 0 to ubound(myArray,1)

Response.Write "<tr><td>."
response.write t & ". ---  " & myArray(t,i)
Response.Write "</td></tr>"
Next
Next
Response.Write "</table>"
%>
Medlem sedan maj 20012 080 inlägg
#7

Vad det är sol hos mig nu...

Tja Solbulle.

Detta fungerade precis som jag ville. Det märkliga är att jag labbade med myArray=RS.GetRows() tidigare men fick det inte att fungera. Måste gjort något enkelt nybörjarfel..

Tack som fan! :e

Medlem sedan maj 20012 080 inlägg
#8

Hur får man enklast ut kolumnnamnen i databasen?

hmmm... Skulle vara trevligt om man fick ut rubrikerna till alla kolumner i tabellen. Finns det något superenkelt trick?

Medlem sedan sep. 2001163 inlägg
#9

Jag hittade den här på någon sida som du kan testa med.

<SCRIPT language=JavaScript>
	function removeText(field){
		field.value = '';
	}
	function sendToURL(inp){
		if (inp != 'x')			  
			document.location = inp;
	}
</SCRIPT>

<STYLE TYPE="text/css">
<!--
.text {COLOR: #000000; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; FONT-SIZE: 9pt}
.text2 {COLOR: #000000; FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif; FONT-SIZE: 8pt}
-->
</STYLE>

<FORM>
<TABLE border="0" cellpadding="0" cellspacing="0">
	<TR>
		<TD class=text>Välj tabell: </TD>
		<TD>
			<SELECT NAME="partners" onChange="sendToURL(this.form.partners.options[this.form.partners.selectedIndex].value)" style="font-size: 8pt; font-family: verdana, arial"">
				<OPTION value=x selected>Db-tabellista
				<OPTION value=x>---

				<% Set Connect = Server.CreateObject("ADODB.Connection")
			'	Connect.Open ("driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("DIN SÖKVÄG TILL DATABASEN.mdb"))
				Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=d:\inetpub\wwwroot\db\telefon.mdb" 

				Set RecSet = connect.OpenSchema(20)

				Do while Not RecSet.EOF 
					If Trim(RecSet("TABLE_TYPE")) = "TABLE" Then
						response.write "<option value=""d09.asp?tabell=" & RecSet.Fields("TABLE_NAME") & """>" & RecSet.Fields("TABLE_NAME")
					End If
				RecSet.MoveNext
				Loop %>

			</OPTION>
			</SELECT>
		</TD>
	</TR>
</TABLE>
</FORM>

<% IF NOT Request.QueryString("tabell") = "" THEN

Dim myArray
Dim Rad
Dim i
Dim p

Rad = 0

Response.Write "<TABLE><TR><TD class=text><b>Tabell:" & Request.QueryString("tabell") & "</b></TD></TR></TABLE>"

Visa = "SELECT * FROM " & Request.QueryString("tabell")
Set RecSet = Connect.Execute(Visa)

response.write "<table border=0 bgcolor=""#111111"" cellpadding=""1"" cellspacing=""1""><tr bgcolor=""#EEEEEE"">"

For i = 0 to RecSet.fields.count -1
	response.write "<TD class=text2> <b>" & RecSet(i).name & "</b> </TD>"
next

response.write "</tr>"

Visa = "SELECT * FROM " & Request.QueryString("tabell")
Set RecSet = Connect.Execute(Visa)

IF NOT RecSet.EOF THEN
	myArray = RecSet.GetRows()
	Rad = 1					'Rad finns
End if

RecSet.Close
Set RecSet = nothing
Connect.Close
Set Connect = nothing

IF Rad = 1 THEN

	For i=0 to ubound(myArray,2)
		response.write "<TR bgcolor=""#FFFFFF"">"
		For p = 0 to ubound(myArray,1)

			IF Len(myArray(p,i)) > 19 THEN

				response.write "<TD class=text2> " & Left(myArray(p,i),20) & "... </TD>"	'Skriver ut de 16 första tecknen i DB-posten
			Else

				response.write "<TD class=text2> " & myArray(p,i) & " </TD>"
			End if

		next
		response.write "</TR>"
	next
End if

Response.Write "</TABLE>"

IF Rad = 0 THEN

	Response.Write "<TABLE><TR><TD class=text>Det finns inga poster i tabellen.</TD></TR></TABLE>"

End if

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