2016-04-16 19 views
0

私は簡単な登録システムを作りたいと思います。登録するユーザー選択イベント、登録する人数を設定して送信をクリックします。次に、登録ページにリダイレクトされ、システムが登録フォームを生成し、クエリを変更して、レコードがイベント専用テーブルに追加されます。フォーム投稿時にmysqlからチェックボックスの値を取得

チェックボックスの値の提出に問題があります。未定義のインデックスエラーが常に発生します。 (HTML)

<form action="register-form.php" method="post"> 
     <table class="table table-bordered table-hover"> 
      <tbody> 
       <?php show_active_events(); ?> 

      </tbody> 
     </table> 
     <div class="form-group col-md-12" id="counter"> 

      <label for="select">Wybierz ilość osób do rejestracji</label> 
      <select class="form-control" name="person_number"> 

      <option>1</option> 
      <option>2</option> 
      <option>3</option> 
      <option>4</option> 
      <option>5</option> 
      <option>6</option> 
      <option>7</option> 
      <option>8</option> 
      <option>9</option> 

      </select> 

     </div> 
     <button type="submit" class="btn btn-lg btn-primary col-md-12 pull-right" id="event-table-btn" name="submit">Dalej <span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span></button> 
    </div> 
    </form> 

SHOW_ACTIVE_EVENTS FUNCTION

function show_active_events() { 
    global $conn; 

    $query = "SELECT * FROM events WHERE status NOT LIKE '0' "; 
    $showEvents = mysqli_query($conn, $query); 

    while($row = mysqli_fetch_assoc($showEvents)) { ?> 
     <tr> 
      <td width="90%"> 

<?php 
     echo $row['name']; 
     echo "<br />"; 
     echo $row['date']; 
     echo "<br />"; 
     echo $row['time']; 
     echo "<br />"; 
?> 
      <div class="accordion">Szczegóły ... 
       <div class="accordion-content hide"> 
        <p><?php echo $row['comment']; ?></p> 
       </div>  
      </div> 

      </td> 

      <td width="10%"> 
      <div class="ck-button"> 
        <label> 
         <input type="checkbox" class="ck" name="event" id="event" value="<?php echo $row['name'];?>"><span>Wybierz</span> 
        </label> 
      </div> 
      </td> 
     </tr> 
<?php }}?> 

REGISTER-FORM.PHP


は親切にここにコードがあるいくつかのアドバイス

を求めます

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

$persons = $_POST['person_number']; 
$event = $_POST['event']; 
echo $event; 
echo $persons; 
} 
?> 
+0

関数 'show_active_events'には戻り値がありません!! – Saty

+0

なぜそれがあるはずですか?この関数の目的は、mysqlレコードに基づいて動的にテーブルを作成することだけです。説明していただけますか? – Ganga

+0

'$ _POST ['event']'チェックボックスがチェックされていなければ、ユーザーは入力しません。それはあなたがそれがチェックされていないことを知っている方法です!あなたはそれを期待しています。見つからない場合はチェックが外されます。コード: '$ eventCheckboxIsChecked = isset($ _ POST ['event']);' –

答えて

-1

私はdbを動作させて同じコードを実行しています。 $ row ['column_name'] .once check column_nameに間違いがあると思います。

+0

Nopeの列名はokeyで、submitを押すと値はフォームに送信されません。 – Ganga

+0

Hiiガンガ、私は同じコードを実行しています。一度テーブルからデータをチェックしてください。データに問題があると思います。 –

関連する問題