2014-02-08 3 views
0

Как передать USER_ID тега < a > для функции Javascript Javascript, который устанавливает скрытое поле?Установить значение скрытого поля по Javascript

Я пробовал функцию Javascript showConfirm(), но скрытое поле не заполняется. Он остается нулевым ... Я думаю, что атрибут onClick, поля deleteid, написан неправильно.

Я хочу заполнить это поле на javascript. Как я могу?

сообщение об ошибке говорит

У Вас есть ошибка в вашем SQL синтаксиса; в руководстве, соответствует версии сервера MySQL для корректного синтаксиса использовать около «» в строке 1

вероятно потому, что скрытое поле "id_action" не получает ДАННЫЕ функции.

Независимо от того, главная проблема задана функцией showConfirm параметрами 'show', $row['id'] для скрытого поля id_action.

  <script> 

      function showConfirm (action, delID) { 
       if (action == 'show') { 
       document.confirm.id_action.value = delID; 
       } 
      } 
      </script> 


      <tbody> 
       <?php 
        if (!empty($_POST)) { 
       if (isset($_POST['id_action'])) { 
       $del_id = $_POST['id_action']; 
        $delUser = new User; 
        $delUser->deletarUsuario($del_id); 
        unset($delUser); 
       } 
      } 
       $listUser = new User; 
       $result  = $listUser->listarUsers(); 
       if (is_array($result)) { 
        foreach ($result as $row) { 
        echo " 
        <tr> 
         <td align='right'>" . $row['id'] . "</td> 
          <td>". $row['name'] . " ".$row['sobrename']."</td> 
          <td>" . $row['email'] . "</td> 
          <td>" . $row['login'] . "</td> 
          <td> 
           <a data-toggle='modal' id='deleteid' data-target='#modal_delUser' onclick=\"showConfirm('show'," . $row['id'] . ")\"> 
           Remove 
           </a> 
          </td> 
        </tr>"; 
        } 
       } 
       unset($listUser); 
       ?> 
      </tbody> 


        <!-- Button trigger modal --> 
       <div class='modal fade' id='modal_delUser' tabindex='-1' role='dialog' aria-labelledby='modal_delUserLabel' aria-hidden='true'> 
       <div class='modal-dialog'> 
       <div class='modal-content panel-danger'> 
        <div class='modal-header panel-heading'> 
        <button type='button' class='close' data-dismiss='modal' aria-hidden='true'>&times;</button> 
        <h4 class='modal-title' id='modal_delUserLabel'>The user will be deleted</h4> 
        </div> 
        <div class='modal-body'> 
        Are you sure continue? 
        </div> 
        <div class="modal-footer"> 
        <form role="form" id="confirm" action="users.php" method="post"> 

         <input type="hidden" name="id_action"> 

         <button type="button" class="btn btn-default" data-dismiss="modal">No</button> 
         <button type="submit" class="btn btn-danger">Yes</button> 
        </form> 
        </div> 
       </div> 
       </div> 
      </div> 

Здесь SQL, что я генерации из запроса

public function deletarUsuario($id) { 
    $del_id  = $this->db->real_escape_string(trim($id)); 
    if ($update = $this->db->query("DELETE FROM usuario WHERE id = $del_id")) { 
     if ($this->db->affected_rows) { 
      echo "<div><p>Deleted user!</p></div>"; 
     } 
     else { 
      echo "<div><p>Failed to delete user.</p></div>"; 
     } 

    } 
    else { 
     echo "<div><p>". $this->db->error."</p></div>"; 
       echo "<script>$('#modal_erroBD').modal('show');</script>"; 
    } 

} 

ответ

0

это сделать в PHP с помощью $id_action = $_POST["id_action"]

Проверьте, если вы передаете идентификатор на данном этапе:

Поменять

   if (isset($_POST['id_action'])) { 
       $del_id = $_POST['id_action']; 
        $delUser = new User; 
        $delUser->deletarUsuario($del_id); 
        unset($delUser); 
      } 

к

   if (isset($_POST['id_action'])) { 
       $del_id = $_POST['id_action']; 
        echo $del_id; 
      } 
+0

Да, я уже сделал – AlexDoria

+0

Покажите нам SQL, что вы генерирующий из запроса, как это не в коде выше. – malta

+0

О, извините, я здесь новый. Существует ... – AlexDoria