Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы » Как запретить complaint не авторизированным?

Как запретить complaint не авторизированным?


     22.09.2016    Общие вопросы, Общие вопросы по PHP    1681

вопрос
Ищу на оборот. Что бы гость не мог отправлять жалобу об ошибки.
https://dle-faq.ru/faq/common/447-kak-razreshit-gostyam-polzovatsya-funkciey-zhaloby-complaint.html
Все стоит противоположно этому. DLE 11.1.

Ответил: irrwisch


в /engine/ajax/complaint.php найти

} elseif ($_POST['action'] == "orfo") {

    if(!$text) die( "error" );

    $seltext = convert_unicode( $_POST['seltext'], $config['charset'] );
    $seltext = htmlspecialchars( $parse->process( trim( $seltext ) ), ENT_QUOTES, $config['charset'] );
    $url = $db->safesql( htmlspecialchars( $parse->clear_url( trim( $_POST['url'] ) ), ENT_QUOTES, $config['charset'] ) );

    if(!$seltext) die( "error" );

    if( !$is_logged ) $author = $_IP; else $author = $db->safesql($member_id['name']);

    $row = $db->super_query( "SELECT COUNT(*) as count FROM " . PREFIX . "_complaint WHERE p_id='0' AND c_id='0' AND n_id='0' AND `from`='{$author}'" );

    if ($row['count'] > 2 ) { echo $lang['error_complaint_1']; die(); }

    $seltext = "<div class=\"quote\">".stripslashes( $seltext )."</div>";
    $text = $db->safesql( $seltext.$text );

    $db->query( "INSERT INTO " . PREFIX . "_complaint (`p_id`, `c_id`, `n_id`, `text`, `from`, `to`, `date`) values ('0', '0', '0', '{$text}', '{$author}', '{$url}', '{$_TIME}')" );

    if ( $config['allow_complaint_mail'] ) {
        $mail->send( $config['admin_mail'], $lang['mail_complaint'], $lang['mail_complaint_1'] );    
    }

}

заменить на

} elseif ($_POST['action'] == "orfo") {

    if(!$text) die( "error" );
    if( !$is_logged ) {echo "<a href='/index.php?do=register'>Зарегистрируйтесь</a>, либо выполните вход для отправки.";}
    else {

    $seltext = convert_unicode( $_POST['seltext'], $config['charset'] );
    $seltext = htmlspecialchars( $parse->process( trim( $seltext ) ), ENT_QUOTES, $config['charset'] );
    $url = $db->safesql( htmlspecialchars( $parse->clear_url( trim( $_POST['url'] ) ), ENT_QUOTES, $config['charset'] ) );

    if(!$seltext) die( "error" );

    $author = $db->safesql($member_id['name']);

    $row = $db->super_query( "SELECT COUNT(*) as count FROM " . PREFIX . "_complaint WHERE p_id='0' AND c_id='0' AND n_id='0' AND `from`='{$author}'" );

    if ($row['count'] > 2 ) { echo $lang['error_complaint_1']; die(); }

    $seltext = "<div class=\"quote\">".stripslashes( $seltext )."</div>";
    $text = $db->safesql( $seltext.$text );

    $db->query( "INSERT INTO " . PREFIX . "_complaint (`p_id`, `c_id`, `n_id`, `text`, `from`, `to`, `date`) values ('0', '0', '0', '{$text}', '{$author}', '{$url}', '{$_TIME}')" );

    if ( $config['allow_complaint_mail'] ) {
        $mail->send( $config['admin_mail'], $lang['mail_complaint'], $lang['mail_complaint_1'] );    
    }
    }
}
Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх