daidai
|
發表於 2009-2-16 11:03 AM |
大概看了一下,在CHECKBOX的陣列有問題
UserPhone[] 後面不需要加數字
表單值盡量不要用中文,如果一定要用,在判別前先echo來看看
<INPUT TYPE="CHECKBOX" NAME="UserPhone[]" VALUE="1">電視節目
<INPUT TYPE="CHECKBOX" NAME="UserPhone[]" VALUE="2">電台廣播
.....
在confirm.php這一頁用一個for迴圈去跑就好了
例如:
$userphone = $_POST["UserPhone"]; // 接受表單陣列並指定陣列變數
for ($i = 0; $i < count($userphone); $i++ ) {
switch ($userphone[$i]) {
case "1":
echo "電視節目";
break;
case "2":
echo "電台廣播";
break;
..........
}
if ($i < count($userphone)) { // 印出分隔符號
echo ",";
}
}
另外"您目前使用哪家業者的網路?"應該是單選題吧~怎麼會用陣列?@@
另外附上我之前上統計學課程時寫的兩光投票網站原始碼,含簡單的javascript表單驗證,CHECKBOX的選擇數限制,語言:php、資料庫:mysql、統計圓餅圖、可匯出成excel檔
你可以參考看看,若有問題再發問吧
[daidai 在 2009-2-16 11:33 AM 作了最後編輯]
| |
eddiehan
|
發表於 2009-2-13 12:59 AM |
|
jocosn
|
發表於 2008-5-8 03:23 AM |
引用: psycho寫到:
php 的string 比較有夠怪異的
<?php
$a = "0e2";
$b = "0e3";
if ($a == $b) print '$a == $b'."\n"; // True
if ($a === $b) print '$a === $b'."\n"; // False
if ("000e002073" == "0e2857") print '"000e002073" == "0e2857"'."\n"; // True
?>
請猜執行結果
這是官網下方的範例嗎?
通常字串的比較,不會想用 == 或 === 去做比較,任何一種程式語言好像都有這樣習慣。?
因為遇到像這種數字字串,有些語言會作型態轉換轉成數值型態去做比較。結果往往出乎你的意料之外。
PHP 通常最好用內建 FUNCTION 去比較字串。
有錯請指正。
官網說明
http://tw2.php.net/operators.comparison
http://tw2.php.net/manual/en/types.comparisons.php
[jocosn 在 2008-5-8 03:24 AM 作了最後編輯]
| |
psycho
|
發表於 2008-4-27 12:31 PM |
php 的string 比較有夠怪異的
<?php
$a = "0e2";
$b = "0e3";
if ($a == $b) print '$a == $b'."\n"; // True
if ($a === $b) print '$a === $b'."\n"; // False
if ("000e002073" == "0e2857") print '"000e002073" == "0e2857"'."\n"; // True
?>
請猜執行結果
| |
rich007co
|
發表於 2008-4-26 08:53 PM |
謝謝樓上 大大的解說
你的程式還比我短 我看你的功力也不深
又讓我上了一課 感謝 你的幫忙
| |
陽だまり
|
發表於 2008-4-25 04:20 PM |
抽個空幫樓主做個範例程式
小弟美術很差,所以醜醜的請見諒
demo網址:
http://hidamari.890m.com/
ps:過些時候就會移掉這樣
[attach]34459[/attach]
radio_class函數的使用方法
radio_class($rname,$rvalue,$rchecked)
$rname是這個radio的名稱
$rvalue是這個radio的各個選項(包括值)
$rchecked是這個radio的選項中,想預設點選的選項
以
學 歷:
來舉例的話就是:
radio_class("school","小學 國中 高中職 專科 大學 碩士 博士","專科")
這個radio叫school,然後各有小學、國中、高中職、專科、大學、碩士、博士這些選項
預設點選在專科的部分這樣
[陽だまり 在 2008-4-25 04:24 PM 作了最後編輯]
| |
Jonson
|
發表於 2008-4-24 10:45 PM |
樓主沒有把問題的狀態說明的很清楚......
每個 switch case 比對後都是指定變數 $Age
沒有指定資料給正確的變數,當然不會顯示你想要的答案。
PS:
to 陽だまり
switch 最後一組 case 的 break 是可以省略的,因為是「最後一組」,case 比對到此,整個 switch 就會結束,有沒有 break 已不重要。
| |
陽だまり
|
發表於 2008-4-24 04:49 PM |
小弟也只是初學者而已
列出幾個奇怪的地方共同討論一下
引用: rich007co寫到:
主程式部分
switch($_POST["UserAge"])
{
case "Age1":
$Age = "未滿20歲";
break;
case "Age2":
$Age = "20~29";
break;
case "Age3":
$Age = "30~39";
break;
case "Age4":
$Age = "40~49";
break;
case "Age5":
$Age = "50歲以上";
}
switch($_POST["UserAge"])
{
case "Age6":
$Age = "男";
break;
case "Age7":
$Age = "女";
}
switch($_POST["UserAge2"])
{
case "Age8":
$Age = "小學";
break;
case "Age9":
$Age = "國中";
break;
case "Age9":
$Age = "高中職";
break;
case "Age10":
$Age = "專科";
break;
case "Age11":
$Age = "專科";
break;
}
藍色的地方,應該是二個不同的選擇格子吧
但怎麼會代入同樣的$_POST["UserAge"]來判別對應吧
紅色的地方應該要加上break;來正常的結束吧
然後每一個的$Age的地方
每個格子的$Age應該要叫不同的變數名稱才對(除非你是用array來儲存資料)
不然第一個資料得到後,第二個資料又把第一個的資料給洗掉
最後只會剩你最後一個判別的資料而已
然後,第二段
引用: rich007co寫到:
另一個覆程式部分
問卷填完時要顯示出來的畫面 都一直對應不上
只有出現前的前面的標題 後面的選單無出現
不知哪裡有設錯
switch($_POST["UserAge"])
{
case "Age1":
$Age = "未滿20歲";
break;
case "Age2":
$Age = "20~29";
break;
case "Age3":
$Age = "30~39";
break;
case "Age4":
$Age = "40~49";
break;
case "Age5":
$Age = "50歲以上";
}
switch($_POST["UserAge"])
{
case "Age6":
$Age = "男";
break;
case "Age7":
$Age= "女";
}
switch($_POST["UserAge2"])
{
case "Age8":
$Age = "小學";
break;
case "Age9":
$Age = "國中";
break;
case "Age9":
$Age = "高中職";
break;
case "Age10":
$Age = "專科";
break;
}
也有和第一段同樣的問題產生
要不要再檢查一下程式呢
| |
rich007co
|
發表於 2008-4-24 02:49 PM |
急PHP的選擇紐無法對應
不知有誰可幫忙看一下
哪邊有錯
希望能快點
我有設定了很多選擇紐 部分
在選擇紐的是要如呵的對應
這是一小部分 太多無法全部列
主程式部分
switch($_POST["UserAge"])
{
case "Age1":
$Age = "未滿20歲";
break;
case "Age2":
$Age = "20~29";
break;
case "Age3":
$Age = "30~39";
break;
case "Age4":
$Age = "40~49";
break;
case "Age5":
$Age = "50歲以上";
}
switch($_POST["UserAge"])
{
case "Age6":
$Age = "男";
break;
case "Age7":
$Age = "女";
}
switch($_POST["UserAge2"])
{
case "Age8":
$Age = "小學";
break;
case "Age9":
$Age = "國中";
break;
case "Age9":
$Age = "高中職";
break;
case "Age10":
$Age = "專科";
break;
case "Age11":
$Age = "專科";
break;
}
另一個覆程式部分
問卷填完時要顯示出來的畫面 都一直對應不上
只有出現前的前面的標題 後面的選單無出現
不知哪裡有設錯
switch($_POST["UserAge"])
{
case "Age1":
$Age = "未滿20歲";
break;
case "Age2":
$Age = "20~29";
break;
case "Age3":
$Age = "30~39";
break;
case "Age4":
$Age = "40~49";
break;
case "Age5":
$Age = "50歲以上";
}
switch($_POST["UserAge"])
{
case "Age6":
$Age = "男";
break;
case "Age7":
$Age= "女";
}
switch($_POST["UserAge2"])
{
case "Age8":
$Age = "小學";
break;
case "Age9":
$Age = "國中";
break;
case "Age9":
$Age = "高中職";
break;
case "Age10":
$Age = "專科";
break;
}
我有設定很多部分有這樣的選擇紐
不知在其他部分的設定是如何 也是如此嗎
本人已把主程式及副程式附上去
[rich007co 在 2008-4-24 08:22 PM 作了最後編輯]
| |