jaegerschnitzel
Mitglied
Ich möchte ein vorhandenes Script etwas umschreiben.
Leider bekomme ich eine Fehlermeldung und ich weiß nicht wirklich was ich falsch mache. Kommt vermutlich auch daher dass ich mit OOP bisher so gut wie nichts gemacht habe.
Hier mal mein ursrünglicher Code:
config.php
funktionen.php
dann habe mal versucht ein paar verbesserungen umzusetzten
bin aber nicht arg weit gekommen *schäm*
jetzt sieht es so aus:
jetzt kommt folgender fehler:
Fatal error: Call to a member function fetch() on a non-object in
könnt ihr mir vielleicht helfen?
hab ich den code überhaupt beim 2ten versuch verbessert!?
wie würdet ihr es machen?
Leider bekomme ich eine Fehlermeldung und ich weiß nicht wirklich was ich falsch mache. Kommt vermutlich auch daher dass ich mit OOP bisher so gut wie nichts gemacht habe.
Hier mal mein ursrünglicher Code:
config.php
PHP:
class connect {
public function mysql_verbinden()
{
$user = "testuser";
$password = "testpasswort";
$verbindung = new PDO("mysql:host=localhost;dbname=test", $user, $password);
}
}
funktionen.php
PHP:
require ('config/config.php');
function holeBenutzerId($benutzername)
{
$test = new connect();
$test->mysql_verbinden();
$sql = "SELECT benutzerid FROM benutzer WHERE benutzername = :benutzername";
$stmt = $verbindung->prepare($sql);
$stmt->bindParam( ':benutzername', $benutzername);
$result = $stmt->execute();
$data = $result->fetch(PDO::FETCH_OBJ);
echo $data->benutzerid;
$result = null;
$stmt = null;
$verbindung = null;
}
dann habe mal versucht ein paar verbesserungen umzusetzten
bin aber nicht arg weit gekommen *schäm*
jetzt sieht es so aus:
PHP:
class Connection {
public $connect;
public function Connection() // Konstruktor der automatisch verbindet
{
$user = "testuser";
$password = "testpasswort";
$this->connect = new PDO("mysql:host=localhost;dbname=cdcol", $user, $password);
}
function holeBenutzerId($benutzername)
{
$sql = "SELECT benutzerid FROM benutzer WHERE benutzername = :benutzername";
$stmt = $this->connect->prepare($sql);
$stmt->bindParam( ':benutzername', $benutzername);
$result = $stmt->execute();
$data = $result->fetch(PDO::FETCH_OBJ);
echo $data->benutzerid;
$this->result = null;
$this->stmt = null;
$this->connect = null;
}
jetzt kommt folgender fehler:
Fatal error: Call to a member function fetch() on a non-object in
könnt ihr mir vielleicht helfen?
hab ich den code überhaupt beim 2ten versuch verbessert!?
wie würdet ihr es machen?