| PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here! |
 |
|

29-03-2010, 20:23
|
|
Jama22
Registrierter Benutzer
|
|
Registriert seit: Dec 2009
Beiträge: 29
|
|
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 (1 === $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
Geändert von Jama22 (29-03-2010 um 20:44 Uhr)
|

29-03-2010, 20:58
|
Kropff
  Administrator
|
|
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.310
|
|
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.
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
|

29-03-2010, 21:01
|
|
Jama22
Registrierter Benutzer
|
|
Registriert seit: Dec 2009
Beiträge: 29
|
|
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.
Geändert von Jama22 (29-03-2010 um 21:23 Uhr)
|

29-03-2010, 21:29
|
Kropff
  Administrator
|
|
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.310
|
|
Zitat:
Zitat von Jama22
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
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
|

29-03-2010, 21:33
|
|
Jama22
Registrierter Benutzer
|
|
Registriert seit: Dec 2009
Beiträge: 29
|
|
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?
|

29-03-2010, 21:34
|
Kropff
  Administrator
|
|
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.310
|
|
Zieh dir einfach den aktuellen XAMPP. Da ist das mit drin.
Peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
|

29-03-2010, 21:36
|
|
Jama22
Registrierter Benutzer
|
|
Registriert seit: Dec 2009
Beiträge: 29
|
|
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.
|

29-03-2010, 21:54
|
Abraxax
  THE REAL HAXE (Administrator)
|
|
Registriert seit: Jul 2002
Ort: neuss.nrw.de
Beiträge: 22.621
|
|
Klar kannst du das. Das ist aber viel zu viel Aufwand.
|

29-03-2010, 22:00
|
|
Jama22
Registrierter Benutzer
|
|
Registriert seit: Dec 2009
Beiträge: 29
|
|
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!
|

29-03-2010, 22:11
|
Kropff
  Administrator
|
|
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.310
|
|
Wie ich schon sagte, XAMPP.
Peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
|

29-03-2010, 22:18
|
|
Jama22
Registrierter Benutzer
|
|
Registriert seit: Dec 2009
Beiträge: 29
|
|
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!
|

30-03-2010, 09:24
|
Kropff
  Administrator
|
|
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.310
|
|
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
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
|

30-03-2010, 09:34
|
|
Jama22
Registrierter Benutzer
|
|
Registriert seit: Dec 2009
Beiträge: 29
|
|
Zitat:
Zitat von Kropff
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!
|

30-03-2010, 09:41
|
Kropff
  Administrator
|
|
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.310
|
|
Dann mach das ganz normal über die Standardfunktionen für MySQL, Also mysql_connect, mysql_select_db, mysql_query, etc.
Peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
|

30-03-2010, 09:51
|
|
Jama22
Registrierter Benutzer
|
|
Registriert seit: Dec 2009
Beiträge: 29
|
|
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 { // .... // // .... // ?>
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|