The branch, QA_3_3 has been updated
via 31cd4bdd6a7c42527b2011201d378e3c9accce8a (commit)
from 824458981388fbaad52c0e1d11db4c681bf03789 (commit)
- Log -----------------------------------------------------------------
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 1 +
libraries/dbi/mysql.dbi.lib.php | 4 +---
libraries/dbi/mysqli.dbi.lib.php | 8 +++++++-
3 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 2831d07..a5226f5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -11,6 +11,7 @@ $HeadURL:
https://phpmyadmin.svn.sourceforge.net/svnroot/phpmyadmin/trunk/phpMyA
- patch #3150164 [structure] Ordering by size gives incorrect results,
thanks to Madhura Jayaratne - madhuracj
- bug #3153409 [core] 0 row(s) affected
+- bug #3155842 [core] Edit relational page and page number
3.3.9.0 (2011-01-03)
- bug [doc] Fix references to MySQL doc
diff --git a/libraries/dbi/mysql.dbi.lib.php b/libraries/dbi/mysql.dbi.lib.php
index 6aa9c6a..5d2f8fe 100644
--- a/libraries/dbi/mysql.dbi.lib.php
+++ b/libraries/dbi/mysql.dbi.lib.php
@@ -396,13 +396,11 @@ function PMA_DBI_insert_id($link = null)
return false;
}
}
- //$insert_id = mysql_insert_id($link);
- // if the primary key is BIGINT we get an incorrect result
+ // If the primary key is BIGINT we get an incorrect result
// (sometimes negative, sometimes positive)
// and in the present function we don't know if the PK is BIGINT
// so better play safe and use LAST_INSERT_ID()
//
- // by the way, no problem with mysqli_insert_id()
return PMA_DBI_fetch_value('SELECT LAST_INSERT_ID();', 0, 0, $link);
}
diff --git a/libraries/dbi/mysqli.dbi.lib.php b/libraries/dbi/mysqli.dbi.lib.php
index f1f037c..07de2f7 100644
--- a/libraries/dbi/mysqli.dbi.lib.php
+++ b/libraries/dbi/mysqli.dbi.lib.php
@@ -457,7 +457,13 @@ function PMA_DBI_insert_id($link = '')
return false;
}
}
- return mysqli_insert_id($link);
+ // When no controluser is defined, using mysqli_insert_id($link)
+ // does not always return the last insert id due to a mixup with
+ // the tracking mechanism, but this works:
+ return PMA_DBI_fetch_value('SELECT LAST_INSERT_ID();', 0, 0, $link);
+ // Curiously, this problem does not happen with the mysql extension but
+ // there is another problem with BIGINT primary keys so PMA_DBI_insert_id()
+ // in the mysql extension also uses this logic.
}
/**
hooks/post-receive
--
phpMyAdmin