برای تعداد بازديد از يک صفحه چکار بايد کرد؟

zorig4fun

Member
سلام
من ميخواهم تعداد بازديد را در يک صفحه ثبت کنم زبان برنامه نويسی ای اس پی دات نت ۲ و ويژوال بيسيک
برای اين موضوع در دتابيس يک کالم درست کردم حالا اگه ميشه بگيد که چطوری بيام وقتی صفحه بازديد ميشه اين رکورد را گرفته و يک عدد به آن اضافه کنم؟
مرسی
 

aramdreamss

Member
خوب دوست گرامی میتونید در صفحه ای که میخواید این کار رو توش انجام بدید
توی رویداد لود صفحه به دیتا بیس متصل میشی
بعدش هم دوتا کار میکنی
یک اینکه مقدار اون فیلد رو میگیری و در یک متغییر دخیره میکنی
بعدش هم رشته اتصال رو برای ورود داده به دیتابیس آماده میکنی
و بعدش هم اون متغییری رو که تعریف کرده بودیش رو 1=+ میکنی و میریزی تو دیتا بیس
و بعدش هم قبل از بستن اتصال اطلاعات متغییر رو رو توی صفحه و توی یک مثلا یک لیبل هم نشون میدی
به همین راحتی!!
 

zorig4fun

Member
تئوری را خودم ميدونم اگه ميشه يک لينک معرفی کنيد تا من با کد ها آشنا شوم البته به زبان ويژوال بيسيک
 

morTeza_CS

New Member
بله جناب aramdreamss کاملاً درست گفتند ولی اگه می خوای علمی تر کار قبل از این کار این شرط رو بزار
if not (me.ispostback) then

...

end if
اینجوری وقتی کاربر صفحه رو Refresh کنه به تعداد بازدید هات اضافه نمیشه .
موفق باشی .
 

morTeza_CS

New Member
zorig4fun عزیز از این کد تو LOAD فرمت استفاده کن
کد:
                    If Not (Me.IsPostBack) Then
                        Using cmd2 As New SqlCommand
                            If con.State = ConnectionState.Closed Then con.Open()
                            Dim s As String
                            s = "UPDATE defuser set Table1 = " & baz & " where  ...  ;"
                            cmd2.CommandText = s
                            cmd2.Connection = con
                            cmd2.ExecuteNonQuery()
                        End Using
                    End If
                End Using

البته قبلاً باید متغیر baz رو با مقدار جدید پر کرده باشی
 

zorig4fun

Member
شرمنده دوست عزيز من هر کاری کردم نتوانستم از اين کد ها استفاده کنم. لطفا اگه ميشه بيشتر راهنمائی کنيد.
من در صفحه آمدم رکوردهای يک خاننده را بنا بر ايدی که از APF گرفتم نمايش ميدهم در ديتابيس در جدول Artist يک کالم وجود دارد به نام NoView که اين عدد تعداد بازديد را نمايش ميدهد.
همه اين رکورد ها به وسيله SqlDataSourceArtist از ديتابسی فراخوانی ميشود.
من در کدهای پشت صفحه Page Events را با Load انتخواب کردم و کدهای شما را در آن کپی کردم کر کنم تا اينجا رو درست انجام دادم.
در نهايت کدها را اينجوری کردم اگر ميشه يک نگاهی بندازيد اشکالات را برطرف کنيد.
کد:
Partial Class Artist
    Inherits System.Web.UI.Page

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        If Not (Me.IsPostBack) Then
            Using cmd2 As New Data.SqlClient.SqlCommand
                If con.State = SqlDataSourceArtist.Closed Then con.Open()
                Dim s As String
                s = "UPDATE defuser set Artist = " & NoView & " where ArtistID = Request.QueryString("APF") ;"
                cmd2.CommandText = s
                cmd2.Connection = con
                cmd2.ExecuteNonQuery()
            End Using
        End If
    End Sub
End Class
مرسی
 

morTeza_CS

New Member
اشکال شما در همون query هستش .defuser اسم table منه و شم عوضش نکردید .شما باید اسم table خودتون رو جاش بزارید که artist می شه
شکل کلی دستور این میشه .
کد:
UPDATE Artist set NoView = " & مقدار & " where ArtistID = Request.QueryString("APF") ;"

فقط شما کجا تعداد بازدید رو اضافه کردید ؟؟؟؟
 

جدیدترین ارسال ها

بالا