abstracte pdo sql methode

Status
Niet open voor verdere reacties.

nl18663

Gebruiker
Lid geworden
19 dec 2007
Berichten
156
Hallo,

ik zit met het volgende probleem, ik zou graag een abstracte insert methode willen creëren om een sql uit te voeren met behulp van pdo en mysql.

hoe ik de functie wil aanroepen is op de volgende manier:
saveSQL($tabelnaam, $objectnaam);

wat ik tot nu toe heb is het volgende:
public function saveSQL($dbTable,$objValue){
$rs = $this->getDatabase()->prepare("insert into $dbTable ()")
}

maar ik kan een bepaalde denkstap niet maken. en dat is wel dat ik op een manier $objValue moet uitlezen met een foreach en die waardes in de sql string moet zetten. ik zou als ik het goed begrijp dynamisch variablen moeten aanmaken, maar hoe doe ik dat?? of zit ik helemaal in de verkeerde richting te denken?

Alvast bedankt!

Hans (met hoofdpijn :confused:)
 
ik heb hem nog wat verder uitgewerkt zodat mijn vraag wat duidelijker is:
PHP:
	public function saveGebruiker($dbTable,$objValue){
		$rs = $this->getDatabase()->prepare("INSERT INTO $dbTable ($key1, $key2, $key3) VALUES (:$value1, $value2, value3)");
		foreach($objValue as $key => $value){
			$rs->bindparam(":$key, $value");
		}
		$rs->execute();
	}

het probleem zit 'm dus in
PHP:
$rs = $this->getDatabase()->prepare("INSERT INTO $dbTable ($key1, $key2, $key3) VALUES (:$value1, $value2, value3)");

hoe krijg ik die gegevens op die manier in dit statement?
of is het zo simpel dat ik het zelf niet meer zie?
 
Waarschijnlijk de keys en values als array meegeven, dan de array uitlezen en zorgen dat er een query mee opgebouwd wordt.
 
de reden waarom ik niets terug krijg heb ik gevonden... omdat ik een object uit een andere class wil lezen en daar alle members private zijn kun je ze niet uitlezen. als ik met een functie get_class_methods alleen de getters uitlees en daar een nieuwe array mee maak is het probleem opgelost.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan