2012-02-20 329 views
0

我不知道如何執行以下操作並希望獲得一些幫助。 我有一個php文件,它打開並顯示一個.txt文件的數組中的一些細節,複選框被選中。一旦用戶選擇這些複選框並點擊,我需要另一個php文件來標識選中的複選框並顯示數據。選擇複選框

編輯:您忘記了詳細信息,複選框將與數組關聯,因此當用戶輸入搜索詞時,只有相關信息會隨複選框一起彈出。這意味着所有複選框具有相同的ID並且是相同的。我該如何解決?

+0

你能否提供一些代碼?特別是你遇到問題的代碼。 – Josh 2012-02-20 20:51:42

回答

0

這些複選框以HTML形式呈現,我想。如果是這樣的話,你可以使用jQuery:

$("input:checkbox[name=type]:checked").each(function() 
{ 
// do your stuff here 
}); 
2

複選框:

<input type="checkbox" name="checkbox-name" value="1"/> 

如果此複選框被選中,表單提交,然後在目標頁面上的複選框:

$_POST['checkbox-name']=1; 

如果沒有定義對應的複選框,則POST值未設置,例如:

if(!isset($_POST['checkbox-name'])){ echo 'not selected'; } 

編輯:

如果需要陣列,然後在同一陣列的所有checkbox'es的名稱應該是這樣的:

<input type="checkbox" name="my-checkboxes[]" value="first"/> 

然後這可以通過在PHP由環狀

foreach($_POST['my-checkboxes'] as $values){ 
    echo $values; 
} 

同樣適用於可作爲數組發送的其他HTML表單元素。

+0

原創帖子已修改,請閱讀。 – 2012-02-20 23:20:20

+0

添加了有關數組的信息。 – kingmaple 2012-02-20 23:44:05

+0

我不斷收到一個錯誤「爲foreach()提供的無效參數」要清楚,我在第二個.php文件中的所有內容都是foreach循環嗎? – 2012-02-21 15:09:35

1

假設您的初始頁有這樣的:

<form action="results.php" method="POST"> 

<input type="checkbox" name="checkbox1" value="1" /> 
<input type="checkbox" name="checkbox2" value="2" /> 
<input type="checkbox" name="checkbox3" value="3" /> 
<input type="submit" value="Submit" /> 

</form> 

results.php應該是這樣的:

<?php 

echo isset($_POST['checkbox1']) ? "Box 1 is selected.<br />" : "Box 1 is not selected.<br />"; 
echo isset($_POST['checkbox2']) ? "Box 2 is selected.<br />" : "Box 2 is not selected.<br />"; 
echo isset($_POST['checkbox3']) ? "Box 3 is selected." : "Box 3 is not selected."; 

?> 

編輯:你也可以把它們粘到變量,像這樣:

$cb1 = isset($_POST['checkbox1']) ? true : false; 
$cb2 = isset($_POST['checkbox2']) ? true : false; 
$cb3 = isset($_POST['checkbox3']) ? true : false; 

而且做一些if聲明:

if (!$cb1 && $cb2 && $cb3) { 
    echo "Option 1 is pretty much essential, or your gerbil 
    could escape within the first few hours of ownership."; 
} else if ($cb1 && $cb2 && !$cb3) { 
    echo "If you don't get him a water bottle, he may turn vicious."; 
} else if (!$cb1 && !$cb2 && !$cb3) { 
    echo "Right, that's it, we're calling the RSPCA!"; 
} 

等等......

+0

原文編輯,請閱讀。 – 2012-02-20 23:20:31