php表單接收
❶ php中接收復選框信息的方法
PHP接收多個同名復選框信息不像ASP那樣自動轉換成為數組 這給使用帶來了一定不便 但是還是有解決辦法的 就是利用JavaScript做一下預處理 多個同名復選框在JavaScript中還是以數組的形式存在的 所以在表單提交之前可以利用JavaScript把復選框中的信息組合成一個字元數組賦值給表單中的隱藏元素 然後用PHP中的explode函數解析此數組 這樣就可以實現復選框信息的傳遞了 下面舉例說明 假設有這樣一個表單<form name= form id= form method= post action= myphp php onSubmit= return Checker() >
<input type= checkbox name= item value= > <br>
<input type= checkbox name= item value= > <br>
<input type= checkbox name= item value= > <br>
<input type= checkbox name= item value= > <br>
<input type= hidden name= items value= >
<input type= submit value= Submit >
</form>
這個表單有四個名字都是item的復選框 當用戶單擊Submit按鈕的時候 Checker函數會被調用 並且如果Checker返回true表單就被提交 返回false表單就不會被提交 這里Checker函數就是我們要編寫的預處理函數 在HTML的header部分添加下面的JavaScript
<script language= JavaScript > <! function Checker() { form items value = ; if ( !form item length ) // 只有一個復選框 form item length = undefined { if ( form items checked ) form items value = form item value; } else { for ( i = ; i < form item length ; i++ ) { if ( form item(i) checked ) // 復選框中有選中的框 { form items value = form item(i) value; for ( j = i + ; j < form item length ; j++ ) { if ( form item(j) checked ) { form items value += ; //用空格做分割符 form items value += form item(j) value; } } break; } } } return true; } > </script>
這樣就可以把所有選中的復選框的value組合成為一個字元串數組 在myphp php使用這樣的語句
$items = explode( $HTTP_POST_VARS[ items ]);
lishixin/Article/program/PHP/201311/21376
❷ php如何接收表單post過來的數組
php直接接收變數的
比如前面一頁 你有一個輸入框 <input type=text name=aaaa>
後面你可以直接用 $aaaa=$_POST['aaaa']; 就可以把上一頁aaaa的值存到這一頁變數aaaa中啊
如果你在php.ini的設置中 register_global=on 的話
從下面的頁 你直接調用$aaaa 就可啊 比如第二個頁面只有 echo $aaaa;那麼也可以輸出變數的值
❸ php接收表單數據存儲數組,並按格式輸出
可以先接收到值。然後組裝成
123,456,789 這樣的字元串存入資料庫
然後讀取資料庫的時候,用explode() 把他轉為數組,在循環輸出就可以了
$url1 = $_POST('url1');
$url2 = $_POST('url2');
$url3 = $_POST('url3');
組裝數據
$str = $url1.",".$url2.",";
然後將$str 存入資料庫
然後你讀取這條數據。讀出來是這樣的
$new_str = "123,456,789 ";
然後
$array = explode(',',$new_str);
var_mp($array);
❹ PHP可以接收HTML表單的值嗎
可以的。
提交表單後php處理出來的頁面。在這個例子中,我輸入一個單詞,然後給定一個長度,將單詞等分成該長度的塊。
演示了通過POST方法提交表單。
例子二(單選,GET接受表單):
view sourceprint?
<form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="GET">
Select your personality attributes:<br/>
<select name="att[]" >
<option value="perky">perky</option>
<option value="morese">morose</option>
<option value="thinking">thinking</option>
<option value="feeling"> feeling</option>
<option value="thrifty">speed-thrift</option>
<option value="prodigal">shopper</option>
</select>
<br>
<input type ="submit" name="s" value="Record my personality">
</form>
<?php
if (array_key_exists('s',$_GET)){
$des = implode(' ', $_GET['att']);
echo "You have a $des personality.";
}
?>
例子三(多選,GET接受表單):
注意到此時<select name="att[]" multiple> 下劃線告訴GET你傳輸的是個數組,黑體字部分則是表示改選擇框為多選框
view sourceprint?
<form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="GET">
Select your personality attributes:<br/>
<select name="att[]" multiple>
<option value="perky">perky</option>
<option value="morese">morose</option>
<option value="thinking">thinking</option>
<option value="feeling"> feeling</option>
<option value="thrifty">speed-thrift</option>
<option value="prodigal">shopper</option>
</select>
<br>
<input type ="submit" name="s" value="Record my personality">
</form>
<?php
if (array_key_exists('s',$_GET)){
$des = implode(' ', $_GET['att']);
echo "You have a $des personality.";
}
?>
例子四(復選框checkbox): 同樣name="att[]"是告訴GET你傳輸的是一個數組, checked 則表示該選項為初始默認選擇,同樣上例,在標簽內加入 selected="selected"也可以
讓多選初始默認選擇。
view sourceprint?
<form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="GET">
Select your personality attributes:<br/>
perky<input type="checkbox" name="att[]" value="perky" checked /> <br/>
morose<input type="checkbox" name="att[]" value="morose" checked /> <br/>
thinking<input type="checkbox" name="att[]" value="thinking" /> <br/>
feeling<input type="checkbox" name="att[]" value="feeling" /> <br/>
<br>
<input type ="submit" name="s" value="Record my personality">
</form>
<?php
if (array_key_exists('s',$_GET)){
echo "<pre>";
print_r($_GET);
echo "</pre>";
if (is_null($_GET['att'])) exit;
$des = implode(' ', $_GET['att']);
echo "You have a $des personality.";
}
?>
例子五(單選框): 注意,同一個選項即可的單選必須name相等
view sourceprint?
<form>
男性:
<input type="radio" checked="checked" name="Sex" value="male" />
<br />
女性:
<input type="radio" name="Sex" value="female" />
<br>
<hr>
男性:
<input type="radio" checked="checked" name="Se" value="male" />
<br />
女性:
<input type="radio" name="Se" value="female" />
</form>
<p>當用戶點擊一個單選按鈕時,該按鈕會變為選中狀態,其他所有按鈕會變為非選中狀態。</p>
例子六(stick form):一個表格如何要實現之前輸入過的值在頁面刷新後仍然存在可以如下
view sourceprint?
<?php
$f = $_POST['fa'];
?>
<form action = "<?php echo $_SERVER['PHP_SELF']; ?> " method="POST">
temperature:
<input type="text" name="fa" value="<?php echo $f;?>" />;
<br/>
<input type="submit" name="Convert to Celsius" />
</form>
<?php
if (!is_null($f)){
$c = ($f-32)*5/9;
printf("%.2lf is %.2lfC",$f,$c);
}
?>
都是一些簡單的表單處理~
❺ php表單接收
不能用tr td的, 如果你不想直接顯示,可以這樣寫
<input type="hidden" name="aa" value="bbb">
取的時候 $_GET["aa"] 得到的值為bbb
❻ PHP接收表單傳入的值的時候,為何不直接用ehco $name 直接列印出來,只能用_GET或者_POST獲得
您可能誤解了通過POST和GET傳遞的變數與您在接收頁面定義的$name之間的關系了,在您使用$name = $_POST['參數'] 或 $name = $_GET['參數'] 這樣的賦值表達式之前,賦值運算符的左邊與右邊沒有任何關系。
$_POST['參數'] 或 $name = $_GET['參數'] 是存儲在PHP預定義變數$_POST或$_GET變數中的變數,而$name是您在接收頁面定義的用於接收(被賦值)被傳遞的變數的變數。
如果您未曾使用賦值表達式將存儲在$_POST或$_GET中的變數賦給$name就用echo輸出$name的話,$name的值是null,PHP中null是沒有輸出的,因而是空白。希望我的解釋沒有誤導您^_^