The branch, master has been updated via 362aa516ac7b4b384e9cfb5d7aa7683b6b38515d (commit) from ec9a60f8e09463ea34cdd11849b4c2357c4351e5 (commit)
- Log ----------------------------------------------------------------- commit 362aa516ac7b4b384e9cfb5d7aa7683b6b38515d Author: Marc Delisle marc@infomarc.info Date: Thu Jul 22 14:10:58 2010 -0400
undefined $primary_field
-----------------------------------------------------------------------
Summary of changes: libraries/blobstreaming.lib.php | 31 +++++++++++++++++++++++++++++++ tbl_replace.php | 4 ++++ 2 files changed, 35 insertions(+), 0 deletions(-)
diff --git a/libraries/blobstreaming.lib.php b/libraries/blobstreaming.lib.php index abbe047..5403e76 100644 --- a/libraries/blobstreaming.lib.php +++ b/libraries/blobstreaming.lib.php @@ -473,4 +473,35 @@ function PMA_BS_getURL($reference) $bs_url = 'http://' . $bs_server . '/' . rtrim($reference); return $bs_url; } + +/** + * returns the field name for a primary key of a given table in a given database + * + * @access public + * @param string - database name + * @param string - table name + * @uses PMA_DBI_select_db() + * @uses PMA_backquote() + * @uses PMA_DBI_query() + * @uses PMA_DBI_fetch_assoc() + * @return string - field name for primary key +*/ +function PMA_BS_GetPrimaryField($db_name, $tbl_name) +{ + // select specified database + PMA_DBI_select_db($db_name); + + // retrieve table fields + $query = "SHOW FULL FIELDS FROM " . PMA_backquote($tbl_name); + $result = PMA_DBI_query($query); + + // while there are records to parse + while ($data = PMA_DBI_fetch_assoc($result)) { + if ("PRI" == $data['Key']) { + return $data['Field']; + } + } + // return NULL on no primary key + return NULL; +} ?> diff --git a/tbl_replace.php b/tbl_replace.php index 48b98c1..d3271ac 100644 --- a/tbl_replace.php +++ b/tbl_replace.php @@ -210,6 +210,10 @@ foreach ($loop_array as $rowcount => $where_clause) { ? $_REQUEST['auto_increment']['multi_edit'][$rowcount] : null;
+ if ($blob_streaming_active) { + $primary_field = PMA_BS_GetPrimaryField($GLOBALS['db'], $GLOBALS['table']); + } + // Fetch the current values of a row to use in case we have a protected field // @todo possibly move to ./libraries/tbl_replace_fields.inc.php if ($is_insert && $using_key && isset($me_fields_type) && is_array($me_fields_type) && isset($where_clause)) {
hooks/post-receive