Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Какой json вернет php? / 7 сообщений из 7, страница 1 из 1
22.09.2014, 18:01
    #38753823
wvetal
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Какой json вернет php?
Подскажите какой json вернет php? Интересует структура json. Данные можете привести любые свои, например, если SELECT возвращает 2 строчки. То что приходит в GET - тоже любые значения.

Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
$page = $_GET['page']; // get the requested page
$limit = $_GET['rows']; // get how many rows we want to have into the grid
$sidx = $_GET['sidx']; // get index row - i.e. user click to sort
$sord = $_GET['sord']; // get the direction
if(!$sidx) $sidx =1;
// connect to the database
$db = mysql_connect($dbhost, $dbuser, $dbpassword)
or die("Connection Error: " . mysql_error());

mysql_select_db($database) or die("Error conecting to db.");
$result = mysql_query("SELECT COUNT(*) AS count FROM invheader a, clients b WHERE a.client_id=b.client_id");
$row = mysql_fetch_array($result,MYSQL_ASSOC);
$count = $row['count'];

if( $count >0 ) {
	$total_pages = ceil($count/$limit);
} else {
	$total_pages = 0;
}
if ($page > $total_pages) $page=$total_pages;
$start = $limit*$page - $limit; // do not put $limit*($page - 1)
$SQL = "SELECT a.id, a.invdate, b.name, a.amount,a.tax,a.total,a.note FROM invheader a, clients b WHERE a.client_id=b.client_id ORDER BY $sidx $sord LIMIT $start , $limit";
$result = mysql_query( $SQL ) or die("Couldn t execute query.".mysql_error());

$responce->page = $page;
$responce->total = $total_pages;
$responce->records = $count;
$i=0;
while($row = mysql_fetch_array($result,MYSQL_ASSOC)) {
    $responce->rows[$i]['id']=$row[id];
    $responce->rows[$i]['cell']=array($row[id],$row[invdate],$row[name],$row[amount],$row[tax],$row[total],$row[note]);
    $i++;
}        
echo json_encode($responce);
...
Рейтинг: 0 / 0
22.09.2014, 18:04
    #38753827
alex564657498765453
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Какой json вернет php?
я так понимаю вариант перебробовать в отдельном файлике что и как возвращает джейсон не судьба?!

пхп и джейсон не взаимосвязанные вещи, есть формат джейсон, есть для не пхп функция, кодирующая и декодирующая в этот формат.
...
Рейтинг: 0 / 0
22.09.2014, 18:16
    #38753844
wvetal
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Какой json вернет php?
alex564657498765453я так понимаю вариант перебробовать в отдельном файлике что и как возвращает джейсон не судьба?!
В данный момент нет возможности проверить/запустить эту функцию пхп - нет сервера для пхп. Я вообще на другом языке пишу, и делаю по аналогии.
Просто нужно знать какая структура json получится на выходе для этого контретного случая.
...
Рейтинг: 0 / 0
22.09.2014, 19:43
    #38753918
alex564657498765453
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Какой json вернет php?
аа ну поверь наслово, стандартная. при чтении масива результата из базы, везде текст будет
только вот тот айди что ++ на каждой итерации будет числом. но для джейсона это всёравно как текст пойдёт.

Так что действительно стандартное...чтото типа(упрощённо)

string(124) "{"1":{"id":12,"cell":{"a":"a","b":"b"}},"2":{"id":13,"cell":{"a":"aa","b":"bb"}},"3":{"id":14,"cell":{"a":"aaa","b":"bbb"}}}"

1 2 3 это значение того и++
айди понятно, селл тоже понятно думаю
...
Рейтинг: 0 / 0
22.09.2014, 21:05
    #38753983
Hett
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Какой json вернет php?
Там индексный массив в cell, индексные массивы преобразуются к массивам в JS, а не к объектам.
...
Рейтинг: 0 / 0
22.09.2014, 21:10
    #38753987
Hett
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Какой json вернет php?
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
class O {};

$responce = new O();

$responce->page = 1;
$responce->total = 10;
$responce->records = 100;
$i=0;
foreach([1,2,3,4] as $row) {
    $responce->rows[$row]['id']=$row;
    $responce->rows[$row]['cell']=array('id','invdate', 'name');
}

var_dump(json_encode($responce));



Код: plaintext
string(220) "{"page":1,"total":10,"records":100,"rows":{"1":{"id":1,"cell":["id","invdate","name"]},"2":{"id":2,"cell":["id","invdate","name"]},"3":{"id":3,"cell":["id","invdate","name"]},"4":{"id":4,"cell":["id","invdate","name"]}}}"

PS^ ReponSe пишется
...
Рейтинг: 0 / 0
23.09.2014, 10:16
    #38754274
wvetal
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Какой json вернет php?
Спасибо.
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Какой json вернет php? / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]