Seite 2 von 2
Verfasst: 03.11.2006 08:02
von senyafin
[Problem - solved]
Mod funktioniert mit 2.021!
Problem: fehlerhafte Platzierung des Codes in der search.php
Danke an alle die sich Gedanken gemacht haben!
LG
Pascal
Verfasst: 07.11.2006 23:24
von senyafin
Ein kleiner Fehler taucht doch auf.
Wenn ich die Bookmarks markiere und dann auf Löschen drücke kommt diese Meldung
You cannot make another search so soon after your last; please try again in a short while.
Der Delete Befehl wird doch sicher durch diesen Abschnitt initiiert?
Code: Alles auswählen
if ( $mode == 'removebm' )
{
// Delete Bookmarks
$delete = ( isset($HTTP_POST_VARS['delete']) ) ? TRUE : FALSE;
if ( $delete && isset($HTTP_POST_VARS['topic_id_list']))
{
$topics = $HTTP_POST_VARS['topic_id_list'];
for($i = 0; $i < count($topics); $i++)
{
$topic_list .= ( ( $topic_list != '' ) ? ', ' : '' ) . intval($topics[$i]);
}
if ( $userdata['session_logged_in'] )
{
remove_bookmark($topic_list);
}
else
{
redirect(append_sid("login.$phpEx?redirect=search.$phpEx?search_id=bookmarks", true));
}
}
// Reset settings
$mode = '';
}
Verfasst: 23.11.2006 22:21
von senyafin
Ich schiebe das Thema nochmal, da beim Löschen der Bookmarks über den Delete Button noch immer obige Fehlermeldung auftaucht.
Hch wollte die Hoffnung nicht gänzlich begraben un den irgendwann zum Laufen zu bringen
Verfasst: 24.11.2006 14:27
von easygo
senyafin hat geschrieben:You cannot make another search so soon after your last; please try again in a short while.
Der Delete Befehl wird doch sicher durch diesen Abschnitt initiiert?
...
Jo und weiter? Lies doch mal die General Message..
Ich würde einfach verhindern, dass die Search Flood Control anspringt bei der MOD
Also den Code
Code: Alles auswählen
//
// Flood control
//
$where_sql = ($userdata['user_id'] == ANONYMOUS) ? "se.session_ip = '$user_ip'" : 'se.session_user_id = ' . $userdata['user_id'];
$sql = 'SELECT MAX(sr.search_time) AS last_search_time
FROM ' . SEARCH_TABLE . ' sr, ' . SESSIONS_TABLE . " se
WHERE sr.session_id = se.session_id
AND $where_sql";
if ($result = $db->sql_query($sql))
{
if ($row = $db->sql_fetchrow($result))
{
if (intval($row['last_search_time']) > 0 && ($current_time - intval($row['last_search_time'])) < intval($board_config['search_flood_interval']))
{
message_die(GENERAL_MESSAGE, $lang['Search_Flood_Error']);
}
}
}
ersetzen durch
Code: Alles auswählen
if ($search_id != 'bookmarks')
{
//
// Flood control
//
$where_sql = ($userdata['user_id'] == ANONYMOUS) ? "se.session_ip = '$user_ip'" : 'se.session_user_id = ' . $userdata['user_id'];
$sql = 'SELECT MAX(sr.search_time) AS last_search_time
FROM ' . SEARCH_TABLE . ' sr, ' . SESSIONS_TABLE . " se
WHERE sr.session_id = se.session_id
AND $where_sql";
if ($result = $db->sql_query($sql))
{
if ($row = $db->sql_fetchrow($result))
{
if (intval($row['last_search_time']) > 0 && ($current_time - intval($row['last_search_time'])) < intval($board_config['search_flood_interval']))
{
message_die(GENERAL_MESSAGE, $lang['Search_Flood_Error']);
}
}
}
}
und dann nochmal testen. easy
Verfasst: 24.11.2006 14:43
von senyafin
Genau daran hat es gelegen!
1000 Dank dir easygo - jetzt kann ich das Thema auch abhaken.
Das Wochenende wäre damit gerettet.
LG
Pascal