2013-04-06 6 views
0

У меня есть html-страница и php-страница. На странице html есть таблица, и php имеет запрос к таблице mysql. Я не знаю, как показать результаты запроса на моей странице html.Javascript получить значения из базы данных

HTML-страница имеет следующий частичный код:

<table class="table-striped" id="tabela_editavel_1"> 
    <thead> 
     <tr> 
      <th>Contacto</th> 
      <th>Dt Receção</th> 
      <th>Dt Validade</th> 
      <th>Refª Cliente</th> 
      <th>Num Proposta</th> 
      <th>Estado</th> 
     </tr> 
    </thead> 
    <tbody id="dados_tabela"> 

     <tr class=""> 
      <td id="xz"><input id="contacto"/></td> 
      <td id="xz"><input id="dtrececao"/></td> 
      <td id="xz"><input id="dtvalidade"/></td> 
      <td id="xz"><input id="ref_cli"/></td> 
      <td id="xz"><input id="numproposta"/></td> 
      <td id="xz"><input id="estado"/></td> 
     </tr> 

    </tbody> 
</table> 

<script> 
$.getJSON('php/c_listaconsultas.php', function(data) { 
    $('#contacto').val(data.nome); 
    $('#dtrececao').val(data.datarecepcao); 
    $('#dtvalidade').val(data.validadeconsulta); 
    $('#ref_cli').val(data.referenciaconsulta); 
    $('#numproposta').val(data.propostanumero); 
    $('#estado').val(data.estado);    
}); 
</script> 

Мой файл РНР код:

(...) 

mysql_select_db($database_connLOOPGEST, $connLOOPGEST); 
$query_rs_listaconsultas = sprintf("SELECT clientes_consultas.id_cliente, clientes_consultas.id_consulta, clientes_consultas.datarecepcao, clientes_consultas.referenciaconsulta, clientes_consultas.validadeconsulta, clientes_consultas.tituloconsulta, loop_propostas.propostanumero, clientes_contactos.nome, loop_propostas.id_proposta, status.descricao estado, clientes.nome_curto nome_cliente FROM (clientes_consultas left join clientes_contactos on clientes_consultas.id_contacto = clientes_contactos.id_contacto) left join loop_propostas on clientes_consultas.id_consulta = loop_propostas.id_consultacliente inner join status on status.id_status = clientes_consultas.estado inner join clientes on clientes.id_cliente = clientes_consultas.id_cliente WHERE clientes_consultas.id_cliente=%s ORDER BY clientes_consultas.datarecepcao DESC", GetSQLValueString($numcliente_rs_listaconsultas, "int")); 
$rs_listaconsultas = mysql_query($query_rs_listaconsultas, $connLOOPGEST) or die(mysql_error()); 
$row_rs_listaconsultas = mysql_fetch_assoc($rs_listaconsultas); 
$totalRows_rs_listaconsultas = mysql_num_rows($rs_listaconsultas); 

echo json_encode($row_rs_listaconsultas); 

Прежде всего, мой «эхо json_encode» не дает мне все Строки запроса, но только одно, как передать все строки запроса на мою страницу html? Что здесь отсутствует? : ((( Второй помощь мне нужно, как я могу показать эти значения в моей таблице я использую правильную функцию ($ getJSON)

Заранее спасибо Mário

ответ

1

Вы должны?.?. перебрать mysql_fetch_assoc что-то вроде:

while ($row = mysql_fetch_assoc($result)) { 
    $row_rs[] = $row; 
} 

И возвращенных данных будет массив, содержащий объекты Вы должны перебрать с ним:.

$.each(data, function(element) { /* do something */}) 
+0

Зачем перебирать его, когда он просто его кодирует? Намного лучше всего получить все результаты. Кроме того, зачем перебирать данные, когда вы можете просто получить доступ к свойствам? – 2013-04-06 23:04:01

+0

Радалин, спасибо за ваш ответ. Я ответил Нафану, и для вас это то же самое. Спасибо за помощь. –

1

Прежде всего, прекратите использование удлинителя mysql. Он устарел, и вместо этого вы должны использовать mysqli или PDO. Причина, по которой вы получаете только одну строку, состоит в том, что функция, которую вы используете, mysql_fetch_assoc возвращает только одну строку. Вы хотите mysqli_fetch_all или PDO equivalent. $.getJSON - это правильная функция для использования, и настройки значений, как вы, вероятно, должны работать, я бы console.log(data), чтобы узнать, что происходит не так.

+0

Натан, Спасибо за помощь. Я пытаюсь узнать что-то «по-своему», и я не знал о mysqli. Теперь я кое-что прочитал, и я буду использовать его. Я ценю ваш отзыв, еще раз спасибо. На данный момент я могу видеть свои данные в таблице, но теперь «поиск» и «разбивка на страницы» таблицы не работают, и говорит, что моя таблица имеет «0 строк». Я использую DataTables, и я читаю об этом и передаю правильные (по-видимому) значения (я проверил с console.log (data)). Я не знаю, в чем проблема на данный момент. –

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