php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2009

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 11.07.2009, 02:45  
Neuer Benutzer
 
Registriert seit: 11.07.2009
Beiträge: 4
PHP-Kenntnisse:
Anfänger
EinNickname befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] Joomla php fatal error

Tag

Ich habe eine Webpage von unserem abtretendem Webadmin uebernommen; nachdem die Passwoerter geaendert wurden, funktionierte die Webpage nicht mehr, jetzt sind zwar die Passwoerter zurueck gesetzt, doch man kann sich immer noch nicht in Joomla einloggen - egal mit welchem Status;
statt dessen kommt die folgende Meldung:

Zitat:
Fatal error: SQL ERROR [ mysqli ]

Access denied for user 'xxx'@'localhost' (using password: YES) [1045]

An sql error occurred while fetching this page. Please contact an administrator if this problem persists. in /home/ftp/www/phpBB3/includes/db/dbal.php on line 602
Der Inhalt der dbal.php habe ich unten rein kopiert;
ich hoffe jemand kennt den Fehler, von php habe ich leider keine Ahnung, und unser alter Admin ist in den Ferien und nicht erreichbar!
Danke fuer eure Hilfe im Voraus!


(Zeile 602 ist:
PHP-Code:
trigger_error($messageE_USER_ERROR); 
)


PHP-Code:
<?php
/**
*
* @package dbal
* @version $Id: dbal.php 8479 2008-03-29 00:22:48Z naderman $
* @copyright (c) 2005 phpBB Group
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/

/**
* @ignore
*/
if (!defined('IN_PHPBB'))
{
    exit;
}

/**
* Database Abstraction Layer
* @package dbal
*/
class dbal
{
    var 
$db_connect_id;
    var 
$query_result;
    var 
$return_on_error false;
    var 
$transaction false;
    var 
$sql_time 0;
    var 
$num_queries = array();
    var 
$open_queries = array();

    var 
$curtime 0;
    var 
$query_hold '';
    var 
$html_hold '';
    var 
$sql_report '';
    
