помогите найти ошибку( php+mysql)

C
На сайте с 16.04.2009
Offline
7
640

битый час мучаюсь, не могу найти ошибку. помогите пожалуйста

function SkinTag( $params )

{

echo $params['block_start'];

echo $params['block_title_start'];

echo $params['title'];

echo $params['block_title_end'];

$this->view_lposts($params);

echo $params['block_end'];

}

function view_lposts($params)

{

global $DB;

$res = mysql_query("SELECT post_title, post_creator_user_ID, post_ID

FROM evo_items__item

WHERE post_title is not NULL

ORDER BY evo_items__item.post_datecreated DESC

LIMIT 0 , 5");

echo $params['block_title_start'];

echo $params['block_title_end'];

echo '<ul>';

while ($row = mysql_fetch_object($res)) {

$resu = mysql_query("SELECT blog_ID

FROM evo_blogs

WHERE $row->post_creator_user_ID = blog_owner_user_ID");

while ($rowa = mysql_fetch_object($resu)) {

echo '<li><a href="http://bloodtar.ru?blog='.$rowa->blog_ID.'&p='.$row->post_ID.'" >'.$row->post_title.'</a></li>';}}

echo '</ul>';

}

функция должна выводить последние 5 постов со всего сайта, причем те, у которых есть заголовок. выдает ошибку: Undefined property: stdClass::$blog_ID

мир вам и счастье
wdsg
На сайте с 09.02.2009
Offline
31
#1

Потёр. Невнимательный я какой :)

ТС, вываливайте структуру evo_blogs.

Проектирование и разработка сложных IT-систем. Вожусь с проблемными задачами.
embo
На сайте с 05.12.2008
Offline
24
#2

вообще у ТС другой запрос есть ))

интересует структура таблицы evo_blogs

Плавно двигаемся от сапы к статьям (http://miralinks.ru/users/registration/from:4223)
C
На сайте с 16.04.2009
Offline
7
#3
embo:
вообще у ТС другой запрос есть ))
интересует структура таблицы evo_blogs

раньше делал подобные виджеты и все работало

ссылка на картинки с структурой

http://imageshost.ru/links/6e544407d52c672dad5e78a4dc1e1856

http://imageshost.ru/links/fa03e449a4b48143e98cea3bae732c83

embo
На сайте с 05.12.2008
Offline
24
#4

интересно как. вроде должно работать...

C
На сайте с 16.04.2009
Offline
7
#5

блин:(

вот такой код работал...

$res = mysql_query("SELECT user_ID, user_login

FROM evo_users

WHERE user_validated = 1

ORDER BY dateYMDhour DESC

LIMIT 0 , 5");

echo $params['block_title_start'];

echo $params['title'];

echo $params['block_title_end'];

echo '<ol>';

while ($row = mysql_fetch_object($res)) {

$resu = mysql_query("SELECT blog_ID

FROM evo_blogs

WHERE $row->user_ID = blog_owner_user_ID");

while ($rowa = mysql_fetch_object($resu)) {

echo '<li><a href="http://bloodtar.ru/index.php?blog='.$rowa->blog_ID.'" >'.$row->user_login.'</a></li>';

}}

echo '</ol>';

}

embo
На сайте с 05.12.2008
Offline
24
#6

ну различия я так понимаю только в запросах

попробуйте вывести запрос к evo_blogs и скормить его phpmyadmin

grey109
На сайте с 15.06.2005
Offline
180
#7

Сделай

mysql_query("SELECT ...") or die(mysql_error());

grey109 добавил 06.06.2009 в 15:55

Да и вообще, хорошо бы делать так "... WHERE '".$row->post_creator_user_ID."' ...", а не как у вас.

C
На сайте с 16.04.2009
Offline
7
#8
grey109:
Сделай

mysql_query("SELECT ...") or die(mysql_error());

grey109 добавил 06.06.2009 в 15:55
Да и вообще, хорошо бы делать так "... WHERE '".$row->post_creator_user_ID."' ...", а не как у вас.

WHERE '.$row->post_creator_user_ID.' = blog_owner_user_ID" - вот такой вариант ошибок не выдает. да и вообще ничего не выдает. хотя хотя бы один результыт быть должен

creker добавил 07.06.2009 в 00:30

кому интересно - рабочий код, наконец-то...

<?php

if( !defined('EVO_MAIN_INIT') ) die( 'Please, do not access this page directly.' );

class random_diary_plugin extends Plugin

{

var $name = 'Random Diary';

var $code = 'rnd_d';

var $priority = 30;

var $version = '1.0';

var $author = 'bloodtar';

var $help_url = '';

var $group = 'widget';

var $apply_rendering = 'never';

var $number_of_installs = 1;

function PluginInit( & $params )

{

$this->short_desc = '5 random diary';

$this->long_desc = '5 random diary';

}

function GetDefaultSettings()

{

return array(

'title' => array(

'label' => $this->T_('Widget title'),

'defaultvalue' => $this->T_('random diary'),

'type' => 'text',

'note' => $this->T_('Widget title displayed in skin.'),

),

);

}

function get_widget_param_definitions( $params )

{

return array(

'title' => array(

'label' => $this->T_('Widget title'),

'defaultvalue' => $this->T_('Random diary'),

'type' => 'text',

'note' => $this->T_('Widget title displayed in skin.'),

),

);

}

function SkinTag( $params )

{

echo $params['block_start'];

echo $params['block_title_start'];

echo $params['title'];

echo $params['block_title_end'];

$this->view_random_diary($params);

echo $params['block_end'];

}

function view_random_diary($params)

{

global $DB;

$res = mysql_query("SELECT blog_ID, blog_name

FROM evo_blogs

order by rand() limit 5");

echo $params['block_title_start'];

echo $params['block_title_end'];

echo '<ul>';

while ($rowa = mysql_fetch_object($res))

{ echo '<li><a href="http://bloodtar.ru/index.php?blog='.$rowa->blog_ID.'" >'.$rowa->blog_name.'</a></li>';}

echo '</ul>';

}

}

?>

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