Dengan pengembangan aplikasi web, kalender berbasis web semakin menarik perhatian, dan kalender web dapat digunakan untuk menampilkan acara penting. Artikel ini salah. Editor Saluran Teknologi Baru memperkenalkan cara menggunakan ASP di IIS dan SQL Server untuk membuat kalender berbasis web yang sangat sederhana dan memungkinkan Anda untuk berbagi kalender dengan orang lain atau mengelola sekelompok kalender orang.
Buat server SQL
Untuk kalender Web, kita hanya perlu menyimpan string teks yang menunjukkan sifat acara di sisi server, dan string panjangnya hingga 100 karakter. Kode sumber desain adalah sebagai berikut:
Calendar.sql
- Buat tabel
Buat jadwal tabel
(
IDSCHEDULE Smallint Identity Primary Key,
dtdate smalldatetime not null,
vcevent varchar (100) bukan nol
)
pergi
-Prosedur yang disimpan
Buat Prosedur GetsChedule (@nmonth tinyint, @nyear smallint)
sebagai
Pilih IDSChedule, Convert (Varchar, DatEpart (DD, DtDate)) 'nday', vcevent
dari jadwal
dimana datePart (yy, dtdate) = @nyear dan datepart (mm, dtdate) = @nmonth
Pesan dengan DatePart (DD, DTDate)
pergi
Buat Prosedur AddEvent (@vcdate varchar (20), @vcevent varchar (100))
sebagai
masukkan jadwal
Pilih @vcdate, @vcevent
pergi
Buat Prosedur DeleteEvent (@idschedule smallint)
sebagai
Hapus jadwal di mana idschedule = @idschedule
pergi
Merancang klien ASP
Gambar berikut adalah antarmuka pengguna utama kalender web, di mana pengguna dapat melihat acara mana yang dijadwalkan. Juga, gunakan tautan di bagian bawah untuk membalikkan kalender sepanjang bulan.
Kode implementasi ASP adalah sebagai berikut:
header.asp
<@ Bahasa = "vbscript"
Mengaktifkan ressionState = false %>
<%
'Tujuan: Header termasuk file yang digunakan untuk memulai semua halaman
'Juga termasuk fungsi global
Opsi eksplisit
Response.buffer = true
Response.expires = 0
Sub Doheader (Strtitle)
%>
<Html>
<head>
<Meta http-equiv = "konten tipe" content = "text/html; charset = gb2312">
<title> Kalender Acara - < %= strtitle %> </iteme>
</head>
<body bgcolor = "white" link = "blue" link = "blue" vlink = "blue">
<Basefont Face = "Verdana, Arial">
<Center> <H1> Kalender Acara </h1>
<h3> < %= strtitle %> </h3>
<%
akhir sub
fungsi getDataConnection ()
redup oconn, strconn
Setel oconn = server.createObject ("adodb.connection")
strconn = "penyedia = sqloledb; sumber data = adspm; katalog awal = TeamWeb;"
strconn = strconn && "ID pengguna = TeamWeb; Kata sandi = x"
OCONN.OPEN STRCONN
atur getDataConnection = oconn
fungsi akhir
%>
Dengan ADO, kami dapat dengan mudah menghubungkan halaman ASP ke database SQL. Pertama, kita perlu membuat koneksi ke database. Untuk mendapatkan set rekaman, kami memanggil metode eksekusi dari objek koneksi, meneruskan string teks perintah yang ingin Anda jalankan, dan setelah set rekaman tersedia, kami dapat mengulanginya. Header.asp berisi fungsi untuk mendapatkan koneksi data, yang berarti bahwa jika sumber data berubah, kami hanya memiliki satu lokasi untuk mengedit informasi koneksi (server, pengguna, dan kata sandi). Perhatikan bahwa sebagai hasilnya, kita harus menggunakan perintah set untuk membagikan koneksi baru di akhir fungsi.
Mengoptimalkan kinerja
ASP memudahkan untuk membangun halaman web, tetapi jika Anda ingin membangun situs yang dapat mengakomodasi sejumlah besar pengguna, Anda perlu berpikir dengan cermat tentang pengkodean. Di bawah ini, penulis akan memperkenalkan beberapa metode untuk meningkatkan skalabilitas kalender web, yang juga dapat digunakan untuk meningkatkan kinerja situs web berbasis ASP.
1. Optimalisasi SQL
Cara mudah untuk meningkatkan kinerja situs adalah dengan menambahkan indeks ke bidang tanggal tabel jadwal, sehingga akan mencari di antara tanggal yang diberikan, sehingga mempercepat prosedur tersimpan getEvents.
Untuk situs kecil, kami dapat menginstal SQL dan IIS di server yang sama. Setelah kunjungan situs mulai tumbuh, kami dapat memindahkan SQL ke servernya sendiri. Ketika kunjungan tumbuh lebih jauh, kami dapat menambahkan beberapa server IIS yang keduanya menunjuk ke server SQL yang sama. Jika lalu lintas SQL Server berkembang secara berlebihan, kami juga dapat membagi data ke server yang berbeda, kami dapat mengalokasikan beberapa bulan aneh ke satu server dan bahkan berbulan -bulan ke server lain, tentu saja, ini memerlukan memodifikasi getDataConnection di header.asp sehingga memberi Anda koneksi yang benar berdasarkan bulan ini.
2.App Optimization
Metode optimasi utama untuk interpretasi ASP adalah dengan memanfaatkan halaman yang di -cache sehingga ditafsirkan tanpa perlu ditafsirkan setiap bacaan. Cara termudah untuk melakukan ini adalah dengan menggunakan objek aplikasi ASP. Untuk melakukan ini, Anda cukup menyimpan HTML ke dalam variabel aplikasi (mis. Calendar07-2000) dengan nama bulan dan tahun. Kemudian, ketika halaman Kalender Acara ditampilkan, Anda pertama -tama memeriksa untuk melihat apakah kalender sudah disimpan dalam variabel aplikasi, jika demikian, ambil saja, yang sangat mempercepat proses kueri situs web. Kode berikut menunjukkan proses kerja:
<< do header >>
ShowCalendar (Nonth, Nyear)
<< lakukan footer >>
sub showcalendar (nonth, nyear)
jika aplikasi ("kalender" && nmonth && "-" && nyear) = "" lalu
<< Bangun Kalender >>
Application ("Kalender" && nmonth && "-" && nyear) = << Kalender >>
Akhiri jika
Response.write application ("kalender" && nonth && "-" && nyear)
Akhir sub
Tentu saja, saat mengubah acara selama sebulan di halaman Acara. APS, Anda perlu menghapus variabel aplikasi untuk bulan itu untuk mencerminkan perubahan dalam acara tersebut.
Keamanan
Ada beberapa cara untuk mencapai keamanan di situs ini. Untuk situs intranet, verifikasi berbasis Windows NT adalah yang termudah untuk diatur karena pengguna Anda kemungkinan besar akan masuk ke jaringan. Anda dapat mengizinkan semua pengguna untuk melihat halaman Kalender Acara, tetapi hanya administrator yang dapat mengakses halaman ADD/Hapus Acara.
Artikel ini memperkenalkan metode ASP dan SQL untuk mengimplementasikan kalender acara berbasis web. Saya percaya semua orang memahaminya. Jika Anda ingin mempelajari lebih banyak konten teknis, silakan terus perhatikan saluran teknologi baru yang salah!