Xwab
Форумыnavigate_nextДругие CMS

код
Сообщения
Tepop1

помогите пожалуйста исправить ошибку в этом коде
$msg='Вам подарок от пользователя <b><a href="/info.php?id='.$user['id'].'">'.$user['nick'].'</a></b>';
когда приходит уведомление то пишет
Вам подарок от пользователя <b><a href="/info.php?id=1">Tepop</a></b>

06 Май 2011, 20:25
exelente

ХДд ошибку смотри в ленте самой.там наверняка код вывода в массиве таков echo "".esc(trim(br(bbcode(links(smiles(stripcslashes(htmlspecialchars($чето там за переменная))))))))."<br/>";

06 Май 2011, 21:51
Akdmeh

Двойная фильтрация; где-то уже текст фильтрировался, нужно проверить, где, и убрать одну фильтрацию.

06 Май 2011, 21:56
spik

htmlspecialchars используется после того, как функция бб кодов...
Либо ввод данных ктото-то пропустил через output_text();

06 Май 2011, 22:02
Tepop1

вот скрипт,если можите помогите

06 Май 2011, 22:03
spik

Tepop1, счас, редактор скачаю, погодь.
Журнал:

<?
//Мод Подарки для DCMS
//Автор:TBicTep
//ICQ:3492211
//Вы не имеете права распространять данный скрипт

/*
Интересный момент выше однако...
*/

include_once '../sys/inc/start.php';
include_once '../sys/inc/compress.php';
include_once '../sys/inc/sess.php';
include_once '../sys/inc/home.php';
include_once '../sys/inc/settings.php';
include_once '../sys/inc/db_connect.php';
include_once '../sys/inc/ipua.php';
include_once '../sys/inc/fnc.php';
include_once '../sys/inc/user.php';
only_reg();


$set['title']='Вам подарки';
include_once '../sys/inc/thead.php';
title();
err();
aut();

mysql_query("UPDATE `present_jurnal` SET `read` = '1' WHERE `id_user` = '$user[id]';");

$k_post=mysql_result(mysql_query("SELECT COUNT(*) FROM `present_jurnal` WHERE `id_user` = '$user[id]'"),0);
$k_page=k_page($k_post,$set['p_str']);
$page=page($k_page);
$start=$set['p_str']*$page-$set['p_str'];
if ($k_post==0)
{
echo "Здесь пусто\n";
}

$q=mysql_query("SELECT * FROM `present_jurnal` WHERE `id_user` = '$user[id]' ORDER BY `id` DESC LIMIT $start, $set[p_str]");
while ($post = mysql_fetch_array($q))
{
echo"".vremja($post['time'])."<br />\n";

/*
Было:
echo "$post[msg]<br />";
Стало:
*/
echo output_text($post['msg']).'<br />';
echo"<div class='p_t'></div>";
}

if ($k_page>1)str("?",$k_page,$page); // Вывод страниц
echo"<div class='foot'>\n";
echo"<a href='presentlist.php?user=$user[id]'>Мои подарки</a><br />\n";
echo"</div>\n";

include_once '../sys/inc/tfoot.php';
?>


__________
посл.ред. 06 Май 2011, 22:36; всего 2 раз(а) 06 Май 2011, 22:21
Tepop1

spik, если ты о этом "Вы не имеете права распространять данный скрипт" то автор сам его в паблик выклал

06 Май 2011, 22:33
spik

Блеадь! Не могу выложить второй скрипт, ОМ 5 beta, амперсанду и все что после нее срезает начисто
------
Там строчка есть:

$komm=stripcslashes(htmlspecialchars($_POST['komm']));
//ее удали


И в скрипте присутствует sql инъекция, если я не ошибаюсь))
А я не ошибаюсь))) Если строчка, которая озвучена выше, есть, то и sql есть, ибо экранирования кавычек нет  Твистер молодец)))

06 Май 2011, 22:37
Tepop1

spik, удалил строку,но не помогло

06 Май 2011, 22:55
spik

Tepop1, ты в журнале вывод сообщений через output_text() профильтровал?
//ааа... Вот...
$msg='Вам подарок от пользователя <b><a href="/info.php?id='.$user['id'].'">'.$user['nick'].'</a></b>';
Много нехорошего кода, упустил.

$msg='Вам подарок от пользователя [b][url=/info.php?id='.$user['id'].']'.$user['nick'].'[/url][/b]';

Вот так, бб надо повесить, и вывод через output_text() всегда в dcms делай..


__________
посл.ред. 06 Май 2011, 23:02; всего 2 раз(а) 06 Май 2011, 22:57
Ответить на тему