Используйте операцию LEFT JOIN для создания левого внешнего объединения, при котором все записи из первой (левой) таблицы включаются в динамический набор, даже если во второй (правой) таблице нет соответствующих им записей. - по-моему это не про меня...
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.'),
может так? всего лишь строчку на страницу добавить
<script> document.title="текст titl'а";</script>
Видны только ссылки и кое-как заголовки статей.
А тексты даже читать не стал, ибо зрение дороже.
Чёрный шрифт на тёмно-коричневом фоне сливается в одну нераспознаваемую массу.
А какой цвет текста посоветуете?
Плохи читать на вашем сайте
Я вот тоже думал так... скоро все будем кардинально переделывать.
Спасибо за комментарии:)
А линк не додумались оставить? или тот, что в полписи?
Дизайн вообще никакой...
Много народу-то уже дневники завело себе? :)
Там статистика на главной в правом блоке. Дизайн - типичный блоговский, то есть стандартный.
Примет. И со временем проиндексирует. Как вариант, сделать карту сайта в xml и скормить её сервису Я.Вебмастер.
Дневники постоянно появляются новые, как я сделаю единую карту сайта?
У каждого карта сайта, я же не вобью пять сотен карт дневников
neolord, с объединением что-то не понял, а проблему решил так:
function view_lposts($params)
{
global $DB;
$res = mysql_query("SELECT post_title, post_creator_user_ID, post_ID
FROM evo_items__item
WHERE post_status = 'published'
ORDER BY evo_items__item.post_datecreated DESC
LIMIT 0 , 20");
echo $params['block_title_start'];
echo $params['block_title_end'];
echo '<ul>';
$h=0;
while ($row = mysql_fetch_object($res) and $h<10) {
if($row->post_title){
$resu = mysql_query("SELECT blog_ID
FROM evo_blogs
WHERE blog_owner_user_ID = $row->post_creator_user_ID
LIMIT 0,1");
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>'; $h=$h+1;}}}
echo '</ul>';
}
гуглим на тему Left Join
Используйте операцию LEFT JOIN для создания левого внешнего объединения, при котором все записи из первой (левой) таблицы включаются в динамический набор, даже если во второй (правой) таблице нет соответствующих им записей. - по-моему это не про меня...
Подскажите, мне нужно задать условие, чтоб определенный текст выводился только на главной.
Селал так:
<?php if ($_SERVER['REQUEST_URI'] == '/') { ?>
Текст
<?php } ?>
Но работает только если сайт на основном домене, а как правильно написать условие для субдомена?
неужели нет никакой переменной, которая указывала бы на директория сайта?( если это движок)
Сделай
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>';
}
}
?>
блин:(
вот такой код работал...
$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>';
}