2011-08-27 27 views
-2

您好,我很新的PHPPOST一個隱藏的輸入+多種選擇PHP

我有這樣的問題:

我想從表單POST選擇題+一個隱藏字段:

<?php 
if (isset($_SESSION['nickname'])) 
{ 
    $result = mysql_query("SELECT * FROM users"); 
    $teamsCount = ceil(mysql_num_rows($result)/2); 
    for ($i=1; $i<=$teamsCount; $i++) 
    { 
     // TEST: echo $i . " TeamsCount er: " . $teamsCount. "<br>"; 
?> 
Team <? echo $i; ?> 
<form name="addTeam" action="buildTeams.php" method="POST"> 
    <input type="hidden" name="hiddenField" value="<?php $i; ?>" /> 
    <select name="teams[]" multiple="multiple" size="<?php echo mysql_num_rows($result); ?>"> 
    <?php 
     $query = mysql_query("SELECT * FROM users"); 
     while ($row=mysql_fetch_array($query)) 
     { 
      $id=$row["ID"]; 
      $nick=$row["Nick"]; 
    ?> 
    <option value="<?php echo $id; ?>"><?php echo ucfirst($nick); ?></option> 
<?php 
     } 
?> 
    </select> 
    <input type="submit" value="Make them teams!!" /> 
</form> 
<?php 
    } 
} 
?> 
+6

什麼是你的問題? –

+0

這似乎是正確的,當提交表單時,數據將在buildTeams.php的$ _POST數組中可用。你能指定什麼不工作? –

+0

你的問題太含糊。詳細闡述它。 – AlphaMale

回答

3

我覺得你在這行錯誤:

<input type="hidden" name="hiddenField" value="<?php $i ?>" /> 

應該

<input type="hidden" name="hiddenField" value="<?php echo $i ?>" /> 

編輯:

把球隊ID在選擇名字。例如:

​​

而在PHP做:

foreach ($_POST['teams'] as $team_id => $choices) 
+1

或更短的版本值=「」 – Vladimir

+0

是弗拉基米爾..我知道 - 這是一個排除故障的錯誤.. – Pzoco

+0

好吧,請嘗試以下操作:不要將ID作爲隱藏值發佈,只需在] []」>。在php中做一些事情:foreach($ _POST ['team'] as $ team_id => $ choices)......這樣你可以很容易地發佈多個團隊中有多個成員。 – Vladimir

0

我想你應該檢查$_POST['hiddenField']獲取隱藏的價值

+0

感謝馬爾科·我想我知道如何解決這個問題.. 我已經改變了「hiddenField」: 陣列([TeamID] => 1 [隊伍] =>陣列([ 0] => 15 [1] => 17 [2] => 18)) 發生這種情況時,我打印$ _POST 我不知道爲什麼我不能將它組合在一個數組中,但它doesn現在沒關係..我只能得到TeamID .. 謝謝你們,它真的幫助:) – Pzoco