PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr (https://www.php-resource.de/forum/)
-   PHP Developer Forum (https://www.php-resource.de/forum/php-developer-forum/)
-   -   Problem mit Loginscript (php-quake.net) (https://www.php-resource.de/forum/php-developer-forum/99192-problem-mit-loginscript-php-quake-net.html)

Jama22 29-03-2010 20:23

Problem mit Loginscript (php-quake.net)
 
Hallo,
Ich bins mal wieder, ich habe derzeit ein Problem mit dem Loginscript von PHP-Quake,
bekommen immer eine weiße Seite wenn ich die Verbindung mit der MySQL-Datenbank aufbauen will,
ich bekomme keine Fehler, ich bin Ratlos!

Hier mal mein Script:

PHP-Code:

<?php
error_reporting
(E_ALL);
ini_set('display_errors'1);

include 
'inc/functions.inc.php';
include 
'inc/constants.inc.php';
include 
'./config.inc.php';


$db = @new MySQLi($_config['host'], $_config['user'], $_config['password'], $_config['database']);
$ret 1;
if (
mysqli_connect_errno()) {
    
$ret 'Konnte keine Verbindung zu Datenbank aufbauen, MySQL meldete: '.mysqli_connect_error();
} else {
    
if (isset(
$_GET['page'], $dateien[$_GET['page']])) {
    if (
file_exists('inc/'.$dateien[$_GET['page']])) {
        
$ret = include 'inc/'.$dateien[$_GET['page']]; 
    } else {
        
$ret "Die Include-Datei konnte nicht geladen werden: 'includes/".$dateien[$_GET['page']]."' not found";
    }
} else {
    
$ret = include 'inc/'.$dateien['home'];
}
}

// Header
include 'templates/header.html';

// Laden der Template-Datei
if (is_array($ret) and isset($ret['filename'], $ret['data']) and
        
is_string($ret['filename']) and
        
is_array($ret['data'])) {
            
    
// Gültige Include-Datei
    
if (file_exists($file 'templates/'.$ret['filename'])) {
        
$data $ret['data']; 

        include 
$file;
    } else {
        
$data['msg'] = 'Templatedatei "'.$file.'" ist nicht vorhanden.';
        include 
'templates/error.html';
    }
} else if (
is_string($ret)) {
    
    
// Fehlermeldung
    
$data['msg'] = $ret;
    include 
'templates/error.html';
} else if (
=== $ret) {
    
    
// return wurde vergessen
    
$data['msg'] = 'In der Include-Datei wurde die return Anweisung vergessen.';
    include 
'templates/error.html';
} else {
    
    
// ein Ungültiger Return wert
    
$data['msg'] = 'Die Include-Datei hat einen ungültigen Wert zurückgeliefert.';
    include 
'templates/error.html';
}

// Footer
include 'templates/footer.html';
?>

Das ganze ist in ein Templatesystem intigriert, der Link zum Tutorial ist oben, ich würde mich über eure Hilfe freuen.

Edit: Ich habe mal die Fehlerunterdrückung von der MySQL-Abfrage weggenommen folgender Fehler erscheint:
Fatal error: Class 'MySQLi' not found in /share/MD0_DATA/Qweb/bg/index.php on line 10

Grüße
Janis

Kropff 29-03-2010 20:58

Du hast was vergessen. Im Tutorial gibt es noch ein
PHP-Code:

include 'classes.php'

Und da liegt wohl bei dir der Hase im Pfeffer. Oder dein PHP unterstützt kein MySQLi.

Peter

PS: Niemals mit @-Zeichen im Code arbeiten. Zumindest nicht in der Entwicklungsphase.

Jama22 29-03-2010 21:01

Danke dir Kropff,
Du hast Recht gehabt, ich finde halt nur den Absatz nicht wo steht was in die classes.php kommen,
ich such mal weiter, sollte ich noch weitere Probleme haben meld ich mich nochmal!

Edit: Ich komm einfach nicht mehr weiter ich finde nichts, keine defienierung des MySQLi-Objekts,
ich habe mir auch mit der Funktion phpInfo die Daten angeguckt und nach MySQLi gesucht kein Erfolg,
ich weiß nicht weiter, ich bräuchte doch nochmal euere Hilfe.

Kropff 29-03-2010 21:29

Zitat:

Zitat von Jama22 (Beitrag 637785)
ich habe mir auch mit der Funktion phpInfo die Daten angeguckt und nach MySQLi gesucht kein Erfolg

Dann unterstützt dein PHP kein MySQLi.

Peter

Jama22 29-03-2010 21:33

Wie kann ich das nachrüsten (...gibt es das zum Download?), PHP 5.2.x hab ich schon,
das ist kein Problem, ich weiß halt nur noch nicht wie ich auf den Server kommen!

Könnte ich nicht auch einfach eine Klasse mit den Eigentschaften definieren?

Kropff 29-03-2010 21:34

Zieh dir einfach den aktuellen XAMPP. Da ist das mit drin.

Peter

Jama22 29-03-2010 21:36

Könnte ich den keine Klasse mit den Eigentschaften definieren?
Das andere würde natürlich auch gehen, ist aber schwieriger für mich leider.

Abraxax 29-03-2010 21:54

Klar kannst du das. Das ist aber viel zu viel Aufwand.

Jama22 29-03-2010 22:00

Gibts es da nichts das ich einfach runterladen kann,
ich hab hier was gefunden weiß aber nicht ob es funkoniert, ich probier es gleich aus!

Kropff 29-03-2010 22:11

Wie ich schon sagte, XAMPP.

Peter

Jama22 29-03-2010 22:18

Nein, ich meinte die Klasse also ganzes, nicht die DLL-Datei?
Ich glaube wir reden aneinander vorbei, oder täusche ich mich, wen ja sorry!

Kropff 30-03-2010 09:24

Du verstehst das völlig falsch. Wenn PHP mit der Erweiterung MySQLi kompiliert wurde, so hast du einen direkten DB-Zugriff! Und zwar objekorientiert oder prozedural.

Peter

Jama22 30-03-2010 09:34

Zitat:

Zitat von Kropff (Beitrag 637809)
Du verstehst das völlig falsch. Wenn PHP mit der Erweiterung MySQLi kompiliert wurde, so hast du einen direkten DB-Zugriff! Und zwar objekorientiert oder prozedural.

Eigentlich versuche ich nur eine Möglichkeit zu finden die ohne eine Erweiterung funktsoniert, da muss es doch was geben!

Kropff 30-03-2010 09:41

Dann mach das ganz normal über die Standardfunktionen für MySQL, Also mysql_connect, mysql_select_db, mysql_query, etc.

Peter

Jama22 30-03-2010 09:51

Okay, kann man den auch was drehen mit SQL-Injection?
Also, ich habe mal den Code geändert, scheint nur das er den MySQL-Fehler nicht ausgibt.

PHP-Code:

<?php
// .... //
// .... //

$db mysql_connect($_config['host'], $_config['user'], $_config['password'], $_config['database']);
$ret 1;
if (
mysql_errno()) {
    
$ret 'Konnte keine Verbindung zu Datenbank aufbauen, MySQL meldete: '.mysql_error();
} else {
    
// .... //
// .... //
?>



Alle Zeitangaben in WEZ +2. Es ist jetzt 13:47 Uhr.

Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0
[c] ebiz-consult GmbH & Co. KG