Beste forummers,
Momenteel ben ik bezig mezelf aan te leren om met classes te werken en deze ook zelf te schrijven.
Om mezelf een beetje wegwijs te maken ben ik nu bezig met een insert functie schrijven. Ik loop nu alleen even tegen een probleempje aan.
Onderstaand een deel van de code, waar het nu nog niet lekker loopt.
<?php
public function InsertIntoDatabase($info) {
global $dbh;
return $this->variables;
// run insert query
$query = 'INSERT INTO registered_user (' .
$this->database_fields
. ') VALUES (' .
$this->database_placeholders
. ')';
$stmt = $dbh->prepare($query);
return $this->bindparam;
$stmt->execute();
}
?>
Het gaat 'm om de volgende 2 regels:
<?php
return $this->variables;
return $this->bindparam;
?>
Hier gaat het mis. Als ik er echo voor zet, dan worden wel de goede waarden weer gegeven.
echo $this->variables; geeft netjes:
<?php
$variabele = 'waarde';
?>
en echo $this->bindparam; geeft netjes:
<?php
$stmt->bindParam(':waarde',$waarde);
?>
Als ik de query uit wil voeren, krijg ik geen foutmelding, maar er wordt niks toegevoegd aan de database.
Als ik vervolgens $this->variables; en $this->bindparam; weg haal, en er $variabele = 'waarde'; en $stmt->bindParam(':waarde',$waarde); voor in de plaats zet, dan gaat het wel goed.
Wat doe ik fout?
1.114 views