D.h. ich brauche aber grundsätzlich erstmal kein include, use etc. sondern nur extends und dann $this->writeLogEvent(); habe ich das jetzt richtig verstanden?
Ankündigung
Einklappen
Keine Ankündigung bisher.
Constant expression contains invalid operations
Einklappen
Neue Werbung 2019
Einklappen
X
-
Zitat von Meister1900 Beitrag anzeigenWas heißt "geht nicht"? Wenn er die Methode nicht findet würde er sagen:
Fatal error: Uncaught Error: Call to undefined method MySQL::writeLogEvent()
Alles andere sind weitere Fehler, die du fixen musst.
Code:Fatal error: Class 'LogSystem' not found in C:\xampp\htdocs\dashboard\assets\templates\all\MySQL.inc.php on line 3
PHP-Code:<?php
class MySQL extends LogSystem {
const FILEPATH = "";
private $hostname = null;
private $port = null;
private $username = null;
private $password = null;
private $dbname = null;
function __construct() {
$conData = getConnectionData();
$this->hostname = $conData->hostname;
$this->port = $conData->port;
$this->username = $conData->username;
$this->password = $conData->password;
$this->dbname = $conData->dbname;
}
function createMySQLConnection() {
try {
$this->writeLogEvent("SUCCESS", "MySQL Verbindung wurde erfolgreich aufgebaut!");
$pdo = new PDO('mysql:host='+ $this->hostname +';dbname='+ $this->dbname +'', ''+ $this->username +'', ''+ $this->password +'');
return $pdo;
} catch(Exeption $e) {
$this->writeLogEvent("ERROR", "MySQL Verbindung wurde NICHT aufgebaut!");
return false;
}
}
public function refreshConnectionData() {
$conData = getConnectionData();
$this->hostname = $conData->hostname;
$this->port = $conData->port;
$this->username = $conData->username;
$this->password = $conData->password;
$this->dbname = $conData->dbname;
}
private function getConnectionData() {
$handle = fopen (self::FILEPATH, "r");
$rawData = json_decode(fread ($handle, filesize ($dateinamen)));
fclose ($handle);
return $rawData;
}
}
?>
Kommentar
-
Zitat von WebInsel Beitrag anzeigenD.h. ich brauche aber grundsätzlich erstmal kein include, use etc. sondern nur extends und dann $this->writeLogEvent(); habe ich das jetzt richtig verstanden?sorry, shift-taste kaputt
Kommentar
-
Zitat von Meister1900 Beitrag anzeigenNein, jetzt findet er die Klasse nicht, weil das include fehlt.Zitat von Meister1900 Beitrag anzeigenVon include [...] hat keiner was gesagt.
Kommentar
-
MrChangelog schon wieder .. Sag ist die langweilig? Du reisst Zusammenhänge auseinander und ziehst das gegen die Schreibenden ins Lächerliche. Lass das bitte. Wenn du oben nochmals nachliest, dann wird dir auffallen das da noch ein Zitat dazwischen war und sich die beiden Aussagen nicht aufeinander sondern auf das Zitat beziehen.
Zitat von Meister1900 Beitrag anzeigenNein, jetzt findet er die Klasse nicht, weil das include fehlt.Zitat von WebinselD.h. ich brauche aber grundsätzlich erstmal kein include, use etc. sondern nur extends und dann $this->writeLogEvent(); habe ich das jetzt richtig verstanden?Zitat von Meister1900 Beitrag anzeigenVon include und use hat keiner was gesagt.The string "()()" is not palindrom but the String "())(" is.
Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
PHP.de Wissenssammlung | Kein Support per PN
- 2 Likes
Kommentar
-
Glaube mir, ich habe reichlich Humor, im Gegensatz zu deinen "Anmerkungen". Belassen wir es dabei, sonst wird der Thread noch mehr verwässert.
Sonst kannst du im OffTopic gerne einen Thread aufmachen und uns deinen Humor von hier und dort erklären.The string "()()" is not palindrom but the String "())(" is.
Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
PHP.de Wissenssammlung | Kein Support per PN
Kommentar
-
WebInsel : Ich kann noch nicht klar erkennen was dein Ziel ist. Möchtest du eine Loggerklasse erstellen welche seine Einträge in eine Datenbank schreibt? Oder in eine Datei? Oder beides ermöglicht?
Für beides ist dein Ansatz mit extends schlecht geeignet und unflexibel. Darauf wurde schon mehrfach hingewiesen.
Mal so im Groben:
PHP-Code:$handle = new MySqlDBHandler(/* Verbindungsparameter */);
$logger = new Logger($handle)
Kommentar
-
Zitat von jspit Beitrag anzeigenWebInsel : Ich kann noch nicht klar erkennen was dein Ziel ist. Möchtest du eine Loggerklasse erstellen welche seine Einträge in eine Datenbank schreibt? Oder in eine Datei? Oder beides ermöglicht?
Für beides ist dein Ansatz mit extends schlecht geeignet und unflexibel. Darauf wurde schon mehrfach hingewiesen.
Mal so im Groben:
PHP-Code:$handle = new MySqlDBHandler(/* Verbindungsparameter */);
$logger = new Logger($handle)
Kommentar
-
Das macht PHP doch selbst schon. Schau mal error reporting und error logging nach in der Doku.The string "()()" is not palindrom but the String "())(" is.
Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
PHP.de Wissenssammlung | Kein Support per PN
Kommentar
Kommentar