作者 主題: php寫計算機問題  (閱讀 12719 次)

0 會員 與 1 訪客 正在閱讀本文。

baseball

  • 懷疑的國中生
  • **
  • 文章數: 54
    • 檢視個人資料
php寫計算機問題
« 於: 2003-07-04 20:23 »
請問一下,
我想見3個 table然後由
使用者輸入 5 * 5 (3個欄位,* / + - 自行輸入)
結果要顯示 5 * 5 = 25

慶問要整樣寫
運算元的服號要長要呼叫


<form  action=test.php method=post>
        <input type=text name=n1 ><input type=text name=x><input type=text name=n2>
        <input type=submit value="確定">
        </form>
<?php
         $v="$x";
         $total=$n1"$x"$n2;
         echo "$n1$x$n2=$total";
?>

dark

  • 俺是博士!
  • *****
  • 文章數: 1581
    • 檢視個人資料
php寫計算機問題
« 回覆 #1 於: 2003-07-04 21:20 »
<form action=test.php method=post>
<input type=text name=n1 >
<input type=submit value="確定">
</form>
<?php
$total=system('echo "' . $n1 . '" | bc');
echo "($n1 . ' = ' . $total)";
?>

連四則運算都可以喔... ^^
但只有一個 text input , 還呼叫系統...

baseball

  • 懷疑的國中生
  • **
  • 文章數: 54
    • 檢視個人資料
php寫計算機問題
« 回覆 #2 於: 2003-07-04 22:03 »
不好意思,看不懂.....
請問system為函數嗎?他是屬於哪一類別
" | bc'  是做蛇摸用的???



謝謝!

引述: "dark"
<form action=test.php method=post>
<input type=text name=n1 >
<input type=submit value="確定">
</form>
<?php
$total=system('echo "' . $n1 . '" | bc');
echo "($n1 . ' = ' . $total)";
?>

連四則運算都可以喔... ^^
但只有一個 text input , 還呼叫系統...

hoyo

  • 榮譽博士
  • 俺是博士!
  • *****
  • 文章數: 4052
  • 性別: 男
  • 有需要的時候,學習就不會分階段。
    • 檢視個人資料
    • 樂咖黑電腦學習網
php寫計算機問題
« 回覆 #3 於: 2003-07-04 22:57 »
system :呼叫系統指令
bc :Linux 計算機指令
附註:會想到使用 bc 來應該也算是 "天下第一人" 吧 ^^"
至少我就想不到這招 ^^A
受人與魚,不如授人與漁
上海自來水來自海上;倫敦好奇人奇好敦倫

baseball

  • 懷疑的國中生
  • **
  • 文章數: 54
    • 檢視個人資料
php寫計算機問題
« 回覆 #4 於: 2003-07-04 23:23 »
不然該長樣寫呢
上面的世子我在 win的aqpserv2.0試不出

引述: "hoyo"
system :呼叫系統指令
bc :Linux 計算機指令
附註:會想到使用 bc 來應該也算是 "天下第一人" 吧 ^^"
至少我就想不到這招 ^^A

Darkhero

  • 酷!學園 學長們
  • 俺是博士!
  • *****
  • 文章數: 3728
  • 性別: 男
    • 檢視個人資料
    • ㄚ凱隨手紀
php寫計算機問題
« 回覆 #5 於: 2003-07-04 23:26 »
引述: "baseball"
不然該長樣寫呢
上面的世子我在 win的aqpserv2.0試不出

引述: "hoyo"
system :呼叫系統指令
bc :Linux 計算機指令
附註:會想到使用 bc 來應該也算是 "天下第一人" 吧 ^^"
至少我就想不到這招 ^^A


這下糟糕...win2000 中沒有 bc..@_@..
不知道能不能呼叫小算盤呢?
希望我們的討論是為了把問題解決,而不是爭論誰對誰錯.
『灌水才是重點,發文只是順便』
『我寧可讓不會釣魚的工程師餓死,也不想讓會餓死的工程師去攪沉公司....』
Blog: http://blog.darkhero.net/
秘密基地: http://www.darkhero.net/comic/
目前服務的網站: http://www.libook.com.tw/

duan

  • 榮譽博士
  • 活潑的大學生
  • ***
  • 文章數: 253
    • 檢視個人資料
php寫計算機問題
« 回覆 #6 於: 2003-07-04 23:54 »
引述: "Darkhero"

這下糟糕...win2000 中沒有 bc..@_@..
不知道能不能呼叫小算盤呢?


其實這類的應用, 弟比較建議用 java script , 一來是反應即時 (不用傳回 server),
再來是不用考慮安全性的問題 ( 用 system , exec,  一定要小心) .

除非要記錄使用者算過什麼東西, 弟覺得用 client script 打發掉這類問題
最快.     :)

baseball

  • 懷疑的國中生
  • **
  • 文章數: 54
    • 檢視個人資料
php寫計算機問題
« 回覆 #7 於: 2003-07-05 00:01 »
我只是想知道一下
是否可以用變數來接 運算子
得到total
都給 echo 顯示

不然的話,應該可以用下拉式選單取value的值來對應



引述: "duan"
引述: "Darkhero"

這下糟糕...win2000 中沒有 bc..@_@..
不知道能不能呼叫小算盤呢?


其實這類的應用, 弟比較建議用 java script , 一來是反應即時 (不用傳回 server),
再來是不用考慮安全性的問題 ( 用 system , exec,  一定要小心) .

除非要記錄使用者算過什麼東西, 弟覺得用 client script 打發掉這類問題
最快.     :)

duan

  • 榮譽博士
  • 活潑的大學生
  • ***
  • 文章數: 253
    • 檢視個人資料
php寫計算機問題
« 回覆 #8 於: 2003-07-05 00:21 »
引述: "baseball"
我只是想知道一下
是否可以用變數來接 運算子
得到total
都給 echo 顯示
不然的話,應該可以用下拉式選單取value的值來對應


這樣問的話就比較清楚您的意思, 上面的網友看起來都被誤導了.  :)

您的意思是像 +-*/ 之類的符號會傳回給 php , 然後要變成運算子,
ex:
$val1=5;
$val2=5;
$cal="+";
然後要處理 "$val1 $cal $val2" 變成運算式?
請參考  eval 這個 function    :)

補充一下, eval 雖然是比 system 安全點, 但還是要檢查傳進來的變數.  :)

baseball

  • 懷疑的國中生
  • **
  • 文章數: 54
    • 檢視個人資料
php寫計算機問題
« 回覆 #9 於: 2003-07-07 19:45 »
試了好久,還是不太會用,可否再幫忙解釋一下
謝謝!

引述: "duan"
引述: "baseball"
我只是想知道一下
是否可以用變數來接 運算子
得到total
都給 echo 顯示
不然的話,應該可以用下拉式選單取value的值來對應


這樣問的話就比較清楚您的意思, 上面的網友看起來都被誤導了.  :)

您的意思是像 +-*/ 之類的符號會傳回給 php , 然後要變成運算子,
ex:
$val1=5;
$val2=5;
$cal="+";
然後要處理 "$val1 $cal $val2" 變成運算式?
請參考  eval 這個 function    :)

補充一下, eval 雖然是比 system 安全點, 但還是要檢查傳進來的變數.  :)

twbestama

  • 懷疑的國中生
  • **
  • 文章數: 45
    • 檢視個人資料
php寫計算機問題
« 回覆 #10 於: 2003-08-01 14:28 »
用最笨的方法
switch($cal)
   case "+"
        $sum=$val1+$val2;
   case ...
   ...