Seite 1 von 1
bug class.genericdb.php
Verfasst: Sa 11. Nov 2006, 12:37
von emergence
in function deleteWhere
findet sich
Code: Alles auswählen
if ($this->_where["global"][$field]["operator"] == $operator && $this->_where["global"][$field]["restriction"] = $restriction)
da fehlt ein
=
also so
Code: Alles auswählen
if ($this->_where["global"][$field]["operator"] == $operator && $this->_where["global"][$field]["restriction"] == $restriction)
Verfasst: Sa 11. Nov 2006, 12:38
von emergence
das selbe bei function deleteWhereGroup zu finden
Verfasst: Sa 25. Nov 2006, 16:17
von emergence
auf noch was blödes draufgenagelt...
class Item -> function store()
da gibts
Code: Alles auswählen
foreach ($this->modifiedValues as $key => $value)
{
if ($first == true)
{
$sql .= "$key = '".$this->values[$key]."'";
$first = false;
} else
{
$sql .= ", $key = '".$this->values[$key]."'";
}
}
das hat bei mir nun ein fehler verursacht da ich ein db feld für $key hatte das als sql anweisung misinterpretiert wurde...
zuerst bin ich das ganze umgangen in dem ich etwas wie das hier verwendet habe
Code: Alles auswählen
$oTEST_Object_Check_Item->set("`".$key."`", $value, true);
dies hat aber nach dem aufruf von store zu folge das der value und lastModified array des objekts diese keys ebenso mit ` aufweist...
in der db wird es aber richtig gesichert...
somit...
änderung in der store methode
Code: Alles auswählen
foreach ($this->modifiedValues as $key => $value)
{
if ($first == true)
{
$sql .= "`$key` = '".$this->values[$key]."'";
$first = false;
} else
{
$sql .= ", `$key` = '".$this->values[$key]."'";
}
}
und man kann ruhigen gewissens etwas wie das hier verwenden
Verfasst: Di 5. Jun 2007, 23:47
von HerrB
Checkin.
Gruß
HerrB
backtick nicht generic
Verfasst: Do 7. Jun 2007, 10:32
von knb
Das mit dem Backtick ist doch mysql-Proprietär , nicht wahr?
Diese Änderungen machen den Code doch weniger "generic" ?
(Meinetwegen kann der geänderte Code auch so bleiben, da wohl niemand was anderes als das mysql DBMS als Datastore für Contenido benutzt.)
Verfasst: Do 7. Jun 2007, 15:59
von HerrB
Na ja, es ist ja geplant, noch einen DB-Abstraktionslayer dazwischenzulegen. Die genericdb ist - trotz des Namens - nicht dieser Layer.
Wenn also der Layer eingezogen wird, muss sowieso jeder Bereich angefasst werden, das fällt dann nicht mehr auf...
Gruß
HerrB
Verfasst: So 24. Jun 2007, 18:31
von HerrB
Done.
Gruß
HerrB