2

私はスクリプトに行き詰まっており、何かが足りないかどうかを確認するために別の目が必要です。スクリプトは本屋向けです。学籍番号を入力して検索すると、学科ごとに取得予定の図書が表示されます。学生、コース、書籍のデータは、MySQL データベースから取得されます。

これはすべて、次のスクリプトで行われます。

<?php
    if (isset($_POST['submit'])){
           $btnClick = $_POST['submit'];

           switch($btnClick){
              case "Logout" :
                    session_destroy();
                    header("location:index.php");
              break;
              case "Search" :
                  $Validate = $_POST['txtStud'] ;
                  $StudNr = ValidateTxt($Validate);
                  $showStud =  findStud($StudNr);
                  $cid = $showStud[4];
                  $showBooks = findBooks($cid);
                   echo "<form action='issue_book.php' method='post'>";;
                   echo "<table class='table3'>";
                   echo "<tr>";
                   echo "<td>" . $showStud[0] . " " . $showStud[1] . " " . $showStud[2] ."</td>";
                   echo "</tr>";
                   echo "<tr><td></td><td>" . $showStud[3] . "</td></tr>";
                   $array_count = count($showBooks);
                   $num = 0;
                        while ($num != $array_count) {
                           $bookNum = $showBooks[$num]['bid'];
                           echo $bookNum . "<br>";
                           echo "<tr><td>" . $showBooks[$num]['bid'] . "</td>" . "<td>" . $showBooks[$num]['bname'] . "</td>" ;
                           echo "<td><input type='checkbox' name='booknum[]' value='<?php echo $bookNum; ?>'></td></tr>";
                            $num++;
                        }
                   echo "</table>";
                   echo "<br>";
                   echo "<table class = 'table3'>";
                   echo "<tr><td></td><td><input type='submit' name='submit' value='Issue'></td>
                        <td><input type='submit' name='submit' value='Clear'></td></tr>";
                   echo "</form>";
             break;
             case "Issue": 

                 $mybooks = $_POST['booknum'];
                  $h = count($mybooks);
                  echo $h . "<br>";
                  print_r ($mybooks);

             break;
      }
}
?>

動的に作成されたデータの下部には、2 つのボタンがあります。問題ボタンをクリックすると、このデータが表示されます。

これは、現時点でスクリプトにあるコードからのものです。ここからデータベースにデータを送信したい。

Array ( [0] => [1] => [2] => )

空の配列?? 各チェックボックスに割り当てた名前がどうなったかわからない??

このフォーラムの投稿チェックボックスのリンクに従って、スクリプトを調整しようとしました

どこに何かが欠けているのかわかりません。

4

1 に答える 1

5

これは、ここに構文エラーがあるためです

echo "<td><input type='checkbox' name='booknum[]' value='<?php echo $bookNum; ?>'></td></tr>";
                                                         ^php tags are opened ^ 

すでに php タグ内でテーブルを印刷しています。他のタグを開くことはできません

value='<?php echo $bookNum; ?>

これが、配列の値が空であるのにキーが存在する理由です。連結すればいいだけ

echo "<td><input type='checkbox' name='booknum[]' value='".$bookNum."'></td></tr>";
于 2013-06-03T13:44:49.617 に答える