php
  • arrays
  • forms
  • post
  • 2017-03-07 49 views 0 likes 
    0

    我有這樣的代碼來填充一個PHP形式

    $html = '<tr>'; 
          $html .= '<td class="tg-yw4l"><input type="text" name="exam_date_input[]" value="' . $exam_date . '"></td>'; 
          $html .= '<td class="tg-yw4l"><input type="text" name="exam_code_input[]" value="' . $exam_code . '"></td>'; 
          $html .= '<td class="tg-yw4l"><input type="text" name="exam_title[]" value="' . $title . '"></td>'; 
          $html .= '<td class="tg-yw4l"><input type="text" name="exam_time_input[]" value="' . $exam_time . '"></td>'; 
          $html .= "<td class='tg-yw4l'><a href='javascript:void(0)' class='row_remove'> - </a></td>"; 
    $html .= '<tr>'; 
    die($html); 
    

    的表的行這是HTML所示,當予檢查元素

    <input name="exam_date_input[]" value="01/03/2017" type="text">

    提交表單應,在理論上,這個陣列添加到$ POST陣列。

    然而,這並沒有發生。

    而不是我的表單操作$date = $_POST['exam_date_input'];網頁上的代碼提供了以下通知:

    Notice: Undefined index: exam_date_input

    而且沒有使用var_dump($_POST);

    +0

    如何提交此表單?這個'die()'命令意味着這是* HTML的全部*,這意味着沒有實際的形式。你甚至提交什麼? – David

    +0

    什麼'print_r($ _ POST);'顯示你?給定這些輸入將不會有'$ _POST ['exam_date_input']。 – AbraCadaver

    回答

    1

    input是$ POST數組中的exam_date_input數組不在form之內,因此當您發佈form時,您的input未添加到參數中。 die似乎不正確,因爲您需要關閉已打開的標記,包括bodyhtml。解決方法是確保您不會在input之前關閉form,而是在完成table之後關閉form,並使用echo而不是die

    +0

    爲了樣式目的,我在表單中添加了一些'div'標籤。這導致'table'中的'input'字段出現在表單之外。更改HTML標記已經解決了這個問題。 –

    +0

    @IanButler如果我的答案解決了您的問題,那麼請不要忘記將其標記爲正確的答案。如果沒有,那麼請用你現在使用的HTML編輯你的問題,並讓我知道它。 –

    +1

    我已經說得正確,因爲它讓我以正確的方式查看我的代碼。雖然我可能沒有很好地說出這個問題。當有太多不同的代碼發佈相關的代碼時,這是棘手的... –

    相關問題