我稍事修改了 edit_software_links.inc.php 中的 print_items() 函數,讓它更精簡些,但輸出結果不變。我想這個函數理想上應該可以寫成萬用函數,而不需每個模組都要重新定義它。
<BLOCKQUOTE><font size="1" face="XYZ">code:</font><HR><pre>function print_items($start, $len, $sort_by){
global $PHP_SELF;
$sel_back = "selected";
$sel_fore = "";
$where_str = "";
if ($start >= 0 && $len > 0) {
$limit_str = "LIMIT 0, $len";
} else {
$limit_str ="LIMIT 0, 30";
$len = 30;
}
if ($sort_by == "backward") {
if ($start) $where_str = "WHERE swl_id >= $start ";
$sel_fore = "selected";
$order_str = "asc";
} else {
$sort_by = "forward";
if($start) $where_str = "WHERE swl_id <= $start ";
$sel_back = "selected";
$order_str = "desc";
}
$my_query = "SELECT swl_id, swl_title, swl_version, type_id, swl_url, active ".
"FROM software_links $where_str " .
"ORDER BY swl_id $order_str $limit_str";
$result = mysql_query($my_query);
if (mysql_num_rows($result) > 0){
$row = mysql_fetch_array($result);
$r_id = $row['swl_id'];
?>
<table width="100%" border="0" cellpadding="2" cellspacing="0" >
<tr>
<td align="center" bgcolor="#eeeeee" colspan="5">
<form action="<? echo $PHP_SELF; ?>" method="post">
<input type="hidden" name="mode" value="update_view">
從 <input type="text" name="first_row" value="<? echo $r_id; ?>" size="4" maxlength="3"> 號紀錄開始
<select name="direction" class="form_elements">
<option value="forward" <? echo $sel_back; ?>>向前</option>
<option value="backward" <? echo $sel_fore; ?>>向後</option>
</select> 顯示,每次顯示
<input type="text" name="row_num" value="<? echo $len; ?>" size="4" maxlength="3"> 筆紀錄
<input type="submit" name="update_list" value="更新" class="form_elements">
</form><hr>
</td></tr>
<tr><td>
<table width="100%" border="0" cellpadding="2" cellspacing="2">
<tr>
<th class="table_hdr">編號</th>
<th class="table_hdr">張貼</th>
<th class="table_hdr">軟體名稱</th>
<th class="table_hdr">軟體版本</th>
<th class="table_hdr">軟體聯結</th>
<th class="table_hdr">適用平台</th>
<th></th>
</tr>
<?
mysql_data_seek($result, 0); // Reset query result pointer to the first record
$odd_row = true;
while ($row = mysql_fetch_array($result)){
$r_id = $row['swl_id'];
$r_title = $row['swl_title'];
$r_ver = $row['swl_version'];
$r_type = $row['type_id'];
$r_link = $row['swl_url'];
$r_active = ($row['active'] > 0)? "checked" : "";
if ($odd_row) {
$bg_color="#eaeaea";
$odd_row = !$odd_row;
} else {
$bg_color="#ffffff";
$odd_row = !$odd_row;
}
?>
<!-- Record #<? echo $r_id; ?> -->
<form action="<? echo $PHP_SELF; ?>" method="post">
<tr bgcolor="<? echo $bg_color; ?>">
<td align="center"><? echo $r_id; ?></td>
<td align="center"><input type="checkbox" name="active" value="1" <? echo $r_active; ?>></td>
<td><input type="text" size="25" name="item_text" value="<? echo htmlspecialchars($r_title); ?>"></td>
<td><input type="text" size="10" name="item_version" value="<? echo htmlspecialchars($r_ver); ?>"></td>
<td><input type="text" size="35" name="item_url" value="<? echo htmlspecialchars($r_link); ?>"></td>
<td><? print_platform_menu($r_type); ?></td>
<td nowrap>
<input type="hidden" name="mode" value="update_row">
<input type="hidden" name="item_id" value="<? echo $r_id; ?>">
<input type="hidden" name="first_row" value="<? if($start) echo $start; else echo ""; ?>">
<input type="hidden" name="row_num" value="<? echo $len; ?>">
<input type="hidden" name="direction" value="<? echo $sort_by; ?>">
<input type="submit" name="update_item" value="更新" class="form_elements">
<input type="submit" name="delete_item" value="刪除" class="form_elements"></td>
</tr>
</form>
<?
}
echo "</table>\n</td></tr>\n";
} else {
?>
<tr><td align="center" bgcolor="#eeeeee"><br><b>資料欄內容為空白。</b><br><br></td></tr>
<? }
if ($result) mysql_free_result($result);
}
</pre><HR></BLOCKQUOTE>
[ 01-18-2002: 留言編輯者: 麻州大道 ]
fpcode: print_items()
版主: bryanchang、digdog、謝孟叡
- bryanchang
- 討論區管理員
- 文章: 7057
- 註冊時間: 04/19/2001 1:01 am
- 來自: The '60s
- 聯繫:
fpcode: print_items()
多謝!
我在考慮要另闢地點讓大家可以貼修改過的 code 以及 post bug report, 我跟 Digdog 目前是考慮去 SourceForge 開個戶,不知道各位有何意見?
我在考慮要另闢地點讓大家可以貼修改過的 code 以及 post bug report, 我跟 Digdog 目前是考慮去 SourceForge 開個戶,不知道各位有何意見?
fpcode: print_items()
如果能到SourceForege開創計畫,這樣很好喔!
可以讓fpcode更為強大 [img]images/smiles/icon_smile.gif[/img]
<BLOCKQUOTE><font size="1" face="XYZ">quote:</font><HR>原始發信人 白萊恩:
<STRONG>多謝!
我在考慮要另闢地點讓大家可以貼修改過的 code 以及 post bug report, 我跟 Digdog 目前是考慮去 SourceForge 開個戶,不知道各位有何意見?</STRONG><HR></BLOCKQUOTE>
可以讓fpcode更為強大 [img]images/smiles/icon_smile.gif[/img]
<BLOCKQUOTE><font size="1" face="XYZ">quote:</font><HR>原始發信人 白萊恩:
<STRONG>多謝!
我在考慮要另闢地點讓大家可以貼修改過的 code 以及 post bug report, 我跟 Digdog 目前是考慮去 SourceForge 開個戶,不知道各位有何意見?</STRONG><HR></BLOCKQUOTE>
fpcode: print_items()
嗯~這個構想不錯,一來可以藉 SourceForge 來管理程式碼,二來可以吸引更多 developers。只是白老闆和 digdog 這下會更忙碌了。
- bryanchang
- 討論區管理員
- 文章: 7057
- 註冊時間: 04/19/2001 1:01 am
- 來自: The '60s
- 聯繫:
fpcode: print_items()
<BLOCKQUOTE><font size="1" face="XYZ">quote:</font><HR>原始發信人 麻州大道:
<STRONG>嗯~這個構想不錯,一來可以藉 SourceForge 來管理程式碼,二來可以吸引更多 developers。只是白老闆和 digdog 這下會更忙碌了。</STRONG><HR></BLOCKQUOTE>
不會啊,Open Source 的意思就是說「你覺得不好,那就自己修。」
嘿嘿... [img]images/smiles/icon_biggrin.gif[/img]
<STRONG>嗯~這個構想不錯,一來可以藉 SourceForge 來管理程式碼,二來可以吸引更多 developers。只是白老闆和 digdog 這下會更忙碌了。</STRONG><HR></BLOCKQUOTE>
不會啊,Open Source 的意思就是說「你覺得不好,那就自己修。」
嘿嘿... [img]images/smiles/icon_biggrin.gif[/img]