Насколько я понял, улучшения по части безопасности. Искать по
$to_username
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
OMus-VeNuS писал(а):После замены ее на то чем надо - ошибка должна пропасть - отпишитесь о результатах
Нет. Вот что получилось:
Could not obtain users PM information
DEBUG MODE
SQL Error : 1054 Unknown column 'Array' in 'where clause'
SELECT user_id, username, user_notify_pm, user_email, user_lang, user_active FROM phpbb_users WHERE username IN (Array) AND user_id <> -1 ORDER BY username ASC
Line : 1213
File : privmsg.php
Терпение и труд - всё перетрут
Я на этом форуме уже чуть больше года.. спасибо вам за помощь!
IGO писал(а):SELECT user_id, username, user_notify_pm, user_email, user_lang, user_active FROM phpbb_users WHERE username IN (Array) AND user_id <> -1 ORDER BY username ASC
Найдите какими переменными формируется этот запрос, их пожалуйста сюда, их генерацию - тоже.
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Что-то вы напутали, в 1201-й у вас сортировка должна быть судя по коду ошибки, а вы показываете запрос. Или меняли файл уже после возникновения ошибки?
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
SQL Error : 1054 Unknown column 'Array' in 'where clause'
SELECT user_id, username, user_notify_pm, user_email, user_lang, user_active FROM phpbb_users WHERE username IN (Array) AND user_id <> -1 ORDER BY username ASC
[find]
$to_username = phpbb_clean_username($HTTP_POST_VARS['username']);
[replace with]
// Start replacement - Custom mass PM MOD
$to_username_array = explode (";", phpbb_clean_username($HTTP_POST_VARS['username']));
usort ($to_username_array);
foreach ($to_username_array as $name) $to_usernames .= "'".htmlspecialchars(trim($name))."',";
$to_usernames[strlen($to_usernames)-1]=" ";
// End replacement - Custom mass PM MOD
Вы же сделали изменения, опираясь вообще непонятно на что. Я вам точку поиска подсказал, а не на что надо менять...
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
// Start replacement - Custom mass PM MOD
$to_usernames_array = explode (';', phpbb_clean_username($HTTP_POST_VARS['username']));
$to_usernames = '';
for ($i=0; $i<count($to_usernames_array); $i++)
{
$to_usernames .= '\'' . htmlspecialchars(trim($to_usernames_array[$i])) . '\',';
}
$to_usernames = rtrim($to_usernames, ',');
// End replacement - Custom mass PM MOD
Была ошибка в неинициализированной переменной $to_usernames, а также вообще код местами несколько не верный. Пожалуйста тщательно проверьте работоспособность обновленного варианта, я мод не ставил.
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений