Skrip ASP papan Diskusi seperti yang digunakan dalam The Code Project. Ini adalah proyek sumber terbuka untuk komunitas Proyek Kode.
Ini adalah "proyek" pertama yang mengilhami konsep asli Proyek Kode. Kami telah menyediakan skrip ini untuk membantu pengembang, dan kami berharap pengembang seperti Anda akan membantu kami dengan melakukan pengujian, mengirimkan laporan bug, menyarankan perbaikan, dan mengirimkan ekstensi.
Kami mengundang Anda untuk menggunakan skrip ini di situs Anda sendiri, namun kami meminta Anda tetap menggunakan logo "didukung oleh CodeProject" di sudut kiri atas. Kami juga meminta, sebelumnya, atas kesabaran dan pengertian Anda. Skrip ini pasti akan banyak berubah, jadi kami menyarankan Anda memeriksa kembali secara berkala untuk melihat perkembangan terkini, atau berlangganan Buletin untuk menerima pemberitahuan pembaruan.
Mulai tanggal 5 Juli 2000 kami menyediakan kode sumber ke kontrol ActiveX yang menangani pekerjaan utama mengatur pesan ke dalam urutan yang serupa. Kami sangat ingin mengomentari kode tersebut, dan bahkan memberikan langkah demi langkah tentang cara kerja kode tersebut, namun kami belum punya waktu, dan memutuskan bahwa memposting apa adanya lebih baik daripada tidak memposting sama sekali. Jika Anda menemukan bug atau melakukan perbaikan, silakan kirimkan.
Peringatan
Versi kode ActiveX menggunakan kontrol ActiveX yang digunakan untuk mencapai pengurutan ini dengan memuat semua pesan di forum dan kemudian mengurutkannya dengan benar. Hal ini jelas menghasilkan kinerja yang buruk ketika forum mulai berkembang. Versi ASP murni Versi berikutnya menyertakan kolom "SortOrder" untuk setiap pesan, yang berarti pesan diurutkan pada waktu kueri DB, dan paging/pemfilteran dapat disertakan untuk mengurangi ukuran dan beban kumpulan data secara drastis. Tidak disarankan untuk menggunakan versi ActiveX dari kode ini .
26 Agustus 2001 - Philip Andrew telah menyediakan forum versi PHP.
Papan diskusi yang digunakan di CodeProject ditulis oleh Uwe Keim, dan terdiri dari kontrol ActiveX (ditulis menggunakan Visual C++) dan satu set skrip ASP. Kontrol ActiveX menyediakan akses tingkat rendah ke database pesan forum dan menyediakan fungsionalitas untuk memudahkan cara parameter diteruskan dari satu halaman ke halaman lainnya. Kontrol ActiveX baru dirilis dalam bentuk DLL saat ini, sebagian karena kami belum selesai menulisnya, dan sebagian lagi karena kami baru saja mulai mendokumentasikannya :)
Baru : Versi baru dari papan telah ditulis oleh Uwe yang hanya untuk ASP, jadi tidak perlu lagi dipusingkan dengan kontrol ActiveX. Implementasi papan ini minimal tetapi akan memberi Anda semua yang Anda perlukan untuk menjalankan dan menjalankan satu set papan diskusi. Saat ini hanya akses saja, tetapi berpindah ke SQLServer adalah latihan sederhana yang dapat dilakukan pembaca. Lihat bagian unduhan di bagian atas halaman ini untuk file-file tersebut.
Jadi - ke skrip. Semua diskusi mulai sekarang akan berkonsentrasi hanya pada versi ActiveX. Versi non-activeX cukup mirip, meskipun struktur direktori dan kumpulan file sedikit berbeda.
Ini dibagi menjadi beberapa kategori:
Ada juga:
Diasumsikan Anda menjalankan Server NT4 atau lebih tinggi dengan IIS4 atau lebih tinggi, atau Win9X dengan PWS. Forum disimpan dalam database Access dan menggunakan Mesin Jet untuk mengakses.
Oke, jadi Anda sudah mendapatkan filenya dan ingin mulai memainkannya daripada membaca sisa artikel ini. Saya tidak menyalahkan Anda. Inilah yang Anda lakukan kemudian:
/CodeProject/forum/bin
/CodeProject/common/config.asp
agar sesuai dengan situs Anda./CodeProject/forum/includes/config.asp
agar sesuai dengan papan diskusi Anda./CodeProject/forum/data/forum.mdb
./CodeProject/common/email.inc
agar sesuai. Sekarang cukup arahkan browser Anda ke /CodeProject/forum/index.asp
dan Anda selesai
Skrip terdiri dari sekumpulan skrip antarmuka pengguna utama (di direktori root) yang menggunakan skrip pekerja (di direktori /forum/app
) untuk benar-benar melakukan pekerjaan. Ini pada gilirannya mengarahkan browser kembali ke skrip antarmuka pengguna.
Inti dari sistem ini ada di /forum/includes/forum.inc
. File ini berisi definisi kelas forum dan merupakan pembungkus untuk kontrol ActiveX forum utama. Kelas ini merupakan titik komunikasi utama yang berisi semua fungsi terkait forum. Anda tidak pernah berkomunikasi dengan forum kontrol ActiveX secara langsung, tetapi selalu secara tidak langsung melalui kelas ini.
Kelas tidak hanya berisi metode yang melakukan pekerjaan, tetapi juga berfungsi untuk mengembalikan URL ke berbagai skrip aplikasi. Dengan melakukan ini kita dapat mengatur nama berbagai skrip di file /forum/includes/config.asp
yang membuatnya sangat mudah untuk mengubah struktur direktori.
Setiap pesan memiliki kata sandi yang ditetapkan oleh penulis pesan tersebut yang memungkinkan penulis untuk mengubah atau menghapus pesan. Selain itu, Anda juga dapat mengubah atau menghapus pesan dengan menggunakan kata sandi global. Ini didefinisikan di /forum/includes/config.asp
dan digunakan hanya dengan menambahkan " &ad=
" ke akhir URL apa pun yang sedang Anda lihat.
Misalnya, jika Anda melihat indeks forum dengan ID 1, dan URL Anda adalah http://www.myserver.com/codeproject/forum/index.asp?forumid=1
maka untuk masuk ke mode admin cukup ubah URL ke:
http: // www.myserver.com/codeproject/forum/index.asp?forumid=1&ad=12345
di mana "12345" adalah kata sandinya (didefinisikan di /forum/includes/config.asp
sebagai ADMIN_PW
. Ini kemudian memberi Anda opsi untuk mengelola forum (mengatur nama dan deskripsi forum, serta alamat email yang akan dikirimi email ketika ada pesan baru atau pesan balasan diposting).
Untuk menambah atau menghapus forum sendiri, Anda harus memodifikasi database secara fisik. Ini hanyalah salah satu hal yang belum kami lakukan...
Dalam mode admin Anda juga mendapatkan opsi untuk mengubah atau menghapus pesan. Selain itu, setelah berada dalam mode admin, Anda akan terus berada dalam mode admin saat Anda menelusuri skrip forum. Cukup hapus " &ad=
" untuk keluar dari mode admin.
Skrip versi terbaru memiliki antarmuka pengguna yang ditingkatkan, ditambah beberapa perubahan internal yang dirancang untuk memperbaiki beberapa masalah pada versi pertama. Singkatnya:
Terlalu banyak. Ini hanyalah sketsa forum dan bahkan tidak menjelaskan fungsi setiap file, atau bagaimana kami berencana memperluas skrip. Kami akan terus berupaya memperbaiki skrip ini dan semua ekstensi dan modifikasi yang dilakukan pada forum utama CodeProject akan disertakan dalam file yang dapat diunduh ini.
Anggap ini sebagai pekerjaan yang sedang berjalan!