iT邦幫忙

0

關於Function的寫法

<?php
	$passed = $_COOKIE["passed"];
	if ($passed != "TRUE")
	{header("location:index.htm");
		exit();}
?>
<HTML>
  <BODY>
  <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=Big-5 ">
		  <A HREF="modify.php">修改會員資料</A>     
			<A HREF="delete.php">刪除會員資料</A>     
			<A HREF="logout.php">登出網站</A>
<?
$link = mysql_connect("localhost", "root", "123");
	if (!$link) die("建立資料連接失敗");		
	   $db_selected = mysql_select_db("member", $link);
	if (!$db_selected) die("開啟資料庫失敗");
	   $sql = "SELECT * FROM menu ";
	mysql_query("SET NAMES 'Big5'");
	   $result = mysql_query($sql, $link);
	if (!$result) die("執行 SQL 命令失敗");
      $total =mysql_num_rows($result);
      echo "<FORM ACTION='order.php' METHOD='POST'>";
      for($i = 1; $i <= $total; $i++)
					 {	$row = mysql_fetch_array($result);	
            echo "$i ." .$row["cook"]."";
						echo "" .$row["money"]. "元";
            echo "<INPUT TYPE='checkbox' name='cook[]' value='$row[cook]'>"; //'$row[money]' 
            echo '確認';
            echo "<INPUT TYPE='checkbox' name='money[]' value='$row[money]'>";
            echo "<p>" ; }
         	  echo "<INPUT TYPE='submit' value='點菜'><P>";  
            echo "</FORM>";      
		mysql_free_result($result);
		mysql_close($link);		
?>
</BODY>
</HTML>
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 個回答

22
pcboy
iT邦大師 6 級 ‧ 2009-05-01 07:06:52
最佳解答

官方網站很多範例和說明

http://www.php.net/manual/en/functions.user-defined.php

Functions
User-defined functions
Function arguments
Returning values
Variable functions
Internal (built-in) functions
Anonymous functions

18
fillano
iT邦超人 1 級 ‧ 2009-05-01 09:35:21

先不管你教授要的是什麼啦。

你目前寫了幾支程式?你把你目前系統中的程式整理一下,應該可以發現一些功能是重複的,這樣你就可以把這些重複的部份改寫成function,這是一般做function的思考邏輯。

有時會因為有些需求需要用function來達成,例如要用遞迴。也可能會需要區分變數scope所以必須用function(資料封裝的考慮)。另外也可能因為需要分工,把系統一些功能預先考量好用function做出來,或是規定否些功能要用相同規格的function來實作(例如callback)等等。不過基本上這些都是會重複使用的程式碼。

我想你朝這個方向思考,才能了解你的程式哪裡真正需要function吧。

嗯,把程式精簡化,會讓程式跑的更好,再使用性也會比較高。
大大的建議我收下了 ^^

我要發表回答

立即登入回答