Вопрос по DLE API

su-root
На сайте с 15.08.2008
Offline
73
1481

Разрабатываю модуль под ДЛЕ Необходимо в базе данных выбрать какое-то количество строк и потом вывести их.

обычно это выглядит так:

$result = mysql_query("SELECT * FROM tablename ORDER BY id DESC", $db);

while ($myrow = mysql_fetch_array($result)) {
}

А как это же самое сделать в DLE?

$result = $dle_api->load_table ( $table="tablename", $fields="*", $limit="10", $sort_order="DESC");

эта строка выдает массив

while ($myrow = mysql_fetch_array($result)) { }

а вот эта пустоту.

Как это правильно сделать в DLE?

Кто ищет смысл, пусть сидит на небесах - в своих глазах!
siv1987
На сайте с 02.04.2009
Offline
427
#1

\engine\api\api.class.php

Открываем, смотрим, делаем.

* @return array с данными или false если mysql вернуль 0 рядов

function load_table ($table, $fields = "*", $where = '1', $multirow = false, $start = 0, $limit = 0, $sort = '', $sort_order = 'desc')

$rows = $dle_api->load_table('table', '*', '', true, 0, 0, 'id', 'DESC');

либо

$result = $dle_api->db->query('SELECT * FROM table ORDER BY id DESC');

su-root:
Разрабатываю модуль под ДЛЕ

Модули dle обычно встраиваются в ядро dle, и там доступны все системные переменные, включая объект $db

su-root
На сайте с 15.08.2008
Offline
73
#2

siv1987, Спасибо за быстрый ответ.

Спрошу по другому, потому как я не самый лучший разработчик php и под DLE.

Не могли бы вы за небольшое спасибо помочь мне под вашим чутким руководством разработать модуль?

мой скайп - tirasnet

siv1987
На сайте с 02.04.2009
Offline
427
#3

Предложение, конечно, заманчивое, но я сам не большой специалист по модулям ДЛЕ, так только то что доводилось устанавливать .

su-root
На сайте с 15.08.2008
Offline
73
#4

Почему то не сортирует :(

$myrow = $dle_api->load_table ( $table="table", $fields="*", $limit="10", $sort="id", $sort_order=DESC);
siv1987
На сайте с 02.04.2009
Offline
427
#5
$sort_order=DESC

DESC это строка, а значит ее надо обрамлять в кавычки.

$dle_api->load_table ( $table="table", $fields="*", $limit="10", $sort="id", $sort_order=DESC);

Здесь переменные лишние. Выше есть пример.

su-root
На сайте с 15.08.2008
Offline
73
#6

сортировка что с кавычками, что без них не работает.

$content = "<p align=\"right\"><a href=\"/admin.php?mod=events&add\">Добавить событие</a></p>";
$content = $content."<table width=\"100%\" cellpadding=\"0\" cellspacing=\"3\">";
$myrow = $dle_api->load_table ( $table="dle_events", $fields="*", $limit="10", $sort="id", $sort_order="DESC");
foreach($myrow as $value)
{
$content = $content."
<tr bgcolor=\"#E4E4E4\">
<td height=\"30\">&nbsp;&nbsp;<strong>$value[data]</strong> : <a href=\"$value
<td width=\"30\" height=\"30\" align=\"center\"><a href=\"/admin.php?mod=events&edit=$value[id]\"><img src=\"/uploads/edit.png\" width=\"20\" height=\"20\" /></a></td>
<td width=\"30\" height=\"30\" align=\"center\"><a href=\"/admin.php?mod=events&del=$value[id]\"><img src=\"/uploads/delete.png\" width=\"20\" height=\"20\" /></a></td>
</tr>";
}
$content = $content."</table>";
}" title="\" target=\"_blank\">$value[title]</a></td>
<td width=\"30\" height=\"30\" align=\"center\"><a href=\"/admin.php?mod=events&edit=$value[id]\"><img src=\"/uploads/edit.png\" width=\"20\" height=\"20\" /></a></td>
<td width=\"30\" height=\"30\" align=\"center\"><a href=\"/admin.php?mod=events&del=$value[id]\"><img src=\"/uploads/delete.png\" width=\"20\" height=\"20\" /></a></td>
</tr>";
}
$content = $content."</table>";
}" target="_blank">\" target=\"_blank\">$value[title]</a></td>
<td width=\"30\" height=\"30\" align=\"center\"><a href=\"/admin.php?mod=events&edit=$value[id]\"><img src=\"/uploads/edit.png\" width=\"20\" height=\"20\" /></a></td>
<td width=\"30\" height=\"30\" align=\"center\"><a href=\"/admin.php?mod=events&del=$value[id]\"><img src=\"/uploads/delete.png\" width=\"20\" height=\"20\" /></a></td>
</tr>";
}
$content = $content."</table>";
}

с переменными внутри запроса работает вот итог:

Читаю описание их АПИ и ничего в нем не понимаю :(

---------- Добавлено 26.10.2014 в 18:38 ----------

Не знаю как, но админку через ОПУ я закончил...

siv1987, Спасибо за помощь. Ваши советы оказались необходимыми.

---------- Добавлено 26.10.2014 в 18:39 ----------

Единственное с чем не разобрался так это с сортировкой. Она так и не пашет :(

siv1987
На сайте с 02.04.2009
Offline
427
#7
su-root:
с переменными внутри запроса работает вот итог:

Через одно место тоже может работать. Но это не значит что нужно делать через это места. Определение переменных при вызове функции явно лишние.

su-root:
Читаю описание их АПИ и ничего в нем не понимаю

Если не понимаете описание, смотрите код. Параметры вашей функции немного отличается от того что нынче в дле. Откройте файл и смотрите синтаксис вызываемой функции. Не можете разобраться с load_table делайте нативные sql запросы.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий