ورود

View Full Version : رکورد تصادفی



3nitro
چهارشنبه 08 تیر 1384, 11:13 صبح
چگونه از بین تعدادی رکورد 4 تاش رو به طور تصادفی انتخاب کنیم که تکراری هم نباشد . :گیج:

توضیحات : البته یک روش (که بیشتر میشه گفت کلک) هم بلدم ولی کدش میزنه بالای 40 خط . :)

saeedkhan
چهارشنبه 08 تیر 1384, 18:20 عصر
<%
Option Explicit
Response.Buffer = True
%>
<html>
<head>
<style>
p { font-family:verdana; font-size:11px; }
</style>
</head>
<body>
<br><p align="center">
<%
' ADO Constant. Dont change this
Const adCmdText = &H0001

' Connection string and SQL statement
Dim query, connStr
query = "select statement from RandomRec"
connStr = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & _
Server.MapPath("random.mdb")

' Opening database
Dim rs
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open query, connStr, 3, , adCmdText

' Generating random number from total number of records
Dim intRnd
Randomize Timer
intRnd = (Int(RND * rs.RecordCount))

' Now moving the cursor to random record number
rs.Move intRnd

' Showing the random statement
Response.Write "<b>" & rs("statement") & "</b>"

' Closing the database
rs.Close
Set rs = Nothing
%>
</p>
</body>
</html>
بقیش دیگه آسونه خودت انجام بده

3nitro
چهارشنبه 08 تیر 1384, 20:08 عصر
ممنون ولی هیچ جای این loop نداره که مثلا 4 تا رکورد بده . این فقط یک رکورد تصادفی ایجاد می کنه که اگه بخوایم چهارتا بشه ممکنه توش تکراری هم دربیاد . خودم کدش رو نوشتم شد 73 خط :strange: ولی خوبیش اینه که درست کار میکنه .

باز هم ممنون :flower: