標題:
[專題]留言版(前台)
[打印本頁]
作者:
guo.cane
時間:
2013-12-12 19:15
標題:
[專題]留言版(前台)
本帖最後由 guo.cane 於 2013-12-24 19:23 編輯
資料庫連線 connect.php
<?php
header('Content-Type:text/html; charset=utf-8');
//格式(Host, 帳號, 密碼, 資料庫名稱), 連接成功後會回傳連線識別給 $link 變數
$link = @mysqli_connect('127.0.0.1', 'root', '3893527', 'board_db') or die('連線失敗,請洽詢管理者');
mysqli_query($link, "SET NAMES utf8"); //設定與Mysql溝通編碼
?>
複製代碼
作者:
guo.cane
時間:
2013-12-12 19:34
標題:
首頁 index.php
本帖最後由 guo.cane 於 2013-12-26 20:25 編輯
<?php
include_once('connect.php'); //將 connect.php 包含進此頁(一次), 達到連線功能
?>
<html>
<head>
<title>留言版</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<?php
$sql = "SELECT * FROM `articledata_tab`;";
$result = mysqli_query($link, $sql); //執行SQL語法
?>
<table border="2" width="80%" align="center">
<tr>
<th>編號</th>
<th>標題</th>
<th>人氣</th>
<th>IP</th>
<th>建立日期</th>
</tr>
<?php
//從 $result 取資料並指派到 $data(陣列), 資料有幾筆While迴圈就會跑幾次
while($data = mysqli_fetch_assoc($result)){
echo '<tr>';
echo '<td>'.$data['ad_id'].'</td>';
echo '<td><a href="reply.php?ad_id='.$data['ad_id'].'">'.$data['ad_title'].'</a></td>';
echo '<td>'.$data['ad_view'].'</td>';
echo '<td>'.$data['ad_ip'].'</td>';
echo '<td>'.$data['ad_datetime'].'</td>';
echo '</tr>';
}
?>
</table>
</body>
</html>
複製代碼
作者:
guo.cane
時間:
2013-12-12 20:40
標題:
回覆 reply.php
本帖最後由 guo.cane 於 2013-12-26 20:25 編輯
<?php
include_once('connect.php'); //將 connect.php 包含進此頁(一次), 達到連線功能
/** 1.查詢單筆文章記錄 **/
$ad_id = $_GET['ad_id']; //取得網址傳過來的 ad_id 值
//echo $ad_id;
$sql = "SELECT * FROM `articledata_tab`
WHERE `ad_id` = '$ad_id';";
$result = mysqli_query($link, $sql); //執行SQL語法
$data = mysqli_fetch_assoc($result); //因確定只會查詢一筆資料, 所以就不使用While, 直接執行即可
/** 2.更新人氣 **/
//$data['ad_view'] = $data['ad_view']+1; //加1
//$data['ad_view'] +=1; //加1
$ad_view = $data['ad_view']+1;
//echo $data['ad_view'];
$sql = "UPDATE `articledata_tab` SET
`ad_view` = '$ad_view'
WHERE `ad_id` = '$ad_id';";
$result = mysqli_query($link, $sql); //執行SQL語法
/** 3.查詢該篇文章回覆的資料 **/
$sql = "SELECT * FROM `replydata_tab`
WHERE `rd_ad_id` = '$ad_id'
ORDER BY `rd_datetime` DESC;"; //排序(建立時間由大至小)DESC
$result_reply = mysqli_query($link, $sql); //執行SQL語法
//echo mysqli_num_rows($result_reply);
?>
<html>
<head>
<title>留言版-回覆</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript">
function check(){
var $rd_name = document.form_reply.rd_name.value; //取得暱稱欄位的值
var $rd_content = document.form_reply.rd_content.value; //取得回覆內容欄位的值
//alert($rd_name);
//alert($rd_content);
if($rd_name==''){ //判斷暱稱欄位是否有值
alert('請輸入暱稱');
}else if($rd_content==''){ //判斷回覆內容欄位是否有值
alert('請輸入回覆內容');
}else{
document.form_reply.submit(); //利用Javascript的語法將表單送出
}
}
</script>
</head>
<body>
<a href="index1.php">回首頁</a>
<table border="2" width="80%" align="center">
<tr>
<th>標題</th>
<td><?php echo $data['ad_title'];?></td>
<th>人氣</th>
<td><?php echo $ad_view;?></td>
</tr>
<tr>
<th>IP</th>
<td><?php echo $data['ad_ip'];?></td>
<th>建立日期</th>
<td><?php echo $data['ad_datetime'];?></td>
</tr>
<tr>
<!-- valign=垂直對齊 -->
<td colspan="4" height="200px" valign="top"><?php echo nl2br($data['ad_content']); //將換行轉為<br />標籤?></td>
</tr>
</table><hr />
<!-- 查詢回覆資料 -->
<?php while($data = mysqli_fetch_assoc($result_reply)):?>
<table border="2" width="80%" align="center">
<tr>
<th>編號</th>
<td><?php echo $data['rd_id'];?></td>
<th>留言IP</th>
<td><?php echo $data['rd_ip'];?></td>
</tr>
<tr>
<th>留言名稱</th>
<td><?php echo $data['rd_name'];?></td>
<th>留言時間</th>
<td><?php echo $data['rd_datetime'];?></td>
</tr>
<tr>
<!-- valign=垂直對齊 -->
<td colspan="4" height="200px" valign="top"><?php echo nl2br($data['rd_content']); //將換行轉為<br />標籤?></td>
</tr>
</table>
<?php endwhile;?>
<hr />
<!-- name="表單名稱;Javascript會使用到" action="處理的網址" method="get:網址傳值/post:封包傳值" -->
<form name="form_reply" method="post" action="process.php">
<table border="2" width="80%" align="center">
<tr>
<th colspan="2">我要回覆</th>
</tr>
<tr>
<th>暱稱</th>
<td><input type="text" name="rd_name" /></td>
</tr>
<tr>
<!-- valign=垂直對齊 -->
<td colspan="2" height="200px" valign="top">
<textarea name="rd_content" rows="13" cols="106"></textarea>
</td>
</tr>
<tr>
<td colspan="2" align="center">
<input type="hidden" name="rd_ad_id" value="<?php echo $ad_id;?>">
<input type="button" name="send" value="留言" onclick="check();" /><!--onclick(Javascript 執行點擊事件的方法, 會執行 名稱為check 的自訂方法)-->
<input type="reset" name="reset" value="重填" />
</td>
</tr>
</table>
</form>
</body>
</html>
複製代碼
作者:
guo.cane
時間:
2013-12-19 20:13
標題:
查詢IP位址
本帖最後由 guo.cane 於 2013-12-26 20:25 編輯
<?php
header('Content-Type:text/html; charset=utf-8');
echo '您的IP位置:'.$_SERVER['REMOTE_ADDR'];
?>
複製代碼
作者:
guo.cane
時間:
2013-12-19 20:27
標題:
資料處理頁面 process.php
本帖最後由 guo.cane 於 2013-12-26 20:25 編輯
<?php
include_once('connect.php'); //將 connect.php 包含進此頁(一次), 達到連線功能
$ip = $_SERVER['REMOTE_ADDR']; //取得對方IP, 一律大寫
$sql = "INSERT INTO `replydata_tab`(`rd_ad_id`, `rd_name`, `rd_content`, `rd_ip`, `rd_datetime`)
VALUES('{$_POST['rd_ad_id']}', '{$_POST['rd_name']}', '{$_POST['rd_content']}', '{$ip}', NOW());";
$result = mysqli_query($link, $sql); //執行SQL查詢語法
if($result){
echo '<script type="text/javascript">';
echo 'alert("新增成功");';
echo 'window.location.href="reply.php?ad_id='.$_POST['rd_ad_id'].'";'; //導回原本的頁面
echo '</script>';
}else{
echo '<script type="text/javascript">';
echo 'alert("新增失敗");';
echo 'window.history.back();'; //返回上一頁
echo '</script>';
}
?>
複製代碼
歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://istak.org.tw/seed/)
Powered by Discuz! 7.2