Avatar billede loevstroem Nybegynder
01. februar 2008 - 18:37 Der er 1 kommentar og
1 løsning

Call to a member function prepare() on a non-object

Hej Eksperter. Jeg får fejlen Fatal error: Call to a member function prepare() on a non-object ved brug af en af mine classes.

Jeg er forholdvis ny i PHP PDO, så desværre kan jeg ikke se hvorfor den opstår- jeg har intet i dokumentationen omkring dette kunne finde.

På min side har jeg inkluderet min connection:

$dbh = new PDO('mysql:host=localhost;dbname=ddv', root, minkode, array(PDO::ATTR_PERSISTENT => true));

og selve funktionen jeg prøver at køre:

public function register_user($username, $password, $email, $administrator, $firstname, $lastname) {
    $username = ucfirst(strtolower(trim($username)));
    $password = strtolower(trim(md5($password)));
    $firstname = ucfirst(strtolower(trim($firstname)));
    $lastname = ucfirst(strtolower(trim($lastname)));
   
    $stmt = $dbh->prepare("INSERT INTO usergroups (username, password, email, administrator, firstname, lastname, datemark)
    VALUES (:username, :password, :email, :administrator, :firstname, :lastname, :datemark)");
   
    $stmt->bindParam(':username', $username);
    $stmt->bindParam(':password', $password);
    $stmt->bindParam(':email', $email);
    $stmt->bindParam(':administrator', $administrator);
    $stmt->bindParam(':firstname', $firstname);
    $stmt->bindParam(':lastname', $lastname);
    $stmt->bindParam(':datemark', NOW());
    $stmt->execute();
}
Avatar billede erikjacobsen Ekspert
01. februar 2008 - 19:02 #1
Put en
  global $dbh;
ind som det første i din funktion, eller tag den med som parameter.
Avatar billede loevstroem Nybegynder
23. februar 2008 - 00:05 #2
Dette har desværre ikke været løsningen. Jeg valgte at omskrive hele min klasse og blot bruge den som en extend til en mysql klasse.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester