adalmia3 / kfm

Automatically exported from code.google.com/p/kfm
0 stars 0 forks source link

Apache Error logs on referenced function Call in Pear/MDB2.php #81

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?
1.Just use the filemanager with mysql (havent teszted other DB systems)
2. Read the servers Error.log file
3. Error is on Debian Linux Apache 2.2 php 5
Assigning the return value of new by reference is deprecated in 
/srv/hosts/vhost/htdocs/edit/editor/plugins/kfm/includes/pear/MDB2.php on line 
1885, referer: http://some 
domain/edit/editor/plugins/kfm/index.php?lang=de&kfm_caller_type=fck&type=Image

What is the expected output? What do you see instead?
A clean error.log 
I see a spammed error.log 

What version of the product are you using? On what operating system?
I don't know the version, it is the latest from today 13. Mar 2011
See 3. Above

Please provide any additional information below.
SOLUTION:
remove all reference calls to the pear mdb2.php class
like this ->  $kfmdb = MDB2::connect($dsn);
instaed of -> $kfmdb = &MDB2::connect($dsn);

i did it for the case 'mysql': in initialize.php from line 201 to 223 and it 
works fine.

here the snippet:
case 'mysql': // {
    include_once 'MDB2.php';
    $dsn   = 'mysql://'.$kfm_db_username.':'.$kfm_db_password.'@'.$kfm_db_host.$port.'/'.$kfm_db_name;
    $kfmdb = MDB2::connect($dsn);
    if (PEAR::isError($kfmdb)) {
        $dsn   = 'mysql://'.$kfm_db_username.':'.$kfm_db_password.'@'.$kfm_db_host;
        $kfmdb = MDB2::connect($dsn);
        kfm_dieOnError($kfmdb);
        $kfmdb->query('CREATE DATABASE '.$kfm_db_name.' CHARACTER SET UTF8');
        $kfmdb->disconnect();
        $dsn   = 'mysql://'.$kfm_db_username.':'.$kfm_db_password.'@'.$kfm_db_host.'/'.$kfm_db_name;
        $kfmdb = MDB2::connect($dsn);
        kfm_dieOnError($kfmdb);
    }
    $kfmdb->setFetchMode(MDB2_FETCHMODE_ASSOC);
     $kfmdb->setOption('portability',MDB2_PORTABILITY_ALL ^ MDB2_PORTABILITY_EMPTY_TO_NULL);
    if (!$db_defined) {
        $res = $kfmdb->query("show tables like '".$kfm_db_prefix_escaped."%'");
        kfm_dieOnError($res);
        if (!$res->numRows())include KFM_BASE_PATH.'scripts/db.mysql.create.php';
        else $db_defined = 1;
    }

Original issue reported on code.google.com by w...@rawiweb.de on 13 Mar 2011 at 1:28

GoogleCodeExporter commented 8 years ago
found the version text file it says 
1.4.6
8

Original comment by w...@rawiweb.de on 13 Mar 2011 at 1:40