Маленькая проблема с базой данных - PullRequest
0 голосов
/ 07 февраля 2011

Привет, я работаю над проектом бронирования мест. Я делаю этот проект в code_igniter. Теперь у меня есть небольшая проблема с отправкой ярлыка места через базу данных. В моем проекте есть небольшая часть JQuery. Когда я проверяю флажок, имя будет помещено на этикетке. Но когда я отправляю его в базу данных, он всегда возвращает 0 ???

Это моя функция jquery.

      $('[name=check]').each(function(i,d){
                    $(d).removeAttr('disabled');
                });
            }
                   $("#seatDiv").html($(this).val());
                 $(document).ready(function() {
                    $("input[name=check]").change(function() {
                    $("#seatDiv").html($(this).val());
                    })
                    });

Моя форма

   echo form_open('user/register');
        $username = array(
           'name'       =>  'reg_username',
            'id'        =>  'reg_username',
            'value'     =>  set_value('reg_username')
        );
           $email = array(
           'name'       =>  'reg_email',
            'id'        =>  'reg_email',
            'value'     =>  set_value('reg_email')
        );
            $gsmnummer = array(
           'name'       =>  'reg_gsmnummer',
            'id'        =>  'reg_gsmnummer',
            'value'     =>  set_value('reg_gsmnummer')
        );
            $zitplaats = array(
           'name'       =>  'reg_zitplaats',
            'id'        =>  'reg_zitplaats',
            'value'     =>  '$id'
        );
    ?>
    <table>
        <tr>
            <td><label> Naam </label></td>
           <td> <div> <?php echo form_input($username); ?></div></td>
       </tr>
        <tr>
            <td><label>e-mail </label></td>
            <td><div> <?php echo form_input($email); ?></div></td>
        </tr>
        <tr>
            <td><label> gsm-nummer </label></td>
            <td><div> <?php echo form_input ($gsmnummer); ?> </div></td>
        </tr>
        <tr>
            <td><label>zitplaats</label></td>

            <td><div id="seatDiv" > <?php echo form_label($id='seatDiv'); ?> </div></td>
        </tr>
        <tr>
       <td> <?php echo form_submit(array('name'=> 'verzend','value' => 'verzend')); ?> </td>

      <?php echo form_close(); ?>

И моя user_model

class User_model extends Model{
function User_model() {
    parent :: Model() ;
}
function register_user($username, $email, $gsmnummer, $zitplaats){

    $query_str ="INSERT INTO tbl_reservering (username,gsmnummer,email,zitplaats)VALUES(?, ?, ?, ?)";
    $this->db->query($query_str,array($username,$email,$gsmnummer,$zitplaats));
}

}

Надеюсь, кто-нибудь может мне помочь!

спасибо!

Ответы [ 2 ]

0 голосов
/ 09 февраля 2011

Вы можете включить скрытый ввод, содержащий значение, которое вы хотите передать контроллеру (и, в конечном итоге, модели).Убедитесь, что ваш контроллер настроен для получения 'reg_zitplaats'.

Ваш jQuery должен выглядеть примерно так (я сделал некоторые изменения в вашем исходном посте, так как он делал действительно странные вещи):

$(function() {
  $('input[name=check]').removeAttr('disabled'); // not sure why the checkbox is disabled to start off with

  $('input[name=check]').change(function() {
    $('#seatDiv').html($(this).val());
    $('#reg_zitplaats').val($(this).val());
  });
});

Тогда ваш html может быть таким (обратите внимание на скрытый ввод):

<?php 
echo form_open('user/register');
$username = array(
  'name' => 'reg_username',
  'id' =>  'reg_username',
  'value' =>  set_value('reg_username')
);

$email = array(
  'name' => 'reg_email',
  'id' => 'reg_email',
  'value' => set_value('reg_email')
);

$gsmnummer = array(
  'name' => 'reg_gsmnummer',
  'id' => 'reg_gsmnummer',
  'value' => set_value('reg_gsmnummer')
);

$zitplaats = array(
  'name' => 'reg_zitplaats',
  'id' => 'reg_zitplaats',
  'value' => $id
);
?>
<table>
  <tr>
    <td><label>Naam</label></td>
    <td>
      <div>
        <?php echo form_input($username); ?>
      </div>
    </td>
  </tr>
  <tr>
    <td><label>e-mail </label></td>
    <td>
      <div>
        <?php echo form_input($email); ?>
      </div>
    </td>
  </tr>
  <tr>
    <td><label>gsm-nummer</label></td>
    <td>
      <div>
        <?php echo form_input($gsmnummer); ?>
      </div>
    </td>
  </tr>
  <tr>
    <td><label>zitplaats</label></td>
    <td>
      <?php echo form_hidden($zitplaats); ?>
      <div id="seatDiv" > 
        <?php echo form_label($id='seatDiv'); ?>
      </div>
    </td>
  </tr>
  <tr>
    <td><?php echo form_submit(array('name'=> 'verzend','value' => 'verzend')); ?></td>
  </tr>
</table>
<?php echo form_close(); ?>

Попробуйте это и дайте нам знать, как вы идете.

0 голосов
/ 07 февраля 2011
$zitplaats = array(
           'name'       =>  'reg_zitplaats',
            'id'        =>  'reg_zitplaats',
            'value'     =>  '$id'
        );

Переменные не анализируются, если они заключены в одинарные кавычки.

и где устанавливается значение $id.

<tr>
            <td><label>zitplaats</label></td>

            <td><div id="seatDiv" > <?php echo form_label($id='seatDiv'); ?> </div></td>

вы также даже не используете$zitplaats в вашем коде.

Я тоже не уверен, что делает form_label($id='seatDiv'), мне не подходит.

Какой вывод?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...