ramzes, для тех кто с js норм знаком, да, но по мне прям отдачу через echo в php организовать, и дергать аяксом
чисто имхо для меня, конечно json кошернее)
Andrei4ik93, попробуй так, с пхп разберешься я думаю
<html>
<script type="text/javascript">
/* <![CDATA[ */
$.ajax({
url: "users_ajax.php",
type: "GET",
data: {
/* args */
},
dataType: "html"
}).done(function (data) {
$('#users_ajax').html(data);
$('#users_ajax').attr('disabled', false);
}
);
/* ]]> */
</script>
</html>
# venom (23.10.2015 / 01:13)
А если пользователей 100500, резать как то нужно...
GET /ajax/userlist.php
type: list
start: 50
end: 100
допустим такого формата запросы и соответственная обработка, можно крутить как угодно. это тот же самый "апи"
Koenig, а дисаблед зачем?
ramzes, да я со своих заначек нарыл
# venom (23.10.2015 / 03:21)
Примерно так..
[php]<script>
$(document).ready(function () {
$("button#users").on('click', function () {
event.preventDefault();
$.ajax({
Но у меня не mysql,а пдо.
Может какк то неправильно настроено подключение, у меня массив с базы какой то левый идет
# Koenig (23.10.2015 / 01:23)
ramzes, для тех кто с js норм знаком, да, но по мне прям отдачу через echo в php организовать, и дергать аяксом
чисто имхо для меня, конечно json кошернее)
Вот вот,мне html не охота.
Andrei4ik93, А какая разница и откуда что json_encode загонять...
Запрос напиши свой ....
Andrei4ik93, Работает на Джонни с корня сайта.., на другом не проверял , стандартная таблица
users...
Файл ajax.php (+/-)
if (isset($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {
if (isset($_POST['test']) && trim($_POST['test']) == 'ok') {
define('_IN_JOHNCMS', 1);
require('incfiles/db.php');
try {
$db = new PDO('mysql:host=' . $db_host . ';dbname=' . $db_name, $db_user, $db_pass);
} catch (PDOException $e) {
exit(stripslashes(json_encode($e->getMessage())));
}
$s = isset($_POST['s']) ? abs(intval($_POST['s'])) : false;
$k = isset($_POST['k']) ? abs(intval($_POST['k'])) : false;
$array = [];
$q = $db->prepare("SELECT id, name, sex, datereg, mail FROM users ORDER BY id ASC LIMIT ?, ?");
$q->bindValue(1, $s, PDO:ARAM_INT);
$q->bindValue(2, $k, PDO:ARAM_INT);
$q->execute();
$data = $q->fetchAll();
foreach ($data as $row) $array[] = $row;
exit(json_encode($array));
}
}
Файл users.php (+/-)
<button id="users" type="button">Показать</button>
<table width="100%" class="table" style="display: none;text-align: center;">
<thead>
<tr>
<th>#</th>
<th>Логин</th>
<th>Пол</th>
<th>Дата</th>
<th>Email</th>
<th>Действие</th>
</tr>
</thead>
<tbody id="result"></tbody>
</table>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script>
$(document).ready(function () {
$.date = function (dateObject) {
var d = new Date(dateObject * 1000), day = d.getDate(), month = d.getMonth() + 1, year = d.getFullYear();
if (day < 10) day = '0' + day;
if (month < 10) month = '0' + month;
return day + '-' + month + '-' + year;
};
var start = 0, kmess = 5;
$("button#users").on('click', function () {
event.preventDefault();
$.ajax({
type: "POST", url: "ajax.php", dataType: "json",
data: ({test: "ok", s: start, k: kmess}),
success: function (data) {
start = start + 5;
var users = $('#users'), len = data.length;
$('.table').show("slow");
for (var i = 0; i < len; i++) {
var datereg = $.date(data[i].datereg), id = data[i].id, name = data[i].name, sex = data[i].sex, mail = data[i].mail;
$('#result').append('<tr><th>' + id + '</th>' +
'<td><a href="#" target="_blank">' + name + '</a></td>' +
'<td>' + (sex == 'm' ? 'Men' : 'Women') + '</td>' +
'<td>' + datereg + '</td>' +
'<td>' + mail + '</td>' +
'<td><a href="#">DEL</a> | <a href="#">EDIT</a></td></tr>');
//console.log(data)
}
(len === 0) ? users.text('Все !!!') : users.text('Показать еще');
}
});
});
});
</script>
Скрин ниже...