2015-03-03 2 views
1

Я пытаюсь создать окно поиска, которое ищет поле графства базы данных. Если критерии совпадают, записи будут отображаться в таблице. У меня есть разные округа в раскрывающемся списке, но когда я нажимаю на запись, таблица не меняется. Любая помощь будет оценена!PHP-поиск MySQL-таблица с раскрывающимся списком

<?php 
require_once("includes/session.php"); 
include_once("includes/masterinclude.php"); 

$preferences = getPreferences(); 
$category = ""; 
$attribute1 = ""; $attribute2 = ""; $attriute3 = ""; $attribute4 = ""; 
$top_level="0"; 

$name = $_GET['members']; 
$information = getInformationPage($name); 
$infopagename=$information->IN_NAME; 
//meta data for information pages now taken from the information table 
$pageTitle = $information->IN_NAME . html_entity_decode($information->IN_TITLE); 
$pageMetaDescription = html_entity_decode($information->IN_META_DESC); 
$pageMetaKeywords = html_entity_decode($information->IN_META_KEYWORDS); 
$pageCustomHead = html_entity_decode($information->IN_CUSTOM_HEAD, ENT_QUOTES); 

//initialise screen fields 
$selected_member = ""; 
$id = ""; 
$username = ""; $username_original = ""; 
$password = ""; $password_original = ""; 
$password_test = ""; 
$title = "MR"; $first_name = ""; $last_name = ""; $company_name = ""; 
$address1 = ""; $address2 = ""; $town = ""; $county = ""; $country = ""; $postcode = ""; $phone = ""; $mobile = ""; $email = ""; 
$member_confirmed = "N"; 
$ast_first = 0; $ast_last = 0; $ast_company = 0; $ast_add1 = 0; $ast_add2 = 0; $ast_town = 0; $ast_county = 0; $ast_country = 0; $ast_post = 0; $ast_phone = 0; 
$ast_mobile = 0; $ast_email = 0; 
$ast_user = 0; $ast_pass = 0; $ast_passconf = 0; 

$members = Get_All_Members("ALL"); 
$_GET['searchdata'] = $_POST['SEARCH_DATA']; $_GET['searchmember'] = $_POST['MEMBER']; 

include_once("includes/header.php"); 
?> 

<!-- start: Page header/Breadcrumbs --> 

<div id="breadcrumbs"> 
    <div class="container"> 
     <div class="breadcrumbs"> 
     <a href="/">Home</a><i class="icon-angle-right"></i>Stockists 
     </div> 
    </div> 
</div> 

<!-- end: Page header/Breadcrumbs --> 


<!-- start: Container --> 
<div id="container"> 
    <div class="container"> 
     <div class="row-fluid"> 

     <form class="form-horizontal form-box" role="form" name="enter_thumb" action="/stockists.php" enctype="multipart/form-data" method="post" onsubmit="return validate_discount_table();"> 

     <!-- start: Page section --> 
     <section class="span12"> 
      <div class="row-fluid shop-result"> 
       <div class="inner darken clearfix"> 
       <h1>Stockists</h1> 
       </div> 
      </div> 



      <div class="row-fluid"> 

      <div class="form-group"> 
        <label class="col-lg-4">Search County: </label> 
       <div class="col-lg-4"> 
        <Input class="form-control" name="SEARCH_DATA" type="text" size="72" value="<?php echo isset($_POST['SEARCH_DATA']) ? $_POST['SEARCH_DATA'] : "" ?>"/> 
       </div> 

       <div class="col-lg-4"> 
        <Input name="SEARCH" type="submit" value="search" class="btn btn-primary"/> 
       </div> 

       <div class="col-lg-4"> 
        <select name="search_results" id="jumpMenu" onchange="MM_jumpMenu('parent',this,1)"> 
         <option value="#">Choose from...</option> 
          <?php 
          if (isset($_POST['SEARCH_DATA'])){ 
          $members = Search_member($_POST['SEARCH_DATA']); 
          foreach($members as $m){ 
          if(isset($_POST['SELECTED_MEMBER']) and $_POST['SELECTED_MEMBER'] == $m->MB_COUNTY){ 
          $selected = "selected"; 
          }else{ 
          $selected = ""; 
          } 
          echo "<option value=\"/stockists.php?searchdata=" . $_POST['SEARCH_DATA'] . "&searchmember=" . $m->MB_COUNTY . "\"" . $selected . ">" . $m->MB_COUNTY . " - " . html_entity_decode($m->MB_COUNTY) . "</option>"; 
           } 
          } 
          ?> 
        </select> 

        <input type="hidden" name="SELECTED_MEMBER" value="<?php echo (isset($selected_member) ? $selected_member : "") ?>"/> 
       </div> 
      </div> 



      <div class="form-group"> 
      <table class="table table-bordered table-striped table-hover"> 

      <thead> 
      <tr> 
       <th> 
        Name 
       </th> 
       <th> 
        Website 
       </th> 
       <th> 
        Phone 
       </th> 
       <th> 
        Address 
       </th> 
      </tr> 
      </thead> 


      <?php if($county != ""): ?> 
      <?php 
       foreach($members as $m){ 
        echo "<tr>"; 
         echo "<td>"; 
          echo "<span class=\"member_line\">" . $m->MB_COMPANY . "</span>"; 
         echo "</td>"; 
         echo "<td>"; 
          echo "<a href=\"http://" . $m->MB_MOBILE . "\">" . $m->MB_MOBILE . "</a>"; 
         echo "</td>"; 
         echo "<td>"; 
          echo "<span class=\"member_line\">" . $m->MB_PHONE . "</span>"; 
         echo "</td>"; 
     //    echo "<td>"; 
     //     echo "<a href=\"mailto:" . $m->MB_EMAIL . "\"><span style=\"color:#669999;\" class=\"member_line\">" . $m->MB_EMAIL . "</span></a>"; 
     //    echo "</td>";--> 
         echo "<td>"; 
          echo "<span class=\"member_line\">" . $m->MB_ADDRESS1 . ", " . $m->MB_ADDRESS2 . ", " . $m->MB_TOWN . ", " . $m->MB_COUNTY . ", " . $m->MB_POSTCODE . "</span>"; 
         echo "</td>"; 
        echo "</tr>"; 
       } 
       echo "</table>"; 
      ?> 
      </table> 

      <?php endif; ?> 

      </div> 
      </div> 
      </form> 
     </section> 
     <!-- end: Page section --> 


     </div> 

    </div> 
</div> 
<!-- end: Container --> 



<?php 
    include_once("includes/footer.php"); 
?> 
+0

Отображаются ли какие-либо ошибки? Какой SQL вы используете? Какова схема доступа к базе данных, к которой вы обращаетесь? Вы получаете некоторый результат, но неправильный вывод? Публикация блока кода без каких-либо объяснений того, что должно произойти (и не описание того, какая информация должна возвращаться из ваших функций), не помогает. Вывод журнала из всех ваших функций в файл, чтобы вы могли сузиться там, где проблема – DaveyBoy

+0

Ошибок не отображается. Нет никакого вывода на всех таблицах, однако он остается пустым. Это записи в базе данных и база данных подключается. Извините, что я новичок в размещении вопросов в Интернете, которые будут работать в будущем. – jonlloyd

+0

Если подключена БД, каков будет результат вашего запроса? Дамп каждой строки в файл журнала по мере их получения (CSV/print_r/var_export), чтобы вы могли проверить, действительно ли данные являются разумными. Если вы используете JavaScript, проверьте наличие ошибок и зарегистрируйте вывод там на консоль. – DaveyBoy

ответ

0

Ваша страница PHP не собирается быть в состоянии изменить то, что находится в кипы без обновления страницы или же с помощью JavaScript, чтобы переписать страницу.

Я вижу, что вы используете функцию JJ MM_jumpMenu() при смене вниз. Эта функция должна будет извлечь данные для вашего выбора, а затем переписать таблицу, чтобы включить новые данные. Если вы уже делаете это в JS-коде, нам нужно будет увидеть этот код, чтобы узнать, в чем проблема.

Альтернативой этому было бы покончить с JS и позволить форме отправить страницу самому себе. Затем в верхней части страницы прочитайте выбранное значение, которое было передано из формы, загрузите данные и напишите соответственно.

+0

Да, я пытаюсь обновить, когда я запускаю форму, у меня есть действие = "/ stockists.php". Когда я нажимаю кнопку поиска, страница перезагружается, а округа отображаются в раскрывающемся списке. В таблице ничего нет, он остается пустым. В базе данных есть записи. По какой-то причине оператор IF не работает, и записи не отображаются! – jonlloyd

+0

Оператор if проверяет, пуст ли граф $. Я могу видеть, где вы по умолчанию, чтобы он был пустым, но я не вижу, чтобы вы когда-либо вносили что-либо в него, поэтому он всегда пуст. Если страна возвращается из представления формы, вам нужно проверить что-то вроде $ _POST ['country'] – Horaland

Смежные вопросы