За последние 24 часа нас посетили 15820 программистов и 1666 роботов. Сейчас ищут 888 программистов ...

Search mvc что сделать чтобы заработала кнопка GO

Тема в разделе "PHP для новичков", создана пользователем kolbok, 11 июл 2018.

  1. kolbok

    kolbok Новичок

    С нами с:
    10 июл 2018
    Сообщения:
    13
    Симпатии:
    0
    Не пойму как сделать чтобы все заработало...

    Модель, поиск по значению:
    PHP:
    1.     public function search($post)
    2.     {
    3.         $search = $post['search_q'];
    4.         $data = null;
    5.         try {
    6.             $sql = "SELECT *
    7.                FROM articles
    8.                WHERE title
    9.                LIKE '%".$search."%'
    10.                ";
    11.             $data = $this->connect()->query($sql)->fetchAll(PDO::FETCH_OBJ);
    12.  
    13.         } catch (Exception $ex) {
    14.             echo $ex->getMessage();
    15.         }
    16.         return $data;
    17.     }
    Контроллер:
    PHP:
    1.     public function searchAction()
    2.     {
    3.         if (isset($_POST) && !empty($_POST)){
    4.             $data = $this->model->search($_POST);
    5.         }
    6.  
    7.         $this->view->generate('search_view.php', $data);
    8.     }

    Сам поиск:
    HTML:
    1. <div class="card my-4">
    2.     <h5 class="card-header">Search</h5>
    3.     <div class="card-body">
    4.         <div class="input-group">
    5.             <input type="text" name="search_q" class="form-control" placeholder="Search for...">
    6.             <span class="input-group-btn">
    7.                   <button class="btn btn-secondary"  type="button">Go!</button>
    8.                 </span>
    9.  
    10.         </div>
    11.     </div>
    12. </div>
    Тут выводится одна статья по поиску:
    HTML:
    1. <!-- Blog Entries Column -->
    2. <div class="col-md-8">
    3.     <h1 class="my-4">Page Heading
    4.         <small>Secondary Text</small>
    5.     </h1>
    6.  
    7.  
    8.     <!-- Blog Post -->
    9.     <div class="card mb-4">
    10.         <?php if($data) : ?>
    11.             <?php foreach ($data as $dat) : ?>
    12.                 <img class="card-img-top" src="/web/site/image/post1.jpg" alt="Card image cap">
    13.                 <div class="card-body">
    14.                     <h2 class="card-title"><?php echo $dat->title; ?></h2>
    15.                     <p class="card-text"><?php echo $dat->sub_title; ?></p>
    16.                     <a href="/main/post?<?php echo $dat->id; ?>" class="btn btn-primary">Read More &rarr;</a>
    17.                 </div>
    18.                 <div class="card-footer text-muted">
    19.                     Posted on January 1, 2017 by
    20.                     <a href="#">Start Bootstrap</a>
    21.                 </div>
    22.             <?php endforeach; ?>
    23.         <?php else : ?>
    24.         <?php endif; ?>
    25.     </div>
    26.  
     
  2. Sail

    Sail Старожил

    С нами с:
    1 ноя 2016
    Сообщения:
    1.593
    Симпатии:
    362
    @kolbok, вероятно, надо сделать "Сам поиск" частью формы, а в обработчике формы - выполнить "поиск по значению"
     
  3. TeslaFeo

    TeslaFeo Старожил

    С нами с:
    9 мар 2016
    Сообщения:
    2.984
    Симпатии:
    759
    HTML:
    1. <button onclick="alert('Кнопка \'Go!\' заработала!');">Go!</button>