2010-12-10 14 views
1

Ich habe einige Probleme mit einem 1 & 1 Konto einen Client von mir gehostet wird. Ich bekomme Fehler in den Zeilen 2 & 20 (unten fett dargestellt), die keinen Sinn ergeben, da sie grundlegende PHP-Funktionen sind.mySQL private/conn Ausgaben

Ich habe das gleiche Skript Dutzende Male ohne Probleme verwendet, bis es auf dieses 1 & 1 Konto gesetzt wurde. Sieht jemand etwas, das ich vermisse?

class Mysql { 

private $ conn;

Funktion __construct() { $ this-> conn = new mysqli (db_server, DB_USER, DB_PASSWORD, DB_NAME) oder die ('Es gab ein Problem mit der Datenbank zu verbinden.'); }

Funktion verify_Username_and_Pass ($ un $ PWD) {

$ query = "SELECT * FROM Benutzer WHERE username = AND password = LIMIT 1?";

if ($ stmt = $ this-> conn-> prepare ($ query)) { $ stmt-> bind_param ('ss', $ un, $ PWD); $ stmt-> execute();

Vielen Dank im Voraus!

EDIT:

dank pinkgothic mich daran erinnert, die Fehler hier zu setzen>. <

Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /homepages/24/d100728/htdocs/members/classes/Mysql.php on line 6 

^das ist für die private Klasse

Fatal error: Call to a member function on a non-object in /homepages/24/d100728/htdocs/members/classes/Mysql.php on line 20 

^, wenn die private Leitung Kommentar gesetzt ist, im, kann den Login-Bildschirm erreichen, aber diesen Fehler auf Vorlage erhalten.

Auch die Datenbank läuft MySQL5.0.

+0

Welche Fehler werden Sie bekommen? – pinkgothic

Antwort

0

Wenn sein Versagen auf der privaten Variablendeklaration, könnte es PHP 4 laufen werden, da es keine Möglichkeit gab, um private Klasse Eigenschaften til PHP 5.

+0

Ihr Recht, das ist was es war. Sie haben immer noch den Server bei PHP Version 4.4.9. gibt es einen Workaround dafür? – Nick

+0

@Nick: Du meinst "abgesehen vom Umschreiben des Codes, um es auf PHP 4 downrade?" Nicht wirklich. – Piskvor

+0

Nun, es kann oder auch nicht funktionieren. Aber Sie können das Private ändern, um var zu sagen. Und PHP4 unterstützt auch nicht die __construct-Methode. Der alte Weg war, eine Funktion mit dem gleichen Namen der Klasse für den Konstruktor zu erstellen. Also ändere __construct in Mysql. – profitphp