Помощь Помогите пожалуйста

Тема в разделе "DLE", создана пользователем clubmen, 16 мар 2010.

Информация :
Актуальная версия DataLife Engine 12.0
( Final Release v.12.0 | Скачать DataLife Engine | Скачать 12.0 demo )
Нужно ли обновляться | Как обновиться | Изменения в шаблонах
> Нет русских символов <
[Приватная тема DLE (Все подробности в ЛС к модератору раздела)]

Версии 11.3 и ниже - уязвимы!

Локализации | F.A.Q. | Внешний вид
Правила раздела | Правила форума
Обсуждение хайда карается баном!
В каждом сообщении указывайте версию DLE, которого они касаются!
Статус темы:
Закрыта.
Модераторы: killoff
  1. clubmen

    clubmen

    Регистр.:
    18 янв 2010
    Сообщения:
    204
    Симпатии:
    40
    Прошу вашей помощи скачал и установил модуль _http://dle.in.ua/moduls/besplatnye/8445-modul-druzya-dle-8385.html этот но при добавлении пользователя Сан Саныч выдаёт ошибку mysql
    PHP:
    "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' 'admin', '1268685907', 'no', 'inbox')' at line 2"
    как исправить эту проблемку
     
  2. niza

    niza

    Регистр.:
    7 май 2009
    Сообщения:
    495
    Симпатии:
    115
    В строке или кавычек нет или неправильно поставлены или смотри файл с расширением sql - файл запросов. Там написан пояснительный комментарий, который начинается с !-- - может он и вызывает ошибку.
     
  3. clubmen

    clubmen

    Регистр.:
    18 янв 2010
    Сообщения:
    204
    Симпатии:
    40
    а поточнее можно что и где?
     
  4. Kolombo

    Kolombo Постоялец

    Регистр.:
    5 фев 2008
    Сообщения:
    64
    Симпатии:
    4
    скинь полностью sql запрос я поправлю
     
  5. clubmen

    clubmen

    Регистр.:
    18 янв 2010
    Сообщения:
    204
    Симпатии:
    40
    PHP:
    <?php
    error_reporting
    (E_ALL E_NOTICE);
    @
    ini_set('display_errors'true);
    @
    ini_set('html_errors'false);
    @
    ini_set('error_reporting'E_ALL E_NOTICE);
    define('DATALIFEENGINE'true);
    define('ROOT_DIR'dirname (__FILE__));
    define('ENGINE_DIR'ROOT_DIR.'/engine');
    $config['charset'] = "windows-1251";
    require_once(
    ENGINE_DIR.'/inc/include/functions.inc.php');
    include 
    ENGINE_DIR.'/classes/mysql.php';
    require_once(
    ENGINE_DIR.'/data/dbconfig.php');
    require_once(
    ENGINE_DIR.'/data/config.php');
    $tableSchema = array();
    $tableSchema[] = "INSERT INTO `".PREFIX."_email` VALUES (8, 'frnd_pm', 'Уважаемый {%username_to%}, \r\n<br />уведомляем вас о том, что вам было послано предложение дружбы от пользователя  \"{%username%}\" \r\n<br />\r\n<br />Вы можете <a href=\"{%aprove%}\">принять</a> или <a href=\"{%notaprove%}\">отклонить</a> предложение дружбы\r\n<br />\r\n<br />С уважением,\r\n<br />Администрация {%site%}');";
    $tableSchema[] = "INSERT INTO `".PREFIX."_email` VALUES (9, 'frnd_mail', 'Уважаемый {%username_to%}, \r\n<br />уведомляем вас о том, что вам было послано предложение дружбы от пользователя  \"{%username%}\" \r\n<br />\r\n<br />Вы можете <a href=\"{%aprove%}\">принять</a> или <a href=\"{%notaprove%}\">отклонить</a> предложение дружбы\r\n<br />\r\n<br />С уважением,\r\n<br />Администрация {%site%}');";
    $brow $db->super_query("SHOW TABLES LIKE '".PREFIX."_users_friends'");
    if (empty(
    $brow)){
        
    $tableSchema[] = "DROP TABLE IF EXISTS `" PREFIX "_users_friends;";
        
    $tableSchema[] = "CREATE TABLE `" PREFIX "_users_friends` (
          `user_id` mediumint(9) NOT NULL default '0',
          `friend_id` mediumint(9) NOT NULL default '0',
          `date` datetime NOT NULL default '0000-00-00 00:00:00',
          `approve` tinyint(1) NOT NULL default '0',
          `porder` mediumint(2) NOT NULL default '0',
          KEY `approve` (`approve`),
          KEY `user_id` (`user_id`)
        ) TYPE=MyISAM "
    ;
    }
    else {
        
    $crow $db->super_query("SHOW COLUMNS FROM ".PREFIX."_users_friends LIKE 'porder'");
        if (empty(
    $crow)){
            
    $tableSchema[] = "ALTER TABLE `".PREFIX."_users_friends` ADD `porder` MEDIUMINT( 2 ) DEFAULT '0' NOT NULL AFTER `approve` ;";
        }
    }
    foreach(
    $tableSchema as $table) {
            
    $db->query($table);
    }
    echo 
    "Установка успешно завершена";
    ?>
     
  6. clubmen

    clubmen

    Регистр.:
    18 янв 2010
    Сообщения:
    204
    Симпатии:
    40
    Помогите кто нибудь:thenks:
     
  7. azacg

    azacg Создатель

    Регистр.:
    21 дек 2008
    Сообщения:
    15
    Симпатии:
    1
    это не тот файл, надо во внутренних файлах модуля копать.
     
  8. clubmen

    clubmen

    Регистр.:
    18 янв 2010
    Сообщения:
    204
    Симпатии:
    40
    PHP:
    <?php
    /*
    =====================================================
     DataLife Engine - by SoftNews Media Group 
    -----------------------------------------------------
     Доработка и адаптация: eXteRnaL ICQ: 395951912
    -----------------------------------------------------
     Copyright (c) 2004,2007 SoftNews Media Group
    =====================================================
     Данный код защищен авторскими правами
    =====================================================
    */

    final class Friends extends db
    {
        private 
    $chpu;
        private 
    $self_path;
        private 
    $member_id;
        private 
    $is_logged;
        private 
    $is_friend false;
        private 
    $user_name;
        public 
    $err false;
        private 
    $lng;
        
        function 
    __construct($sys_conf$member_id$is_logged$lng){
            
    $this->user_name urldecode($_REQUEST['user']);
            if (
    $this->user_name == $member_id['name'] || !$is_logged$this->is_friend true;
            
    $this->member_id $member_id;
            
    $this->is_logged $is_logged;
            
    $this->chpu $sys_conf['allow_alt_url'];
            if (
    $this->chpu == 'yes'$this->self_path $sys_conf['http_home_url']."friends/";
            else 
    $this->self_path $sys_conf['http_home_url']."?do=friends";
            
    $this->engine_path $sys_conf['http_home_url'];
            
    $this->lng $lng;
        }
        
        public function 
    GetList() {
            
    $fr_link = array();
            
            
    $result $this->query("SELECT u.name, f.friend_id FROM ".PREFIX."_users_friends f, ".PREFIX."_users u 
                            WHERE f.user_id = (SELECT user_id FROM "
    .PREFIX."_users WHERE name = '{$this->user_name}')
                            AND f.approve = 1 AND u.user_id = f.friend_id ORDER BY u.name"
    );

            while (
    $row $this->get_row($result)){
                if (!
    $this->is_friend && $row['name'] == $this->member_id['name']) $this->is_friend true;
                if (
    $this->user_name != $this->member_id['name'] || !$this->is_logged$del_link "";
                else {
                    
    $fr_key base64_encode($row['friend_id'].'#no#'.$this->member_id['user_id']);
                    if (
    $this->chpu == 'yes'$del_link " <a href='{$this->self_path}delete/$fr_key' style='color:red'>(X)</a>";
                    else 
    $del_link " <a href='{$this->self_path}&op=delete&key=$fr_key' style='color:red'>(X)</a>";
                }
                
                
    $l_name urlencode($row['name']);
                if (
    $this->chpu == 'yes'$fr_link[] = "<a href='{$this->engine_path}user/$l_name/'>$row[name]</a>".$del_link;
                else 
    $fr_link[] = "<a href='{$this->engine_path}?subaction=userinfo&user=$l_name'>$row[name]</a>".$del_link;
            }
            
    $this->free($result);
            return 
    implode(", "$fr_link);
        }
        
        public function 
    Profile($tpl){
            
    $tpl->set("{friends}"$this->GetList());
            if (!
    $this->is_friend){
                
    $key base64_encode($this->member_id['user_id'].'#'.$this->user_name);
                
                if (
    $this->chpu == "yes"$inv_link $this->self_path."invite/$key";
                else 
    $inv_link $this->self_path."&op=invite&key=".$key;
                
    $tpl->set('[invfriend]'"<a href='$inv_link'>");
                
    $tpl->set('[/invfriend]''</a>');
            }
            else 
    $tpl->set_block("'\\[invfriend\\](.*?)\\[/invfriend\\]'si","");
        }
        
        public function 
    Invite($config){
            
    $ex explode('#'base64_decode($_REQUEST['key']));
            
    $friend_id intval($ex[0]);
            
    $to_user $this->safesql($ex[1]);
            
    $to_userid $this->super_query("SELECT user_id FROM ".PREFIX."_users WHERE name = '$to_user' LIMIT 1");

            if (
    $this->is_friend || $this->member_id['name'] == $to_user) {
                
    $this->err $this->lng['no_access'];
                return;
            }
            
            
    $row $this->super_query("SELECT approve FROM ".PREFIX."_users_friends WHERE friend_id = '$friend_id
                                        AND user_id = '
    {$to_userid['user_id']}' LIMIT 1");
            
            if (
    $row) {
                if (
    $row['approve'] == 1$this->err $this->lng['is_friend'];
                else 
    $this->err $this->lng['friend_send'];
                return;
            }

            
    $subject $this->lng['friend_subj'];
            
    $aprove base64_encode($this->member_id['user_id']."#yes#".$to_userid['user_id']);
            
    $notaprove base64_encode($this->member_id['user_id']."#no#".$to_userid['user_id']);
            
            
    $result $this->query("SELECT template, name FROM ".PREFIX."_email WHERE name IN ('frnd_mail', 'frnd_pm') LIMIT 2");

            
    $lname urlencode($this->member_id['name']);
            if (
    $this->chpu == "yes") {
                
    $from_link "<a href='{$this->engine_path}user/$lname/'>{$this->member_id['name']}</a>";    
                
    $aprove_lnk $this->self_path."approve/$aprove";
                
    $noaprove_lnk $this->self_path."approve/$notaprove";
            }
            else {
                
    $aprove_lnk $this->self_path."&op=approve&key=$aprove";
                
    $noaprove_lnk $this->self_path."&op=approve&key=$notaprove";
                
    $from_link "<a href='{$this->engine_path}?subaction=userinfo&user=$lname'>{$this->member_id['name']}</a>";
            }
                    
            while (
    $tpl $this->get_row($result)){
                
    $mail_find = array('{%username_to%}','{%username%}','{%site%}','{%aprove%}','{%notaprove%}');
                
    $mail_replace = array($to_user$from_link$this->engine_path$aprove_lnk$noaprove_lnk);
                                    
                
    $tpl['template'] = stripcslashes($tpl['template']);
                
    $tpl['template'] = str_replace($mail_find$mail_replace$tpl['template']);

                if(
    $tpl['name'] == 'frnd_mail'){
                    
    $tpl['template'] = str_replace($mail_find$mail_replacestr_replace("\n","<br />",$tpl['template']));
                    
    $mail = new dle_mail ($config);
                    
    $mail->html_mail true;
                    
    $mail->send ($config['admin_mail'], $subject$tpl['template']);
                }
                elseif(
    $tpl['name'] == 'frnd_pm') {
                    
    $tpl['template'] = $this->safesql($tpl['template']);
                    
    $time time();
                    
    $this->query("INSERT INTO ".PREFIX."_pm (subj, text, user, user_from, date, pm_read, folder)
                                    VALUES ('
    $subject', '$tpl[template]',{$to_userid['user_id']}, '{$this->member_id['name']}', 
                                    '
    $time', 'no', 'inbox')");
                    
    $this->query("UPDATE ".PREFIX."_users SET pm_all = pm_all + 1, pm_unread = pm_unread + 1 
                                    WHERE user_id = 
    {$to_userid['user_id']}");
                }
            }
            
    $this->query("INSERT INTO ".PREFIX."_users_friends VALUES ('{$to_userid['user_id']}', '$friend_id', NOW(), 0, 0)");
            
    $this->query("INSERT INTO ".PREFIX."_users_friends VALUES ('$friend_id', '{$to_userid['user_id']}', NOW(), 0, 0)");
            
    $this->free();
            
    $this->err $this->lng['friend_send'];
        }
        
        public function 
    Aprove(){    
            
    $ex explode('#'base64_decode($_REQUEST['key']));
            
    $to_userid intval($ex[2]);
            
    $from_userid intval($ex[0]);
            
    $status $ex[1];

            
    $row $this->super_query("SELECT approve FROM ".PREFIX."_users_friends WHERE user_id = '$to_userid'
                                        AND friend_id = '
    $from_userid' LIMIT 1");
            
            if ((
    $this->is_friend || $row['approve'] == 1) && $status != 'no'){
                
    $this->err $this->lng['err_act'];
                return ;
            }
            
            if (
    $status == 'no' && $this->member_id['user_id'] == $to_userid){
                
    $this->query("DELETE FROM ".PREFIX."_users_friends WHERE user_id = '$to_userid' AND friend_id = '$from_userid'");
                
    $this->query("DELETE FROM ".PREFIX."_users_friends WHERE user_id = '$from_userid' AND friend_id = '$to_userid'");
            }
            else {
                
    $this->query("UPDATE ".PREFIX."_users_friends SET approve = 1 
                                WHERE user_id = '
    $to_userid' AND friend_id = '$from_userid'");
                
    $this->query("UPDATE ".PREFIX."_users_friends SET approve = 1 
                                WHERE user_id = '
    $from_userid' AND friend_id = '$to_userid'");
            }
            
    $this->free();
            
            if ((
    $to_userid 100) <  1$fldr 1;
            else 
    $fldr floor($to_userid 100) * 100;
            @
    unlink(ENGINE_DIR."/uploads/userpage/$fldr/$to_userid/cache/pp_friends.tmp");
            if ((
    $from_userid 100) <  1$fldr 1;
            else 
    $fldr floor($from_userid 100) * 100;
            @
    unlink(ENGINE_DIR."/uploads/userpage/$fldr/$from_userid/cache/pp_friends.tmp");
            
    $this->err $this->lng['friend_act'];
        }
    }
    ?>
    PHP:
    <?php
    /*
    =====================================================
     DataLife Engine - by SoftNews Media Group 
    -----------------------------------------------------
     Доработка и адаптация: eXteRnaL ICQ: 395951912
    -----------------------------------------------------
     Copyright (c) 2004,2007 SoftNews Media Group
    =====================================================
     Данный код защищен авторскими правами
    =====================================================
    */

    if(!defined('DATALIFEENGINE'))
    {  die(
    "Hacking attempt!"); }

    require_once 
    ENGINE_DIR.'/modules/friends/friends.class.php';
    include_once 
    ROOT_DIR.'/language/'.$config['langs'].'/friends.lng';

    $op = isset($_REQUEST['op']) ? $_REQUEST['op'] : $op;
    $friends = new Friends($config$member_id$is_logged$friends_lng);

    switch (
    $op){
        case 
    'userinfo':
            
    $friends->Profile($tpl);
            break;
            
        case 
    'invite':
            
    $friends->Invite($config);
            
    msgbox($friends_lng['invite'], $friends->err."<br /><a href=\"javascript:history.go(-1)\">$lang[all_prev]</a>");
            break;
            
        case 
    'approve':
            
    $friends->Aprove();
            
    msgbox($friends_lng['invite'], $friends->err."<br /><a href=\"javascript:history.go(-1)\">$lang[all_prev]</a>");
            break;
            
        case 
    'delete':
            
    $friends->Aprove();
            
    msgbox($friends_lng['invite'], $friends->err."<br /><a href=\"javascript:history.go(-1)\">$lang[all_prev]</a>");
            break;
    }

    function 
    __autoload($name) {
        switch (
    strtolower($name)){
            case 
    "dle_mail":
                include_once 
    ENGINE_DIR.'/classes/mail.class.php';
                break;
        }
    }
    ?>
     
  9. clubmen

    clubmen

    Регистр.:
    18 янв 2010
    Сообщения:
    204
    Симпатии:
    40
    Помогите кто нибудь
     
  10. admincib

    admincib Юзверь!

    Регистр.:
    18 апр 2009
    Сообщения:
    33
    Симпатии:
    42
    Иди спрашивай там, где качал!

    ps: Чего его еще никто не забанил за флуд ?
     
Статус темы:
Закрыта.