Die verbindung zur Db stelle ich hier her:
function SQL($userid,$user_module,$dsn,$user,$pass) {
$this->db = odbc_connect($dsn,$user,$pass);
$this->rights = $user_module['name'];
$this->read = $user_module['read']==1?true:false;
$this->write = $user_module['write']==1?true:false;
$this->change = $user_module['change']==1?true:false;
$this->user = $userid;
}
zum speichern führe ich normalerweise solch ähnlichen Code aus:
if($sql->setNewUnbefuellt($Trode)) {
$errorMsg = "<DIV class='ok'>{$_LANG['formular wurde gespeichert']}</DIV>";
unset($Trode);unset ($el_t); unset ($el_m);unset ($el_j);
$error = false;
}
else {
$Trode['Serienummer'] = $actdat['id'];
$errorMsg = "<DIV class='error'>{$_LANG['fehler']}: " . $_LANG[$sql->errMsg] . "</DIV>";
}
mit diesem Code gehe ich dann zur Funktion, die so ist:
function setNewUnbefuellt($Trode) {
if($this->write==true) {
$query = "INSERT INTO tblhistorie (";
$keys = array_keys($Trode);
for($i=0;$i<count($keys);$i++) {
$query .= "[" . $keys[$i] . "], ";
}
$query .= "Ausgangsuser, Ausgangsdatum) VALUES (";
for($i=0;$i<count($keys);$i++) {
if($keys[$i]=='Bemerkungen' || $keys[$i]=='Ellipsoid1' || $keys[$i]=='Artikelnummer' || $keys[$i]=='Spezielles' )
$query .= "'" . $Trode[$keys[$i]] . "', ";
else
$query .= $Trode[$keys[$i]] . ", ";
}
// $query .= $this->user . ", '" . date("Y-d-m",time()) . "')"; //ISO
$query .= $this->user . ", '" . date("Y-m-d",time()) . "')"; //USA
$result = odbc_exec($this->db, $query) or die("Query failed");
return true;
}
else {
$this->errMsg = "keine schreib rechte für diesen user";
return false;
}
}
Aber alles was ich jetz in diese Hinsicht mache, funkt nicht!
gruss
Martin