From 3c72e2f9c940a2dad40fdda03c3f16d333777a16 Mon Sep 17 00:00:00 2001 From: moodler Date: Sun, 19 Jan 2003 05:46:49 +0000 Subject: [PATCH] Some changes to insert_record to help Postgres 7.3 --- lib/datalib.php | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/lib/datalib.php b/lib/datalib.php index ba2c377e13..8a1ef2d8bb 100644 --- a/lib/datalib.php +++ b/lib/datalib.php @@ -492,7 +492,11 @@ function insert_record($table, $dataobject, $returnid=true) { if ($data[$column->name] == "" and !empty($column->has_default)) { $ddd[$column->name] = $column->default_value; } else { - $ddd[$column->name] = $data[$column->name]; + if (empty($column->not_null)) { + $ddd[$column->name] = null; + } else { + $ddd[$column->name] = $data[$column->name]; + } } } else { if (!empty($column->has_default)) { @@ -514,14 +518,15 @@ function insert_record($table, $dataobject, $returnid=true) { $select = ""; foreach ($ddd as $key => $value) { - $count++; - $inscolumns .= "$key"; - $insvalues .= "'$value'"; - $select .= "$key = '$value'"; - if ($count < $numddd) { - $inscolumns .= ", "; - $insvalues .= ", "; - $select .= " AND "; + if (!is_null($value)){ + if ($select) { + $inscolumns .= ", "; + $insvalues .= ", "; + $select .= " AND "; + } + $inscolumns .= "$key"; + $insvalues .= "'$value'"; + $select .= "$key = '$value'"; } } -- 2.39.5