ik heb een vraag, ik ben bezig met een mysql class omdat ik een site aan het maken ben met een cms, dus moet veel met database werken. daarom dacht ik dat het makkelijker was om een class te gebruiken om het te vereenvoudigen.
ik heb nu dit
<?php
/**
* @author Leon Kuipers
* @copyright 2012
*/
$dbnaam = 'test';
class mysql
{
private $wachtwoord, $verbinding;
public $dbnaam, $regles, $a_regels , $resultaat, $data, $naam;
private $host = 'localhost';
public function setup($naam, $wachtwoord)
{
$this->naam = $naam;
$this->wachtwoord = $wachtwoord;
}
public function mysql_verbinding($db)
{
if(!$this->$naam)
{
$this->naam = 'root';
}
if (isset($this->wachtwoord))
{
$this->wachtwoord = '';
}
$this->dbnaam = $db;
$this->id = mysql_connect($this->host, $this->naam, $this->wachtwoord)
or (mysql_error('Kan geen verbinding maken'));
}
public function database_selecteren($dbnaam)
{
mysql_select_db($db , $this->id) or (mysql_error('Kan de database niet selecteren'));
}
public function query_stukje ($query)
{
$this->resultaat = mysql_query($query, $this->id) or (mysql_error('Kan het stukje data niet ophalen.'));
$this->regels = mysql_num_rows($this->resultaat) or (mysql_error('Er mislukte iets met het tellen.'));
$this->a_regels = mysql_affected_rows($this->resultaat) or (mysql_error('Er ging iets mis met de functie affected_rows.'));
$this->data = mysql_fetch_assoc($this->resultaat) or (mysql_error('Er ging iets mis bij het ophalen van een stukje data.'));
return $this->data[0];
}
public function query_regel ($query)
{
$this->resultaat = mysql_query($query, $this->id) or (mysql_error('Kan de regel data kan niet ophalen.'));
$this->regels = mysql_num_rows($this->resultaat) or (mysql_error('Er mislukte iets met het tellen.'));
$this->a_regels = mysql_affected_rows($this->resultaat) or (mysql_error('Er ging iets mis met de functie affected_rows.'));
$this->data = mysql_fetch_assoc($this->resultaat) or (mysql_error('Er ging iets mis bij het ophalen van een regel data.'));
return $this->data;
}
public function assoc_dupliceren($regel)
{
mysql_data_seek($this->resultaat) or (mysql_error('Er is iets fout gegeaan bij het dupliceren met seek'));
$this->data = mysql_fetch_assoc($this->resultaat) or (mysql_error('Er ging iets mis bij het ophalen van duplo.'));
}
public function update ($query)
{
$this->resultaat = mysql_query($query, $this->id) or (mysql_error('Kan de regel data kan niet updaten.'));
$this->a_regels = mysql_affected_rows($this->result) or (mysql_error('Er ging iets mis met de functie affected_rows.'));
}
public function verwijderen ($query)
{
$this->resultaat = mysql_query($query, $this->id) or (mysql_error('Kan het stukje data verwijderen'));
$this->a_regels = mysql_affected_rows($this->result) or (mysql_error('Er ging iets mis met de functie affected_rows.'));
}
}
?>
maar als ik verbinding wil maken krijg ik elkekeer een error. ( ik weet dat me fout afhandeling niet goed is maar dit is nog puur om te testen)!
de errors zijn:
Notice: Undefined variable: naam in C:\wamp\www\_incl\mysql_class.php on line 24
Fatal error: Cannot access empty property in C:\wamp\www\_incl\mysql_class.php on line 24
ik heb de class zo aangeroeppen
<?php
include 'mysql_class.php';
$dbnaam = 'test';
$b = new mysql();
$b->setup('root', '');
$b->mysql_verbinding($dbnaam);
?>
als iemand mijn wil helpen ben ik hem dankbaar
4.226 views