[Ищу] Oxy Classifieds Доска объявлений

исходники взяты с версии выложеной чуть выше в этой теме.
вот полный декод всех файликов в папке класс, токо дебаг нужен.
Погоди, но ведь файлы содержат закондированный код,
какой это декодинг?

пример:
iHo2hiRT01kvLQMi3oEg0e2bqN3oj6cZEYGAHXzBJ6b84jzCb0ej
QblPMpla4ttLU3sIMZP1GFDbhlke8iQDqRb9FnZyKTaJm1rgM7U38LHiq5K5MwYefY+bf8TletUB
5BN2GNIwwpRXxTCRm/RUqykw6GjaZcP3Jj3ojuZj1WKgveQapoUfOUEIkCaCSgsMJAtBk6NM6Syu
KfKr0ba8asrElF4ca0fEPTFX5+20jcYBHaTwMx2BUIjXTdAKKWjmGOvLpJtcNGvUgS1ywXiu/9Td
NKM9dLaPQ+jSrc3FrO0K8GyGt89LBmT2nlAi5BRnmy+riuwq2pq+yxj17eqGbetnFrukQzkVf7mS
W7xishZj9zhqtxrKx8TpJwwQ7B2VfJ77UuKH8ixI3efU+p+ha8xNmQByifPBXfh12p3Jq7EJX0/s
SSFg8SBujOkJ+OghchD9U09Y6AtLP4kE+pf+B96+nRhLUcH/o8X1SiQAaQFThosU+c9LOFyg6K+r
KqepGoVtex3046yBa1+HApy+bBzU5ZiPhRSYnHfb4K1Hy3ZRa5W+THdkRreG5TneK/VWpSUvWcdA
n3Q/nvFDWpQbleIF6CJAeTpSjAIrN6h/AW76I5Gf+HN2TTY5dA4kJs+dpy3H84cGhWmWgHnuP9VK
Ty1FCvW0DhzIHDq/rXtzMzg8Y2fquQAZtS5ZFm3zr2o51BGtcbrTaZZqEjYRtqUmaH8/tPZjMCLj
DjFhRN6qhBBZ16m7uRbN2VG6trhK/RXFYJRfm4BRgacS6gO4r5h4BbWNYHBRdp6L0gIG5Er0RjY8
HWeo4G5Yzed+cECAW2YJQce63802QsLmt9YP9KkRi2Qb7l3zC2iaKXlZNlA2acrcAYIYKLlKPtrw
tVGC6jNEgR7vCdTNyu8Z64xu0RhbcNzslMK4wul1xDmdsJ/qxq5LEODjACxO4dD89tGYVV+cdo9w
pPkM5NfvUqnBPoTIdlofcb89DdwCUPx/odoBhzXlXWqp9CfZFmk6inwPFsKJ1HOX69z61eag8g9L
7kvxwk3AOkLwLH44ZDBgHaCVUXut1QREmqXjmBRice9gssPmanyd57os1Hs2Il3Wx+5A6RulLCtL
RLygk3a8MT+ZgO9SieoPUTaOoToE0Cwg7siruealqU0VhZBCTk/UQhKU5y
 
деионкубе
ну что не понятного, файлы декодировлись нормально.
токо нужен дебаг кода, тоесть есть некие ошибки в фйлах, нужно править ручками и разбирать всю структуру.

mysql.php
Код:
<?php
class db_mysql
{
    public function db_mysql( )
    {
        global $config_db_server;
        global $config_db_server_username;
        global $config_db_server_password;
        global $config_db_database;
        $password = str_replace( "\$", "\$", $config_db_server_password );
        $this->link = @mysql_connect( @$config_db_server, @$config_db_server_username, @$password );
        $this->errorQuery = array( );
        $this->error = "";
        $this->limit = "";
        $this->offset = "";
        $this->errorPath = "";
        if ( $this->link )
        {
            if ( @mysql_select_db( @$config_db_database, @$this->link ) )
            {
                $this->recent_link =& $this->link;
                global $config_db_charset;
                global $config_db_collation;
                return $this->link;
            }
            $this->errorPath = getErrorPath( );
            $this->error = "Could not select database: {$config_db_database}";
        }
        else
        {
            $this->error = "Could not connect to server: {$config_db_server}";
            $this->errorPath = getErrorPath( );
        }
    }
    public function test( )
    {
        return 1;
    }
    public function geterror( )
    {
        global $config_debug;
        $str = "<span>Database query error. </span>";
        if ( $config_debug )
        {
            $str .= "<span>The error was: </span>".$this->error;
            $str .= "<br><span>SQL query/queries : </span>".printErrorQuery( )."<span>Error path:</span> ".$this->errorPath;
        }
        return $str;
    }
    public function printerrorquery( )
    {
        $result = "";
        foreach ( $this->errorQuery as $str )
        {
            $result .= $str."<br>";
        }
        return $result;
    }
    public function setsql( $sql )
    {
        $this->sql = $sql;
    }
    public function getsql( )
    {
        return $this->sql;
    }
    public function query( $sql = "" )
    {
        if ( $sql )
        {
            $this->sql = $sql;
        }
        if ( !is_resource( $this->link ) )
        {
            return false;
        }
        $this->recent_link =& $this->link;
        if ( 0 < $this->limit || 0 < $this->offset )
        {
            $this->sql .= " LIMIT ".$this->offset.", ".$this->limit;
        }
        $result = @mysql_query( @$this->sql, @$this->link );
        ++$this->query_count;
        if ( !$result )
        {
            error( );
            $this->errorPath = getErrorPath( );
            return false;
        }
        return $result;
    }
    public function fetchrow( $sql = "" )
    {
        if ( $sql )
        {
            $this->sql = $sql;
        }
        if ( !( $result = query( ) ) )
        {
            return null;
        }
        $ret = null;
        if ( $row = @mysql_fetch_row( @$result ) )
        {
            $ret = $row[0];
        }
        freeResult( $result );
        return $ret;
    }
    public function fetchrowlist( $sql = "" )
    {
        if ( $sql )
        {
            $this->sql = $sql;
        }
        if ( !( $result = query( ) ) )
        {
            return null;
        }
        $array = array( );
        while ( $row = @mysql_fetch_row( @$result ) )
        {
            $array[] = $row[0];
        }
        freeResult( $result );
        return $array;
    }
    public function fetchassoc( $sql = "" )
    {
        if ( $sql )
        {
            $this->sql = $sql;
        }
        if ( !( $result = query( ) ) )
        {
            return null;
        }
        $ret = null;
        if ( $row = @mysql_fetch_assoc( @$result ) )
        {
            $ret = $row;
        }
        freeResult( $result );
        return $ret;
    }
    public function fetchassoclist( $sql = "" )
    {
        if ( $sql )
        {
            $this->sql = $sql;
        }
        if ( !( $result = query( ) ) )
        {
            return null;
        }
        $array = array( );
        while ( $row = @mysql_fetch_assoc( @$result ) )
        {
            $array[] = $row;
        }
        freeResult( $result );
        return $array;
    }
    public function fetcharray( $sql = "" )
    {
        if ( $sql )
        {
            $this->sql = $sql;
        }
        if ( !( $result = query( ) ) )
        {
            return null;
        }
        $array = array( );
        while ( $row = @mysql_fetch_array( @$result ) )
        {
            $array[] = $row;
        }
        freeResult( $result );
        return $array;
    }
    public function numrows( $result )
    {
        return mysql_num_rows( @$result );
    }
    public function affectedrows( )
    {
        return mysql_affected_rows( @$this->recent_link );
    }
    public function numqueries( )
    {
        return $this->query_count;
    }
    public function insertid( )
    {
        return mysql_insert_id( @$this->link );
    }
    public function freeresult( $result )
    {
        return mysql_free_result( @$result );
    }
    public function setoffset( $off )
    {
        $this->offset = $off;
    }
    public function setlimit( $lim )
    {
        $this->limit = $lim;
    }
    public function close( )
    {
        $this->sql = "";
        return mysql_close( $this->link );
    }
    public function error( $err = "" )
    {
        if ( $err )
        {
            $this->error .= $err;
        }
        else
        {
            if ( is_null( $this->recent_link ) )
            {
            }
            else
            {
                $this->error = " errno : ".mysql_errno( $this->recent_link )." ".mysql_error( $this->recent_link );
            }
        }
        $no = count( $this->errorQuery );
        $this->errorQuery[$no] = $this->sql;
        return $this->error;
    }
    public function geterrorpath( )
    {
        if ( $_SERVER['REQUEST_URI'] )
        {
            $errorpath = $_SERVER['REQUEST_URI'];
        }
        else
        {
            if ( $_SERVER['PATH_INFO'] )
            {
                $errorpath = $_SERVER['PATH_INFO'];
            }
            else
            {
                $errorpath = $_SERVER['PHP_SELF'];
            }
            if ( $_SERVER['QUERY_STRING'] )
            {
                $errorpath .= "?".$_SERVER['QUERY_STRING'];
            }
        }
        if ( ( $pos = strpos( $errorpath, "?" ) ) !== false )
        {
            $errorpath = urldecode( substr( $errorpath, 0, $pos ) ).substr( $errorpath, $pos );
        }
        else
        {
            $errorpath = urldecode( $errorpath );
        }
        return $_SERVER['HTTP_HOST'].$errorpath;
    }
    public function gettablefields( $table )
    {
        $array = array( );
        $res = mysql_query( "DESCRIBE ".$table );
        $i = 0;
        while ( $row = mysql_fetch_row( $res ) )
        {
            $array[$i] = $row[0];
            ++$i;
        }
        return $array;
    }
    public function getfulltablefields( $table )
    {
        $array = array( );
        $res = mysql_query( "DESCRIBE ".$table );
        $i = 0;
        while ( $row = mysql_fetch_assoc( $res ) )
        {
            $array[$i]['Field'] = $row['Field'];
            $array[$i]['Type'] = $row['Type'];
            ++$i;
        }
        return $array;
    }
    public function gettablecsvfields( $table )
    {
        $fields = "";
        $res = mysql_query( "DESCRIBE ".$table );
        $i = 0;
        while ( $row = mysql_fetch_row( $res ) )
        {
            if ( $i )
            {
                $fields .= ",";
            }
            $fields .= $row[0];
            ++$i;
        }
        return $fields;
    }
    public function gettexttablefields( $table )
    {
        $array = array( );
        $res = mysql_query( "DESCRIBE ".$table );
        $i = 0;
        while ( $row = mysql_fetch_row( $res ) )
        {
            if ( !strstr( $row[1], "varchar" ) && $row[1] != "text" )
            {
                continue;
            }
            $array[$i] = $row[0];
            ++$i;
        }
        return $array;
    }
    public function gettables( $prefix = "", $not_prefix = "" )
    {
        if ( !( $result = fetchRowList( "SHOW TABLES" ) ) )
        {
            return 0;
        }
        if ( !$prefix )
        {
            return $result;
        }
        $i = 0;
        $arr = array( );
        foreach ( $result as $row )
        {
            if ( preg_match( "/^{$prefix}/", $row ) && !preg_match( "/^{$not_prefix}/", $row ) )
            {
                $arr[$i++] = $row;
            }
        }
        return $arr;
    }
}
?>

