mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-28 14:18:52 +00:00
speed improvement... slap me for not seeing the user var. ;)
git-svn-id: file:///svn/phpbb/trunk@4699 89ea8834-ac86-4346-8a33-228a782c2dd0
This commit is contained in:
parent
eaf3efe6e0
commit
3f6e946889
1 changed files with 13 additions and 15 deletions
|
@ -584,30 +584,28 @@ if ($submit || $preview || $refresh)
|
||||||
if ($mode != 'edit' && !$preview && !$refresh && $config['flood_interval'] && !$auth->acl_get('f_ignoreflood', $forum_id))
|
if ($mode != 'edit' && !$preview && !$refresh && $config['flood_interval'] && !$auth->acl_get('f_ignoreflood', $forum_id))
|
||||||
{
|
{
|
||||||
// Flood check
|
// Flood check
|
||||||
|
$last_post_time = 0;
|
||||||
|
|
||||||
if ($user->data['user_id'] != ANONYMOUS)
|
if ($user->data['user_id'] != ANONYMOUS)
|
||||||
{
|
{
|
||||||
$sql = 'SELECT user_lastpost_time AS last_post_time
|
$last_post_time = $user->data['user_lastpost_time'];
|
||||||
FROM ' . USERS_TABLE . '
|
|
||||||
WHERE user_id = ' . $user->data['user_id'];
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// NOTE: probably faster (to be tested) -- Ashe
|
|
||||||
// a compound index on (poster_ip, post_time) might help too
|
|
||||||
$sql = 'SELECT post_time AS last_post_time
|
$sql = 'SELECT post_time AS last_post_time
|
||||||
FROM ' . POSTS_TABLE . "
|
FROM ' . POSTS_TABLE . "
|
||||||
WHERE poster_ip = '" . $user->ip . "'
|
WHERE poster_ip = '" . $user->ip . "'
|
||||||
AND post_time > " . ($current_time - $config['flood_interval']);
|
AND post_time > " . ($current_time - $config['flood_interval']);
|
||||||
|
$result = $db->sql_query_limit($sql, 1);
|
||||||
$sql = 'SELECT MAX(post_time) AS last_post_time
|
if ($row = $db->sql_fetchrow($result))
|
||||||
FROM ' . POSTS_TABLE . "
|
{
|
||||||
WHERE poster_ip = '" . $user->ip . "'";
|
$last_post_time = $row['last_post_time'];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
$result = $db->sql_query_limit($sql, 1);
|
|
||||||
|
|
||||||
if ($row = $db->sql_fetchrow($result))
|
if ($last_post_time)
|
||||||
{
|
{
|
||||||
if (intval($row['last_post_time']) && ($current_time - intval($row['last_post_time'])) < intval($config['flood_interval']))
|
if ($last_post_time && ($current_time - $last_post_time) < intval($config['flood_interval']))
|
||||||
{
|
{
|
||||||
$error[] = $user->lang['FLOOD_ERROR'];
|
$error[] = $user->lang['FLOOD_ERROR'];
|
||||||
}
|
}
|
||||||
|
@ -2061,12 +2059,12 @@ function submit_post($mode, $message, $subject, $username, $topic_type, $bbcode_
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// NOTE: Delete topic shadows when made global? If so, we probably need an index on topic_moved_id (Ashe)
|
// Delete topic shadows (if any exist). We do not need a shadow topic for an global announcement
|
||||||
/* if ($make_global)
|
if ($make_global)
|
||||||
{
|
{
|
||||||
$db->sql_query('DELETE FROM ' . TOPICS_TABLE . '
|
$db->sql_query('DELETE FROM ' . TOPICS_TABLE . '
|
||||||
WHERE topic_moved_id = ' . $data['topic_id']);
|
WHERE topic_moved_id = ' . $data['topic_id']);
|
||||||
}*/
|
}
|
||||||
|
|
||||||
// Fulltext parse
|
// Fulltext parse
|
||||||
if ($data['message_md5'] != $data['post_checksum'] && $data['enable_indexing'])
|
if ($data['message_md5'] != $data['post_checksum'] && $data['enable_indexing'])
|
||||||
|
|
Loading…
Add table
Reference in a new issue