    var 
$persistency false;
    var 
$user '';
    var 
$server '';
    var 
$dbname '';

    
// Set to true if error triggered
    
var $sql_error_triggered false;

    
// Holding the last sql query on sql error
    
var $sql_error_sql '';
    
// Holding the error information - only populated if sql_error_triggered is set
    
var $sql_error_returned = array();
    
    
// Holding transaction count
    
var $transactions 0;

    
// Supports multi inserts?
    
var $multi_insert false;

    
/**
    * Current sql layer
    */
    
var $sql_layer '';

    
/**
    * Wildcards for matching any (%) or exactly one (_) character within LIKE expressions
    */
    
var $any_char;
    var 
$one_char;

    
/**
    * Constructor
    */
    
function dbal()
    {
        
$this->num_queries = array(
            
'cached'        => 0,
            
'normal'        => 0,
            
'total'            => 0,
        );

        
// Fill default sql layer based on the class being called.
        // This can be changed by the specified layer itself later if needed.
        
$this->sql_layer substr(get_class($this), 5);

        
// Do not change this please! This variable is used to easy the use of it - and is hardcoded.
        
$this->any_char chr(0) . '%';
        
$this->one_char chr(0) . '_';
    }

    
/**
    * return on error or display error message
    */
    
function sql_return_on_error($fail false)
    {
        
$this->sql_error_triggered false;
        
$this->sql_error_sql '';

        
$this->return_on_error $fail;
    }

    
/**
    * Return number of sql queries and cached sql queries used
    */
    
function sql_num_queries($cached false)
    {
        return (
$cached) ? $this->num_queries['cached'] : $this->num_queries['normal'];
    }

    
/**
    * Add to query count
    */
    
function sql_add_num_queries($cached false)
    {
        
$this->num_queries['cached'] += ($cached !== false) ? 0;
        
$this->num_queries['normal'] += ($cached !== false) ? 1;
        
$this->num_queries['total'] += 1;
    }

    
/**
    * DBAL garbage collection, close sql connection
    */
    
function sql_close()
    {
        if (!
$this->db_connect_id)
        {
            return 
false;
        }

        if (
$this->transaction)
        {
            do
            {
                
$this->sql_transaction('commit');
            }
            while (
$this->transaction);
        }

        foreach (
$this->open_queries as $query_id)
        {
            
$this->sql_freeresult($query_id);
        }
        
        return 
$this->_sql_close();
    }

    
/**
    * Build LIMIT query
    * Doing some validation here.
    */
    
function sql_query_limit($query$total$offset 0$cache_ttl 0)
    {
        if (empty(
$query))
        {
            return 
false;
        }

        
// Never use a negative total or offset
        
$total = ($total 0) ? $total;
        
$offset = ($offset 0) ? $offset;

        return 
$this->_sql_query_limit($query$total$offset$cache_ttl);
    }

    
/**
    * Fetch all rows
    */
    
function sql_fetchrowset($query_id false)
    {
        if (
$query_id === false)
        {
            
$query_id $this->query_result;
        }

        if (
$query_id !== false)
        {
            
$result = array();
            while (
$row $this->sql_fetchrow($query_id))
            {
                
$result[] = $row;
            }

            return 
$result;
        }
        
        return 
false;
    }

    
/**
    * Fetch field
    * if rownum is false, the current row is used, else it is pointing to the row (zero-based)
    */
    
function sql_fetchfield($field$rownum false$query_id false)
    {
        global 
$cache;

        if (
$query_id === false)
        {
            
$query_id $this->query_result;
        }

        if (
$query_id !== false)
        {
            if (
$rownum !== false)
            {
                
$this->sql_rowseek($rownum$query_id);
            }

            if (!
is_object($query_id) && isset($cache->sql_rowset[$query_id]))
            {
                return 
$cache->sql_fetchfield($query_id$field);
            }

            
$row $this->sql_fetchrow($query_id);
            return (isset(
$row[$field])) ? $row[$field] : false;
        }

        return 
false;
    }

    
/**
    * Correctly adjust LIKE expression for special characters
    * Some DBMS are handling them in a different way
    *
    * @param string $expression The expression to use. Every wildcard is escaped, except $this->any_char and $this->one_char
    * @return string LIKE expression including the keyword!
    */
    
function sql_like_expression($expression)
    {
        
$expression str_replace(array('_''%'), array("\_""\%"), $expression);
        
$expression str_replace(array(chr(0) . "\_"chr(0) . "\%"), array('_''%'), $expression);

        return 
$this->_sql_like_expression('LIKE \'' $this->sql_escape($expression) . '\'');
    }

    
/**
    * SQL Transaction
    * @access private
    */
    
function sql_transaction($status 'begin')
    {
        switch (
$status)
        {
            case 
'begin':
                
// If we are within a transaction we will not open another one, but enclose the current one to not loose data (prevening auto commit)
                
if ($this->transaction)
                {
                    
$this->transactions++;
                    return 
true;
                }

                
$result $this->_sql_transaction('begin');

                if (!
$result)
                {
                    
$this->sql_error();
                }

                
$this->transaction true;
            break;

            case 
'commit':
                
// If there was a previously opened transaction we do not commit yet... but count back the number of inner transactions
                
if ($this->transaction && $this->transactions)
                {
                    
$this->transactions--;
                    return 
true;
                }

                
// Check if there is a transaction (no transaction can happen if there was an error, with a combined rollback and error returning enabled)
                // This implies we have transaction always set for autocommit db's
                
if (!$this->transaction)
                {
                    return 
false;
                }

                
$result $this->_sql_transaction('commit');

                if (!
$result)
                {
                    
$this->sql_error();
                }

                
$this->transaction false;
                
$this->transactions 0;
            break;

            case 
'rollback':
                
$result $this->_sql_transaction('rollback');
                
$this->transaction false;
                
$this->transactions 0;
            break;

            default:
                
$result $this->_sql_transaction($status);
            break;
        }

        return 
$result;
    }

    
/**
    * Build sql statement from array for insert/update/select statements
    *
    * Idea for this from Ikonboard
    * Possible query values: INSERT, INSERT_SELECT, MULTI_INSERT, UPDATE, SELECT
    *
    */
    
function sql_build_array($query$assoc_ary false)
    {
        if (!
is_array($assoc_ary))
        {
            return 
false;
        }

        
$fields $values = array();

        if (
$query == 'INSERT' || $query == 'INSERT_SELECT')
        {
            foreach (
$assoc_ary as $key => $var)
            {
                
$fields[] = $key;

                if (
is_array($var) && is_string($var[0]))
                {
                    
// This is used for INSERT_SELECT(s)
                    
$values[] = $var[0];
                }
                else
                {
                    
$values[] = $this->_sql_validate_value($var);
                }
            }

            
$query = ($query == 'INSERT') ? ' (' implode(', '$fields) . ') VALUES (' implode(', '$values) . ')' ' (' implode(', '$fields) . ') SELECT ' implode(', '$values) . ' ';
        }
        else if (
$query == 'MULTI_INSERT')
        {
            
$ary = array();
            foreach (
$assoc_ary as $id => $sql_ary)
            {
                
// If by accident the sql array is only one-dimensional we build a normal insert statement
                
if (!is_array($sql_ary))
                {
                    return 
$this->sql_build_array('INSERT'$assoc_ary);
                }

                
$values = array();
                foreach (
$sql_ary as $key => $var)
                {
                    
$values[] = $this->_sql_validate_value($var);
                }
                
$ary[] = '(' implode(', '$values) . ')';
            }

            
$query ' (' implode(', 'array_keys($assoc_ary[0])) . ') VALUES ' implode(', '$ary);
        }
        else if (
$query == 'UPDATE' || $query == 'SELECT')
        {
            
$values = array();
            foreach (
$assoc_ary as $key => $var)
            {
                
$values[] = "$key = " $this->_sql_validate_value($var);
            }
            
$query implode(($query == 'UPDATE') ? ', ' ' AND '$values);
        }

        return 
$query;
    }

    
/**
    * Build IN or NOT IN sql comparison string, uses <> or = on single element
    * arrays to improve comparison speed
    *
    * @access public
    * @param    string    $field                name of the sql column that shall be compared
    * @param    array    $array                array of values that are allowed (IN) or not allowed (NOT IN)
    * @param    bool    $negate                true for NOT IN (), false for IN () (default)
    * @param    bool    $allow_empty_set    If true, allow $array to be empty, this function will return 1=1 or 1=0 then. Default to false.
    */
    
function sql_in_set($field$array$negate false$allow_empty_set false)
    {
        if (!
sizeof($array))
        {
            if (!
$allow_empty_set)
            {
                
// Print the backtrace to help identifying the location of the problematic code
                
$this->sql_error('No values specified for SQL IN comparison');
            }
            else
            {
                
// NOT IN () actually means everything so use a tautology
                
if ($negate)
                {
                    return 
'1=1';
                }
                
// IN () actually means nothing so use a contradiction
                
else
                {
                    return 
'1=0';
                }
            }
        }

        if (!
is_array($array))
        {
            
$array = array($array);
        }

        if (
sizeof($array) == 1)
        {
            @
reset($array);
            
$var current($array);

            return 
$field . ($negate ' <> ' ' = ') . $this->_sql_validate_value($var);
        }
        else
        {
            return 
$field . ($negate ' NOT IN ' ' IN ') . '(' implode(', 'array_map(array($this'_sql_validate_value'), $array)) . ')';
        }
    }

    
/**
    * Run more than one insert statement.
    *
    * @param string $table table name to run the statements on
    * @param array &$sql_ary multi-dimensional array holding the statement data.
    *
    * @return bool false if no statements were executed.
    * @access public
    */
    
function sql_multi_insert($table, &$sql_ary)
    {
        if (!
sizeof($sql_ary))
        {
            return 
false;
        }

        if (
$this->multi_insert)
        {
            
$this->sql_query('INSERT INTO ' $table ' ' $this->sql_build_array('MULTI_INSERT'$sql_ary));
        }
        else
        {
            foreach (
$sql_ary as $ary)
            {
                if (!
is_array($ary))
                {
                    return 
false;
                }

                
$this->sql_query('INSERT INTO ' $table ' ' $this->sql_build_array('INSERT'$ary));
            }
        }

        return 
true;
    }

    
/**
    * Function for validating values
    * @access private
    */
    
function _sql_validate_value($var)
    {
        if (
is_null($var))
        {
            return 
'NULL';
        }
        else if (
is_string($var))
        {
            return 
"'" $this->sql_escape($var) . "'";
        }
        else
        {
            return (
is_bool($var)) ? intval($var) : $var;
        }
    }

    
/**
    * Build sql statement from array for select and select distinct statements
    *
    * Possible query values: SELECT, SELECT_DISTINCT
    */
    
function sql_build_query($query$array)
    {
        
$sql '';
        switch (
$query)
        {
            case 
'SELECT':
            case 
'SELECT_DISTINCT';

                
$sql str_replace('_'' '$query) . ' ' $array['SELECT'] . ' FROM ';

                
$table_array = array();
                foreach (
$array['FROM'] as $table_name => $alias)
                {
                    if (
is_array($alias))
                    {
                        foreach (
$alias as $multi_alias)
                        {
                            
$table_array[] = $table_name ' ' $multi_alias;
                        }
                    }
                    else
                    {
                        
$table_array[] = $table_name ' ' $alias;
                    }
                }

                
$sql .= $this->_sql_custom_build('FROM'implode(', '$table_array));

                if (!empty(
$array['LEFT_JOIN']))
                {
                    foreach (
$array['LEFT_JOIN'] as $join)
                    {
                        
$sql .= ' LEFT JOIN ' key($join['FROM']) . ' ' current($join['FROM']) . ' ON (' $join['ON'] . ')';
                    }
                }

                if (!empty(
$array['WHERE']))
                {
                    
$sql .= ' WHERE ' $this->_sql_custom_build('WHERE'$array['WHERE']);
                }

                if (!empty(
$array['GROUP_BY']))
                {
                    
$sql .= ' GROUP BY ' $array['GROUP_BY'];
                }

                if (!empty(
$array['ORDER_BY']))
                {
                    
$sql .= ' ORDER BY ' $array['ORDER_BY'];
                }

            break;
        }

        return 
$sql;
    }

    
/**
    * display sql error page
    */
    
function sql_error($sql '')
    {
        global 
$auth$user$config;

        
// Set var to retrieve errored status
        
$this->sql_error_triggered true;
        
$this->sql_error_sql $sql;

        
$this->sql_error_returned $this->_sql_error();

        if (!
$this->return_on_error)
        {
            
$message 'SQL ERROR [ ' $this->sql_layer ' ]<br /><br />' $this->sql_error_returned['message'] . ' [' $this->sql_error_returned['code'] . ']';

            
// Show complete SQL error and path to administrators only
            // Additionally show complete error on installation or if extended debug mode is enabled
            // The DEBUG_EXTRA constant is for development only!
            
if ((isset($auth) && $auth->acl_get('a_')) || defined('IN_INSTALL') || defined('DEBUG_EXTRA'))
            {
                
// Print out a nice backtrace...
                
$backtrace get_backtrace();

                
$message .= ($sql) ? '<br /><br />SQL<br /><br />' htmlspecialchars($sql) : '';
                
$message .= ($backtrace) ? '<br /><br />BACKTRACE<br />' $backtrace '';
                
$message .= '<br />';
            }
            else
            {
                
// If error occurs in initiating the session we need to use a pre-defined language string
                // This could happen if the connection could not be established for example (then we are not able to grab the default language)
                
if (!isset($user->lang['SQL_ERROR_OCCURRED']))
                {
                    
$message .= '<br /><br />An sql error occurred while fetching this page. Please contact an administrator if this problem persists.';
                }
                else
                {
                    if (!empty(
$config['board_contact']))
                    {
                        
$message .= '<br /><br />' sprintf($user->lang['SQL_ERROR_OCCURRED'], '<a href="mailto:' htmlspecialchars($config['board_contact']) . '">''</a>');
                    }
                    else
                    {
                        
$message .= '<br /><br />' sprintf($user->lang['SQL_ERROR_OCCURRED'], '''');
                    }
                }
            }

            if (
$this->transaction)
            {
                
$this->sql_transaction('rollback');
            }

            if (
strlen($message) > 1024)
            {
                
// We need to define $msg_long_text here to circumvent text stripping.
                
global $msg_long_text;
                
$msg_long_text $message;

                
trigger_error(falseE_USER_ERROR);
            }

            
trigger_error($messageE_USER_ERROR);
        }

        if (
$this->transaction)
        {
            
$this->sql_transaction('rollback');
        }

        return 
$this->sql_error_returned;
    }

    
/**
    * Explain queries
    */
    
function sql_report($mode$query '')
    {
        global 
$cache$starttime$phpbb_root_path$user;

        if (empty(
$_REQUEST['explain']))
        {
            return 
false;
        }

        if (!
$query && $this->query_hold != '')
        {
            
$query $this->query_hold;
        }

        switch (
$mode)
        {
            case 
'display':
                if (!empty(
$cache))
                {
                    
$cache->unload();
                }
                
$this->sql_close();

                
$mtime explode(' 'microtime());
                
$totaltime $mtime[0] + $mtime[1] - $starttime;

                echo 
'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
                    <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
                    <head>
                        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
                        <meta http-equiv="Content-Style-Type" content="text/css" />
                        <meta http-equiv="imagetoolbar" content="no" />
                        <title>SQL Report</title>
                        <link href="' 
$phpbb_root_path 'adm/style/admin.css" rel="stylesheet" type="text/css" media="screen" />
                    </head>
                    <body id="errorpage">
                    <div id="wrap">
                        <div id="page-header">
                            <a href="' 
build_url('explain') . '">Return to previous page</a>
                        </div>
                        <div id="page-body">
                            <div id="acp">
                            <div class="panel">
                                <span class="corners-top"><span></span></span>
                                <div id="content">
                                    <h1>SQL Report</h1>
                                    <br />
                                    <p><b>Page generated in ' 
round($totaltime4) . " seconds with {$this->num_queries['normal']} queries" . (($this->num_queries['cached']) ? " + {$this->num_queries['cached']} " . (($this->num_queries['cached'] == 1) ? 'query' 'queries') . ' returning data from cache' '') . '</b></p>

                                    <p>Time spent on ' 
$this->sql_layer ' queries: <b>' round($this->sql_time5) . 's</b> | Time spent on PHP: <b>' round($totaltime $this->sql_time5) . 's</b></p>

                                    <br /><br />
                                    ' 
$this->sql_report '
                                </div>
                                <span class="corners-bottom"><span></span></span>
                            </div>
                            </div>
                        </div>
                        <div id="page-footer">
                            Powered by phpBB &copy; 2000, 2002, 2005, 2007 <a href="http://www.phpbb.com/">phpBB Group</a>
                        </div>
                    </div>
                    </body>
                    </html>'
;

                
exit_handler();

            break;

            case 
'stop':
                
$endtime explode(' 'microtime());
                
$endtime $endtime[0] + $endtime[1];

                
$this->sql_report .= '

                    <table cellspacing="1">
                    <thead>
                    <tr>
                        <th>Query #' 
$this->num_queries['total'] . '</th>
                    </tr>
                    </thead>
                    <tbody>
                    <tr>
                        <td class="row3"><textarea style="font-family:\'Courier New\',monospace;width:99%" rows="5" cols="10">' 
preg_replace('/\t(AND|OR)(\W)/'"\$1\$2"htmlspecialchars(preg_replace('/[\s]*[\n\r\t]+[\n\r\s\t]*/'"\n"$query))) . '</textarea></td>
                    </tr>
                    </tbody>
                    </table>
                    
                    ' 
$this->html_hold '

                    <p style="text-align: center;">
                '
;

                if (
$this->query_result)
                {
                    if (
preg_match('/^(UPDATE|DELETE|REPLACE)/'$query))
                    {
                        
$this->sql_report .= 'Affected rows: <b>' $this->sql_affectedrows($this->query_result) . '</b> | ';
                    }
                    
$this->sql_report .= 'Before: ' sprintf('%.5f'$this->curtime $starttime) . 's | After: ' sprintf('%.5f'$endtime $starttime) . 's | Elapsed: <b>' sprintf('%.5f'$endtime $this->curtime) . 's</b>';
                }
                else
                {
                    
$error $this->sql_error();
                    
$this->sql_report .= '<b style="color: red">FAILED</b> - ' $this->sql_layer ' Error ' $error['code'] . ': ' htmlspecialchars($error['message']);
                }

                
$this->sql_report .= '</p><br /><br />';

                
$this->sql_time += $endtime $this->curtime;
            break;

            case 
'start':
                
$this->query_hold $query;
                
$this->html_hold '';
            
                
$this->_sql_report($mode$query);

                
$this->curtime explode(' 'microtime());
                
$this->curtime $this->curtime[0] + $this->curtime[1];

            break;
            
            case 
'add_select_row':

                
$html_table func_get_arg(2);
                
$row func_get_arg(3);
                
                if (!
$html_table && sizeof($row))
                {
                    
$html_table true;
                    
$this->html_hold .= '<table cellspacing="1"><tr>';
                                
                    foreach (
array_keys($row) as $val)
                    {
                        
$this->html_hold .= '<th>' . (($val) ? ucwords(str_replace('_'' '$val)) : '&nbsp;') . '</th>';
                    }
                    
$this->html_hold .= '</tr>';
                }
                
$this->html_hold .= '<tr>';

                
$class 'row1';
                foreach (
array_values($row) as $val)
                {
                    
$class = ($class == 'row1') ? 'row2' 'row1';
                    
$this->html_hold .= '<td class="' $class '">' . (($val) ? $val '&nbsp;') . '</td>';
                }
                
$this->html_hold .= '</tr>';
            
                return 
$html_table;

            break;

            case 
'fromcache':

                
$this->_sql_report($mode$query);

            break;

            case 
'record_fromcache':

                
$endtime func_get_arg(2);
                
$splittime func_get_arg(3);

                
$time_cache $endtime $this->curtime;
                
$time_db $splittime $endtime;
                
$color = ($time_db $time_cache) ? 'green' 'red';

                
$this->sql_report .= '<table cellspacing="1"><thead><tr><th>Query results obtained from the cache</th></tr></thead><tbody><tr>';
                
$this->sql_report .= '<td class="row3"><textarea style="font-family:\'Courier New\',monospace;width:99%" rows="5" cols="10">' preg_replace('/\t(AND|OR)(\W)/'"\$1\$2"htmlspecialchars(preg_replace('/[\s]*[\n\r\t]+[\n\r\s\t]*/'"\n"$query))) . '</textarea></td></tr></tbody></table>';
                
$this->sql_report .= '<p style="text-align: center;">';
                
$this->sql_report .= 'Before: ' sprintf('%.5f'$this->curtime $starttime) . 's | After: ' sprintf('%.5f'$endtime $starttime) . 's | Elapsed [cache]: <b style="color: ' $color '">' sprintf('%.5f', ($time_cache)) . 's</b> | Elapsed [db]: <b>' sprintf('%.5f'$time_db) . 's</b></p><br /><br />';

                
// Pad the start time to not interfere with page timing
                
$starttime += $time_db;

            break;

            default:
            
                
$this->_sql_report($mode$query);

            break;
        }

        return 
true;
    }
}

/**
* This variable holds the class name to use later
*/
$sql_db = (!empty($dbms)) ? 'dbal_' basename($dbms) : 'dbal';

?>
EinNickname ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 11.07.2009, 04:24  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Da müssen Werte rein:

PHP-Code:
    var $user '';
    var 
$server '';
    var 
$dbname ''
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline  
Alt 11.07.2009, 07:14  
Neuer Benutzer
 
Registriert seit: 11.07.2009
Beiträge: 4
PHP-Kenntnisse:
Anfänger
EinNickname befindet sich auf einem aufstrebenden Ast
Standard

Wie kann es sein, dass diese geloescht wurden? Diese Version ist ein Backup von vor vier Wochen, wo noch alles funktionierte.
Trotzdem habe ich die Werte 1 respk. 0 eingefuegt, aber nichts hat sich gebessert
EinNickname ist offline  
Alt 11.07.2009, 07:23  
Erfahrener Benutzer
 
Benutzerbild von princemichi
 
Registriert seit: 16.06.2009
Beiträge: 125
PHP-Kenntnisse:
Fortgeschritten
princemichi ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Was meinst du mit "Werte 1 respk. 0"????

Du weißt schon, was diese Variablen definieren oder?

Geändert von princemichi (11.07.2009 um 07:24 Uhr). Grund: Rechtschreibung...
princemichi ist offline  
Alt 11.07.2009, 07:33  
Erfahrener Benutzer
 
Benutzerbild von princemichi
 
Registriert seit: 16.06.2009
Beiträge: 125
PHP-Kenntnisse:
Fortgeschritten
princemichi ist zur Zeit noch ein unbeschriebenes Blatt
Standard

ach und btw. warum heißt dieser thread eigentlich Joomla?? wenn der script aus phpBB3 stammt??

und ich gebe noch ein beispiel:
PHP-Code:
<?php
    
var $user 'root';
    var 
$server 'localhost';
    var 
$dbname 'phpBB3';  
?>
Grüße
princemichi ist offline  
Alt 11.07.2009, 07:49  
Neuer Benutzer
 
Registriert seit: 11.07.2009
Beiträge: 4
PHP-Kenntnisse:
Anfänger
EinNickname befindet sich auf einem aufstrebenden Ast
Standard

Hat man aus meiner dummen Antwort nicht heraus gelesen, dass ich keine Ahnung von php hab?
Joomla heisst er, weil die Webpage auf Joomla basiert; wollte so viel Infos wie moeglich geben;
hab deine Vorschlaege eingefuegt, was auch nichts geaendert hat...
Danke trotzdem
EinNickname ist offline  
Alt 11.07.2009, 07:55  
Erfahrener Benutzer
 
Benutzerbild von princemichi
 
Registriert seit: 16.06.2009
Beiträge: 125
PHP-Kenntnisse:
Fortgeschritten
princemichi ist zur Zeit noch ein unbeschriebenes Blatt
Standard

jo...diese sache hat nicht viel mit php zu tun, viel mehr von serververwaltung oder wie man dass nennen möchte...

na die vorschläge sind ja auch sicher falsch. also zumindest was deren inhalt, nicht deren sinnhaftigkeit angeht. du kannst mir ja noch mehr infos geben. wichtig ist z.b. wie die datenbank heißt!

habe oben in der fehlermeldung gesehen du hast als db "mysqli" als db convention ausgewählt. normalerweise sollte das auf "mysql" in phpBB3 stehen. aber wenn du dich nicht einloggen kannst ist das ja son ding, das zu ändern... denn dann versucht er die db anders zu connectieren...daher evtl. der fehler?

ich meine im rootpath von phpbb3 gibt es noch ne config.php oder ähnlich. dort solltest du dann man die db convention ändern...

die anderen zwei beispielwerte von mir also root und localhost könnten sogar richtig sein. sollte es dann noch nicht gehen, nim mal anstatt localhost => 127.0.0.1

grüße
pm

Geändert von princemichi (11.07.2009 um 08:17 Uhr).
princemichi ist offline  
Alt 13.07.2009, 11:32  
Neuer Benutzer
 
Registriert seit: 11.07.2009
Beiträge: 4
PHP-Kenntnisse:
Anfänger
EinNickname befindet sich auf einem aufstrebenden Ast
Standard

Hey du bist der Groesste!
Danke fuer den Tipp mit der config.php Datei!
Die Passwoerter wurden auf dem Server geaendert, aber in dieser Datei war noch das alte Passwort, und kaum habe ich das angepasst, schon hats funktioiert!

Deine anderen Tipps habe ich vorher umgesetzt, aber da gab es keine Besserung; lag wirklich am Passwort,
jetzt funktioniert alles, danke!

(ps: war das Wochenende weg, darum erst jetzt die Antwort)
EinNickname ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
require und redeclare | fatal error Chestarbargel PHP Tipps 2009 8 07.05.2009 11:35
[Erledigt] Fatal error: Function name must be a string...... IgelHaut PHP Tipps 2009 3 26.04.2009 17:45
[Erledigt] Smarty Fatal Error martl666 PHP Tipps 2008 4 30.09.2008 10:59
Fatal error: Call to undefined function imagecreatefromjpeg() filehop PHP Tipps 2008 15 27.09.2008 00:38
[Erledigt] Parse Error (Joomla Seite) thuemmeli PHP Tipps 2008 2 05.08.2008 10:35
Spionageversuch? Code-Injection? saibot PHP-Fortgeschrittene 24 06.10.2007 02:07
Fatal Error bei DB-Import über Consolenbefehl (Windows) PsychoEagle Datenbanken 2 01.10.2007 15:03
Fatal error: Cannot use object of type FPDF as array in Alpha Centauri PHP Tipps 2006 5 22.03.2006 14:44
xmlrpc-epi kompilieren [gelöst] freq.9 Server, Hosting und Workstations 4 24.07.2005 21:45
[Erledigt] Fatal Error PHP Tipps 2005 11 21.05.2005 11:39
Fatal error: Allowed memory size of 8192 bytes exhausted at PHP Tipps 2005 11 06.03.2005 19:26
Fatal error: Call to a member function on a non-object PHP Tipps 2005 15 04.02.2005 13:02
Fatal error: Call to undefined function: imagecreatefromjpeg DannyD PHP-Fortgeschrittene 10 05.12.2004 21:59
FATAL ERROR stefan-miti PHP Tipps 2004 15 15.08.2004 16:03
[Erledigt] Fatal error: Call to undefined function:... PHP Tipps 2004 8 27.06.2004 12:56

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
dbal.php on line 602, fatal error: function name must be a string switch, \dbal.php on line 602\, call to a member function fetchall(), joomla built statement query, joomla built statement, mysql left_join, sql error [ mysqli ] access denied for user \'root\'@\'localhost\' (using password: yes) [1045] an sql error occurred while fetching this page. please contact an administrator if this problem persists., joomla php html query, joomla error messages ändern, joomla php sql in content fehler, joomla sql_fetchrow, htmlspecialchars in joomla, $db->sql_transaction(\'begin\') phpbb fatal error: call to a member function sql_transaction() on a non-object in, $db->sql_transaction(\'begin\') phpbb, one or more values in the insert statement, update statement, php str_replace wildcard, joomla fetch array, joomla build query statement, joomla fehler config php

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:20 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum