ramzes, для тех кто с js норм знаком, да, но по мне прям отдачу через echo в php организовать, и дергать аяксом
чисто имхо для меня, конечно json кошернее)
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)GET /ajax/userlist.php
А если пользователей 100500, резать как то нужно...
Koenig, а дисаблед зачем?
ramzes, да я со своих заначек нарыл
Примерно так..
<script>
$(document).ready(function () {
$("button#users").on('click', function () {
event.preventDefault();
$.ajax({
type: "POST",
url: "ajax.php",
dataType: "json",
data: ({
test: "ok"
}),
success: function (data) {
var len = data.length;
for (var cnt = 0; cnt < len; cnt++) {
$('#list').append('<p><span style="margin-left: 5px;">' + data[cnt].id + '</span>' +
'<span style="margin-left: 5px;">' + data[cnt].name + '</span>' +
'<span style="margin-left: 5px;">' + data[cnt].sex + '</span>' +
'<span style="margin-left: 5px;">' + data[cnt].lastdate + '</span>' +
'<span style="margin-left: 5px;">' + data[cnt].status + '</span>' +
'<span style="margin-left: 5px;">' + data[cnt].rights + '</span>' +
'</p>');
}
}
});
});
});
</script>$test = isset($_POST['test']) ? trim($_POST['test']) : '';
if($test == 'ok'){
$req = mysql_query("SELECT `id`, `name`, `sex`, `lastdate`, `datereg`, `status`, `rights` FROM `users` ORDER BY `id` DESC LIMIT 0, 9");
$rows = array();
while ($res = mysql_fetch_array($req))
$rows[] = $res;
exit(json_encode($rows));
}# venom (23.10.2015 / 03:21)Но у меня не mysql,а пдо.
Примерно так..
[php]<script>
$(document).ready(function () {
$("button#users").on('click', function () {
event.preventDefault();
$.ajax({
# Koenig (23.10.2015 / 01:23)Вот вот,мне html не охота.
ramzes, для тех кто с js норм знаком, да, но по мне прям отдачу через echo в php организовать, и дергать аяксом
чисто имхо для меня, конечно json кошернее)
Andrei4ik93, А какая разница и откуда что json_encode загонять...
Запрос напиши свой ....
Andrei4ik93, Работает на Джонни с корня сайта.., на другом не проверял , стандартная таблица users...
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));
}
}<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>