Beste iedereen, ik heb een vraagje omtrent mijn insert functie die ik probeer te schrijven in oop php.
dit moet ik ondanks mijn studie in mijn eigen tijd doen om dat school hier niks van wil weten en het mij een betere manier van programeren lijkt dan dat ik op school krijg.

nu doet alleen mijn insert functie het niet, terwijl ik geen errors terug krijg iemand een suggestie?
code staat hier onder.

de insert functie.
<?php
Public function insert(){
if(!$this->table) {die('geen tabel geselecteerd.');}
if(!$this->fields) {die('geen waardes geselecteerd.');}

$string='';
foreach($this->fields as $key=> $value){
$keys[] = $key;
$params[":".$key] = $value;
}

// opbouwen query.
$query = "INSERT INTO ".$this->table ." (";
$query .= join(", ", $keys);
$query .= ") VALUES (";
$query .= join(", ", array_keys($params));
$query .= ")";

$prep = $this->db->prepare($query);
$prep->execute($params);
}
?>

de rest.
<?php
include_once('Database.php');

$db = new Database();

//het setten van de database gevens zodat je kan conecten.
$db->setServer('localhost');
$db->setUsername('root');
$db->setDatabase('test');
$db->setPassword('');

// connect.
$db->connect();

//table select.
$db->setTable('naw');

// setten van inputvelden
$db->setFields('naam', 'Ralph');
$db->setFields('naam', 'Kelly');

// uitvoeren insert query.
echo $db->insert();

?>
kun je de complete class even als download aanbieden? dan kan ik hier wat testen
ik can hier de hele class plaatsen maar weet niet hoe je hem kan aanbieden om te downloaden

Zal hem zo wel ff op pastebin zetten


[size=xsmall]Toevoeging op 26/05/2014 23:09:29:[/size]

http://pastebin.com/kRWtUgX0 hier is de hele class maar is nog work in progress
Grappig maar in principe werkt je code wel.

Het enigste wat je moet doen is

<?php
// eerste record
$db->setFields('naam', 'Ralph');
$db->insert();

//tweede record
$db->setFields('naam', 'Kelly');
$db->insert();
?>

stel dat je tabel nu twee kolommen heeft bijvoorbeeld naam en email dan krijg je dit:
<?php
// eerste record
$db->setFields('naam', 'Ralph');
$db->setFields('email', '[email protected]');
$db->insert();

//tweede record
$db->setFields('naam', 'Kelly');
$db->setFields('email', '[email protected]');
$db->insert();
?>


[size=xsmall]Toevoeging op 27/05/2014 00:00:15:[/size]

Denk nog even om je logica:
<?php
public function setFields($fieldName, $fieldValue) {
$this->fields[$fieldName] = $fieldValue;
}
?>
Hoeveel fields 'set' je met deze functie? Maar één hé? Dan zou ik die s maar weghalen zodat het enkelvoud wordt
<?php
public function setField($fieldName, $fieldValue) {
$this->fields[$fieldName] = $fieldValue;
}
?>
mijn vraag was een is of het mogelijk is om met 1 query gegevens in 2 tabellen in te voeren.

[size=xsmall]Toevoeging op 27/05/2014 00:01:28:[/size]

bijvoorbeeld in naw en test

Reageren