2016-01-04 2 views
2

Я хочу отображать данные из mysql в таблице, используя jquery. Я создал таблицу php ниже, но я хочу использовать jquery instate для отображения таблицы в форме на #mytable. Я надеюсь, что мой код не слишком запутаннымКак создать таблицу jquery?

> echo "<table class=\"optable\"> 
<tr> 
<th>Device ID</th> 
<th>Name</th> 
<th>Type</th> 
<th>Make & Model</th> 
<th>Memory</th> 
</tr>"; 
while($row = mysqli_fetch_array($result)) { 
    echo "<tr>"; 
    echo "<td>" . $row['device_id'] . "</td>"; 
    echo "<td>" . $row['device_name'] . "</td>"; 
    echo "<td>" . $row['device_type'] . "</td>"; 
    echo "<td>" . $row['make_model'] . "</td>"; 
    echo "<td>" . $row['memory'] . "</td>"; 
    echo "</tr>"; 
} 
echo "</table>"; 

образуют

<html> 
    <script src="http://code.jquery.com/jquery-1.10.2.js" type="text/javascript"></script> 
    <script src="./action/scripts/script1.js" type="text/javascript">  </script> 
     <div>   
      <input id="name" type="text" name="name" onkeyup="updatefrm2('name')" />  
     </div> 
     <div id="mytable"></div> 
</html> 

здесь скрипт JQuery Я хочу изменить, чтобы отобразить таблицу

script1. js

function updatefrm2($name) { 
    var name = $("#" + $name).val(); 
    if ($.trim(name) !='') { 
    $.post('http://exemple.com/action/subs/name6.php', {name: name},  function(data) { 

    $('#member_id').val(data['id']); 
    $('#member_id2').val(data['id']); 
    $('#member_id_clog').val(data['id']); 
    $('#member_id').val(data['id']); 
    $('.price2').val(data['id']); 

    }); 
}  
} 

Вот код PHP я использовать для сбора Дада из MySQL

name6.php 

<?php 

if (!empty($_POST['name'])) { 
    require '../db/connect6.php'; 
    $safe_name = mysql_real_escape_string(trim($_POST['name'])); 
    $query = mysql_query(" 
     SELECT * FROM `oz2ts_users` 
     WHERE `oz2ts_users`.`id` = '". $safe_name ."' 
    "); 

    if (mysql_num_rows($query) > 0) { 
     $row = mysql_fetch_assoc($query); 
     json($row); 
    } else { 
     json(null); 
    } 
} 

function json ($array) { 
    header("Content-Type: application/json"); 
    echo json_encode($array); 
} 

?> 

ответ

1

Я думаю, что ваш name6.php код должен быть как:

<?php 

if (!empty($_POST['name'])) { 
     require '../db/connect6.php'; 
     $safe_name = mysql_real_escape_string(trim($_POST['name'])); 
     $query = mysql_query(" 
       SELECT * FROM `oz2ts_users` 
       WHERE `oz2ts_users`.`id` = '". $safe_name ."' 
     "); 

     if (mysql_num_rows($query) > 0) { 
      $row = mysql_fetch_assoc($query); 
      echo "<table class=\"optable\"> 
       <tr> 
       <th>Device ID</th> 
       <th>Name</th> 
       <th>Type</th> 
       <th>Make & Model</th> 
       <th>Memory</th> 
      </tr>"; 

      while($row = mysqli_fetch_array($result)) { 
        echo "<tr>"; 
        echo "<td>" . $row['device_id'] . "</td>"; 
        echo "<td>" . $row['device_name'] . "</td>"; 
        echo "<td>" . $row['device_type'] . "</td>"; 
        echo "<td>" . $row['make_model'] . "</td>"; 
        echo "<td>" . $row['memory'] . "</td>"; 
        echo "</tr>"; 
      } 

      echo "</table>"; 
     } else { 
      echo 'null'; 
     } 
} 

И script1 .js должно быть:

function updatefrm2($name) { 
    var name = $("#" + $name).val(); 

    if ($.trim(name) !='') { 
     $.post("http://exemple.com/action/subs/name6.php", {name: name}, function(data) { 

      $("#mytable").html(data); 

     }); 
    }  
} 

Надеюсь, это поможет.

+0

Спасибо Закария Он работал отлично – Jean

0

Использование append.

function updatefrm2($name) { 
    var name = $("#" + $name).val(); 
    if ($.trim(name) !='') { 
    $.post('http://exemple.com/action/subs/name6.php', {name: name},  function(data) { 

    $('#yourtableid').append('<tr>\ 
           <td>'+data.device_id+'</td>\ 
           <td>'+data.device_name+'</td>\ 
           <td>'+data.device_type+'</td>\ 
           <td>'+data.make_model+'</td>\ 
           <td>'+data.memory+'</td>\ 
           </tr>'); 
    }); 
}  
} 
+0

Я думаю, что ОП хочет добавить полную таблицу в DIV, а не строку таблицы. –

+0

О, хотя я так и вызываю в name6.php, он получает только первую строку, а затем возвращает ее как Json ... Поэтому ответ Закарии может помочь ему –

+0

Ответ Zakaria работал хорошо. Он показывает таблицу со всеми строками, как я хотел. – Jean

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