Здравствуйте!
Есть задача: при помощи ajax получать записи из бд Mysql. Сайт работает на codeigniter.
$('#TestPrivet1').click(function(){
var param = $('#pole1').val();
$.ajax({
type: 'POST',
url: 'http://masterstvo-zhizni.loc/index.php/seminars/showAjax',
data: {'param':param},
cache: false,
dataType: 'json',
success: function(data) {
$('#result1').html('<table class="raspisanie_sem"><tr class="one"><td>Дата проведения</td><td>Город</td><td>Организатор</td><td>Тема</td></table>');
for ( var key1 in data['dataAjax'] ) {
for ( var key2 in data['dataAjax'][key1] ) {
$('#result1').append('<tr class="tbody"><td>' + data['dataAjax'][key1]['date']+ '</td><td>'+ data['dataAjax'][key1]['gorod']+'</td><td class="cursiv">'+ data['dataAjax'][key1]['fio']+ data['dataAjax'][key1]['telefon']+data['dataAjax'][key1]['email']+'</td><td class="bold_td">'+data['dataAjax'][key1]['zagolovok']+'</td></tr>');
}
}
}
});//конец ajax
});//конец клик
});//конец ready
Контроллер:
public function showAjax(){
$param = $this->input->post('param');
$data = array();
$data['dataAjax'] = $this->raspisanie_model->get_one($param);
// Возвращаем ответ
echo json_encode($data);
}
Запрос к базе:
public function get_one($seminar_id) {
$this->db->select(' raspisanie.date
, organizator.gorod
, organizator.fio
, organizator.email
, organizator.telefon
, seminars.zagolovok');
$this->db->from('raspisanie');
$this->db->join('seminars', 'raspisanie.seminar_id = seminars.seminar_id');
$this->db->join('organizator', 'raspisanie.organizator_id = organizator.organizator_id');
$this->db->where('raspisanie.seminar_id',$seminar_id);
$query = $this->db->get();
return $query->result_array();
}
Проблема в следующем:
данные вставляются, но почему то приходит три строки. А при переборе массива каждая строка выводится на сайте по 6 раз.т.е. вместо 3-х нужных, получаю 18 строк в таблице на сайте.
firebug:
dataAjax
[Object { date="7-8-9 декабря 2012г.", gorod="Рязань", fio="Елена ", ещё...},
Object { date="14-15-16 декабря", gorod="Воронеж", fio="Фарида и Александр"
, ещё...},
Object { date="2-3 февраля", gorod="Одесса", fio="Татьяна "
, ещё...}]
0 Object { date="7-8-9 декабря 2012г.", gorod="Рязань", fio="Елена "
, ещё...}
1 Object { date="14-15-16 декабря", gorod="Воронеж", fio="Фарида и Александр", ещё...}
2 Object { date="2-3 февраля", gorod="Одесса", fio="Татьяна "
, ещё...}