3) PostMessage.aspx:- Halaman yang menyimpan data ke database
< %@ impor namespace = System %>
< %@ name perakitan = System.data %>
< %@ impor namespace = system.data %>
< %@ import namespace = system.data.ado %>
< %@ halaman bahasa = C# debug = true %>
<Html>
<head>
<title> Terima kasih telah memposting! </iteme>
<bahasa skrip = c# runat = server>
// Jalankan skrip ini saat halaman dimuat
void page_load (objek SRC, EventArgs E)
{
// Jika halaman dipanggil dari halaman lain
if (! page.ispostback) {
// Dapatkan semua parameter dari string kueri
string name = request.params [name];
string email = request.params [email];
string subjek = request.params [subjek];
string ip = request.params [ip];
Tanggal String = request.params [Tanggal];
string message = request.params [pesan];
bool newmess = true;
string previd = 1;
// Periksa apakah posting tersebut adalah topik baru atau balasan untuk topik baru
if (request.params [newPost] .Equals (no))
{
// Jika itu balasan maka dapatkan postid dipanggil sebagai previd di sini
newMess = false;
previd = request.params [previd];
}
// Jika posting adalah topik baru maka ikuti rutinitas di bawah ini
if (newmess)
{
// String untuk jalur ke database, jika database Anda ada di beberapa yang lain
Direktori kemudian mengedit jalan
// dari variabel ini
string [email dilindungi] penyedia = microsoft.jet.oledb.4.0; sumber data =
+server.mappath (.// db // board.mdb);
// Dapatkan adoconnection ke database
adoconnection myconn = adoconnection baru (strconn);
// pernyataan SQL Select
String strcom = SELECT POSTID dari NewPost;
// Buat ADocommand karena kami ingin adodatareader nanti
Adocommand MyCommand = Adocommand baru (Strcom, MyConn);
// Buka koneksi
myconn.open ();
Pembaca Adodatareader;
// Jalankan perintah dan masukkan data ke pembaca
MyCommand.Execute (pembaca keluar);
int i = 1;
// Dapatkan jumlah catatan saat ini yang ada dalam database.
while (reader.read ())
{
i ++;
}
reader.close ();
// Bangun pernyataan SQL untuk disisipkan ke dalam database
String Insertstr = Insert ke NEWPOST Nilai (
+i +, '
+name+','
+email+','
+subjek+','
+ip+','
+tanggal+','
+pesan+', 0, 0);
MyCommand.CommandText = InsertStr;
// Karena pernyataan SQL tidak mengembalikan output apa pun menggunakan metode executeNonQuery ()
MyCommand.executenonQuery ();
// tutup koneksi
myconn.close ();
}
kalau tidak
{
// Jika data yang diposting adalah balasan ke suatu topik maka ikuti prosedur di bawah ini
// string untuk jalur ke database, jika database Anda disimpan di beberapa direktori lain
// Edit jalur di sini
String [Email Dilindungi] Provider = microsoft.jet.oledb.4.0; Sumber data =+
server.mappath (.// db // board.mdb);
adoconnection myconn = adoconnection baru (strconn);
// Pernyataan SQL untuk memilih BalasID
string strcom = pilih Replyid dari balasan;
// Buat ADocommand
Adocommand MyCommand = Adocommand baru (Strcom, MyConn);
// Buka koneksi
myconn.open ();
Pembaca Adodatareader;
// Jalankan perintah dan masukkan data ke pembaca
MyCommand.Execute (pembaca keluar);
int i = 1;
// Dapatkan jumlah catatan saat ini yang ada dalam database.
while (reader.read ())
{
i ++;
}
reader.close ();
// Bangun pernyataan untuk memasukkan nilai ke dalam tabel balasan
String Insertstr = Insert Into Reply Values (
+i +, '
+name+','
+email+','
+subjek+','
+ip+','
+tanggal+','
+pesan+',
+previd+);
MyCommand.CommandText = InsertStr;
// executeNonQuery - karena perintah tidak mengembalikan apapun
MyCommand.executenonQuery ();
// string untuk mendapatkan kolom balasan dari tabel newPost
String ReplyNo = SELECT REPUSI DARI NEWPOST WHERE POSTID =+PrevID;
MyCommand.CommandText = ReplyNo;
// Jalankan perintah dan dapatkan pembaca
MyCommand.Execute (pembaca keluar);
// Baca catatan pertama (ingat hanya ada satu catatan di pembaca karena postid unik)
reader.read ();
// Dapatkan nilai int16 dari jumlah balasan dari kolom Replies di tabel NewPost
int rep = reader.getInt16 (0);
reader.close ();
rep ++;
// Pernyataan SQL Untuk memperbarui bidang balasan di tabel NewPost
string updtstr = update newpost set replies = +rep
+di mana (postid = +previd +);
MyCommand.CommandText = updtstr;
// executeNonquerry kenapa ?? Saya kira Anda harus tahu sekarang!
MyCommand.executenonQuery ();
myconn.close ();
}
// Dapatkan parameter yang berbeda dari string kueri dan simpan
// untuk label masing -masing
namelabel.text = name;
emaillabel.text = email;
SubjectLabel.Text = Subjek;
MessageLabel.Text = pesan;
}
kalau tidak
{
// else menampilkan kesalahan
errmess.text = halaman ini tidak dapat dipanggil secara langsung. Itu harus dipanggil dari halaman posting formulir. <br>;
}
}
</script>
<tautan href = mystyle.css type = text/css rel = stylesheet>
</head>
<body topmargin = 0 leftmargin = 0 rightmargin = 0 marginwidth = 0 marginheight = 0>
<!-#include file = header.inc->
<senter>
<asp: label id = errmess text = style = color:#ff0000 runat = server />
<h2 class = fodark> <b> terima kasih, telah memposting di papan pesan. </b> </h2>
<tabel align = lebar tengah = 60% batas = 0 cellpacing = 2 cellpadding = 1>
<tr class = fohead> <td colspan = 2> Informasi yang Anda posting! </td> </tr>
<tr class = folight>
<td> Nama: </td>
<td> <asp: label id = nameLabel text = runat = server /> </td>
</tr>
<tr class = folight>
<td> E-mail: </td>
<td> <asp: label id = teks emaillabel = runat = server /> </td>
</tr>
<tr class = folight>
<td> Subjek: </td>
<td> <Asp: Label ID = Teks SubjectLabel = Runat = Server /> </td>
</tr>
<tr class = folight>
<td> pesan: </td>
<td> <Asp: Label ID = Teks MessageLabel = runat = server /> </td>
</tr>
</boable>
<br>
<h4 class = fodark> <a href = forum.aspx> klik di sini </a> untuk kembali ke forum. <br>
<%-Sedikit pekerjaan untuk menampilkan tautan untuk kembali ke halaman jika, posting adalah balasan-%>
<% if (request.params [previd]! = null)
{ %>
<a href = 'reply.aspx? postid = < %= request.params [previd] %>'> klik di sini </a> untuk kembali
dari mana Anda berasal.
< %} %>
</h4>
</penter>
<!-#include file = footer.inc->
</body>
</html>