упс, понял выкладываю правильный архив.
 

Вложения

  • _decoded.rar
    152 KB · Просмотры: 70
Извини, но ты выбрал не правильную версию.
На сайте производителя:

Есть обновление от 11 апреля 2010,
где был добавлен модуль Forotumo.
М.б. в скрипте были другие изменения, о которых автор не пишет.
Кроме того были еще изменения дата последнего изменения датированна 23 февраля 2011.
В декодированных тобою файлах папки classes отсутствует файл fortumo. Ты использовал не ту версию.
Свою версию, включающую Fortumo, не помню, где скачал, выкладываю по ссылке ниже:

Каким софтом ты декодировал файлы из папки classes?
 
  • Нравится
Реакции: saab
Извини, но ты выбрал не правильную версию.
На сайте производителя:
*** скрытое содержание ***
Есть обновление от 11 апреля 2010,
где был добавлен модуль Forotumo.
М.б. в скрипте были другие изменения, о которых автор не пишет.
Кроме того были еще изменения дата последнего изменения датированна 23 февраля 2011.
В декодированных тобою файлах папки classes отсутствует файл fortumo. Ты использовал не ту версию.
Свою версию, включающую Fortumo, не помню, где скачал, выкладываю по ссылке ниже:
*** скрытое содержание ***
Каким софтом ты декодировал файлы из папки classes?
ты если дебаг сделаешь выложи сюда.
 
Чтобы сделать Дебаг срипта, нужно писать Техническое Задание,
а для ТЗ нужен полный список ошибок.

ПРОБЛЕМЫ ПРИ УСТАНОВКЕ:
1. Установил скрипт, затем заменил файлы из папки classes декодированными файлами.
Теперь при открытии сайта белое оконо.
2. Залил oxyclassifieds на сервер, заменил файлы из папки classes декодированными файлами,
начал установку. При выполнении последнего шага установки (Для просмотра ссылки Войди или Зарегистрируйся)
при нажатии на кнопку FINISH белое окно.
 
можно выложить полную версию, раскодированую, а то я запутался
или может кто объяснит подробно и попорядку все действия
буду очень признателен)
 
Надо пробовать на тестовой копии пофайлово заменять и смотреть что будет, на досуге займусь, правда кодер из меня хреновый, так что будет долго.
 
все хорошо и титлы с мета для каждой категории можно задать, но..
может кто подсказать как реализовать вывод титлов при выдаче объявлений по заданному региону

я в долгу не останусь!
 
Установите идущий в комплекте модуль Meta Extension - Allows you to customize meta information for different search pages. И назначайте тайтлы на сколько терпения хватит, хоть для всех возм. вариантов комбинаций поиска.
 
Назад
Сверху