diff --git a/CREDITS b/CREDITS
index 887b08e9e..46dbffa35 100644
--- a/CREDITS
+++ b/CREDITS
@@ -21,6 +21,11 @@ CREDITS, in chronological order
* current project maintainer, with Marc and Loic
[lc] - Loïc Chapeaux
+ * rewrote and optimized javascript, DHTML and DOM stuff
+ * started to rewrite the scripts so they are XHTML1.0, CSS2 compliant
+ and fit the PEAR coding standards
+ * improved the language detection system
+ * bugfixes
[mg] - Mirko Giese
@@ -37,6 +42,15 @@ CREDITS, in chronological order
[pk] - Pete Kelly
+The following people have contributed minor changes, enhancements, bugfixes or
+or support for a new language since version 2.1.0:
+Ricardo ?, Sven-Erik Andersen, Alessandro Astarita, Borges Botelho,
+Olivier Bussier, Michal Cihar, Neil Darlow, Kristof Hamann, Thomas Kläger,
+Martin Marconcini, David Nordenberg, Bernard M. Piller,Laurent Haas,
+"Sakamoto", www.securereality.com.au, Michael Tacelosky, Daniel Villanueva,
+Chee Wai, Thomas Michael Winningham,
+
+
Original Credits of Version 2.1.0
---------------------------------
@@ -69,9 +83,10 @@ Original Credits of Version 2.1.0
for 2.0.6.
The following people have contributed minor changes, enhancements, bugfixes
or support for a new language:
- Jim Kraai, Jordi Bruguera, Miquel Obrador, Geert Lund, Thomas Kleemann, Alexander Leidinger,
- Kiko Albiol, Daniel C. Chao, Pavel Piankov, Sascha Kettler, Joe Pruett,
- Renato Lins, Mark Kronsbein, Jannis Hermanns, G. Wieggers.
+ Jim Kraai, Jordi Bruguera, Miquel Obrador, Geert Lund, Thomas Kleemann,
+ Alexander Leidinger, Kiko Albiol, Daniel C. Chao, Pavel Piankov,
+ Sascha Kettler, Joe Pruett, Renato Lins, Mark Kronsbein, Jannis Hermanns,
+ G. Wieggers.
And thanks to everyone else who sent me email with suggestions, bug-reports and
or just some feedback.
diff --git a/ChangeLog b/ChangeLog
index 094370505..4bce8cef6 100755
--- a/ChangeLog
+++ b/ChangeLog
@@ -5,6 +5,16 @@ phpMyAdmin - Changelog
$Id$
$Source$
+2001-07-11 Loïc Chapeaux
+ * tbl_properties.php3, db_details.php3: fixed some bugs with php3
+ (0 != empty).
+ * lib.inc.php3, lines 14-15: fixed bug #440430 with php3.
+ * grab_globals.inc.php3, tbl_printview.php3: removed the '^M' at the end of
+ some lines.
+ * Documentation.html: rewritten to validates xhtml1.0 & css2, added some
+ words about a common socket error and updated credits.
+ * french translation updated thanks to Laurent Haas.
+
2001-07-11 Steve Alberty
* tbl_properties.php3: fix division by zero error
* tbl_change.php3: enlarge binary protection to (var)char binary
diff --git a/Documentation.html b/Documentation.html
index c4c483bef..b9a694d8d 100755
--- a/Documentation.html
+++ b/Documentation.html
@@ -1,66 +1,109 @@
-
+
+
+
-phpMyAdmin 2.2.0rc1 - Documentation
-
+
+ phpMyAdmin 2.2.0rc1 - Documentation
+
+
phpMyAdmin 2.2.0 Documentation
+
+
+
-
-
-Top -
-Introduction -
-Installation -
-Configuration -
-FAQ -
-Developpers -
-Credits
-
+
+
+
+
+
+ Top -
+ Introduction -
+ Installation -
+ Configuration -
+ FAQ -
+ Developpers -
+ Credits
+
+
Introduction
@@ -72,389 +115,689 @@ h2 { font-family: Verdana, Arial, Helvetica, sans-serif; font-size:large; font-w
MySQL manual. Currently phpMyAdmin can:
-
- - create and drop databases
-
- create, copy, drop and alter tables
-
- delete, edit and add fields
-
- execute any SQL-statement, even batch-queries
-
- manage keys on fields
-
- load text files into tables
-
- create (*) and read dumps of tables
-
- export (*) and import data to CSV values
-
- administer multiple servers and single databases
-
- communicate in more than 20 different languages
-
+
+ - create and drop databases
+ - create, copy, drop and alter tables
+ - delete, edit and add fields
+ - execute any SQL-statement, even batch-queries
+ - manage keys on fields
+ - load text files into tables
+ - create (*) and read dumps of tables
+ - export (*) and import data to CSV values
+ - administer multiple servers and single databases
+ - communicate in more than 20 different languages
+
-
-(*) phpMyAdmin can compress (GZip format - RFC 1952) dumps and CSV exports if
-you use PHP4>=4.0.4 with Zlib support (--with-zlib)
-
+
+
+ (*) |
+
+ phpMyAdmin can compress (GZip format - RFC 1952) dumps and CSV exports
+ if you use PHP4>=4.0.4 with Zlib support (--with-zlib)
+ |
+
+
-
-
-Top -
-Introduction -
-Installation -
-Configuration -
-FAQ -
-Developpers -
-Credits
-
+
+
+
+
+
+ Top -
+ Introduction -
+ Installation -
+ Configuration -
+ FAQ -
+ Developpers -
+ Credits
+
+
Installation
-
- Quick Install:
+
Quick Install:
-- Untar or unzip the distribution (be sure to untar the subdirectories)
- tar xzvf phpMyAdmin_x.x.x.tar.gz
-- Open the file config.inc.php3 in your favourite editor and change
- the values for host, user and password to fit your environment.
- Have a look at Documentation.html for an explanation of all values.
-- It is recommended that you protect the directory in which
- you installed phpMyAdmin (unless it's on a closed intranet),
- for example with HTTP-AUTH (in a .htaccess-file).
-- Open the file //index.php3
- in your browser. phpMyAdmin should now display a welcome screen
- and your databases, or a login dialog if using advanced authentication.
+ - Untar or unzip the distribution (be sure to untar the subdirectories):
+ tar xzvf phpMyAdmin_x.x.x.tar.gz
+ - Open the file config.inc.php3 in your favourite editor and change
+ the values for host, user and password to fit your environment.
+ Have a look at Documentation.html for an explanation of all
+ values.
+ - It is recommended that you protect the directory in which
+ you installed phpMyAdmin (unless it's on a closed intranet),
+ for example with HTTP-AUTH (in a .htaccess file).
+ - Open the file
+ <www.your-host.com>/<your-install-dir>/index.php3
+ in your browser. phpMyAdmin should now display a welcome screen
+ and your databases, or a login dialog if using advanced authentication.
- Installation notes:
+Installation notes:
-- Be sure to protect the phpMyAdmin-directory. By default, it is not
- protected in any way! It shouldn't be readable by anyone and
- especially not by search-engines. Although I've added a "nofollow"
- directive on every page, there may be search-engines that don't
- care about that and still follow the links on the page.
- Think of AltaVista following a link named "Drop Database"
- You can get an overview of Apache's authentification methods at
- http://www.apacheweek.com/features/userauth . Another tutorial is at
- http://deepthought.texsci.edu/protected_dirs.html
-- If you don't use the extension ".php3" for your scripts, you can use
- the bundled script "extchg.sh" to modify phpMyAdmin (or any other script)
- to work with a different extension. Beware though, that currently changing
- the extension from .html to something other won't work (it'd change all
- "string".htmlspecialchars() constructs).
+ - Be sure to protect the phpMyAdmin-directory. By default, it is not
+ protected in any way! It shouldn't be readable by anyone and
+ especially not by search-engines. Although I've added a "nofollow"
+ directive on every page, there may be search-engines that don't
+ care about that and still follow the links on the page.
+ Think of AltaVista following a link named "Drop Database".
+ You can get an overview of Apache's authentification methods at:
+
+ http://www.apacheweek.com/features/userauth
+ Another tutorial is at:
+
+ http://deepthought.texsci.edu/protected_dirs.html
+ - If you don't use the extension ".php3" for your scripts, you can use
+ the bundled script extchg.sh to modify phpMyAdmin (or any other
+ script) to work with a different extension. Beware though, that
+ currently changing the extension from .html to something other won't
+ work (it'd change all "string".htmlspecialchars() constructs).
-
-Upgrading from an older version:
+
Upgrading from an older version:
- - Please do not copy your older config.inc.php3 over the new one: it may offer new configuration variables, and the new version may depend on these for normal behavior. It is suggested instead to insert your site values in the new one.
+
- Please do not copy your older config.inc.php3 over the new one: it may offer new configuration variables, and the new version may depend on these for normal behavior. It is suggested instead to insert your site values in the new one.
-
-
-
-Top -
-Introduction -
-Installation -
-Configuration -
-FAQ -
-Developpers -
-Credits
-
+
+
+
+
+ Top -
+ Introduction -
+ Installation -
+ Configuration -
+ FAQ -
+ Developpers -
+ Credits
+
+
Configuration
+
All configurable data is placed in config.inc.php3.
-$cfgServers array
- Since version 1.4.2, phpMyAdmin supports the adminstration of multiple MySQL-server.
- Therefore, a $cfgServers-array has been added which contains the login information
- for the different servers. $cfgServers[1]['host'] contains the hostname of the
- first server, $cfgServers[2]['host'] the hostname of the second server, etc.
- If you have only one server to administer, simply leave free the hostname of
- the other $cfgServer-entries.
-
$cfgServers[n]['host'] string
- The hostname of your n-th MySQL-server. E.g. localhost.
-$cfgServers[n]['port'] string
- The port-number of your n-th MySQL-server. Default is 3300 (leave blank).
-$cfgServers[n]['adv_auth'] boolean
- Whether basic or advanced authentication should be used for this server. Basic
- authentication ($adv_auth = false) is the plain old way: username and password
- are stored in config.inc.php3. Advanced authentication $adv_auth = true) as
- introduced in 1.3.0 allows you to log in as any valid MySQL user via HTTP-Auth.
Please note that this authentication mode is only supported with PHP running as an Apache module, and not with cgi.
-
All you have to provide in config.inc is a standard user which can connect to
- MySQL and read the mysql user/db table (see $cfgServers[n]['stduser']).
- Using advanced authentication is recommended:
-
- - when phpMyAdmin is running in a multi-user environment where people have
- shell-access that you don't want to know the username/password for MySQL.
- - when you want to give users access to their own database and don't want
- them to play around with others.
-
-Advanced authentication is secure as the standard user needs just read-only-access
- to the mysql database. MySQL passwords cannot be decrypted easily, so there's
- no chance for a normal user to look at other users' plaintext passwords.
-$cfgServers[n]['stduser'] string
- $cfgServers[n]['stdpass'] string
- A user/pasword pair used to verify the real user/password pair when using advanced
- authentification. This user must be able to connect to MySQL and read the mysql
- user table. Not needed when using basic authentification.
-$cfgServers[n]['user'] string
- $cfgServers[n]['password'] string
- The user/password-pair which phpMyAdmin will use to connect to this MySQL-server
- when using basic authentification. Not needed when using advanced authentification.
-$cfgServers[n]['only_db'] string
- If set to a database name, only this database will be shown to the user.
-$cfgServers[n]['verbose'] string
- Only useful when using phpMyAdmin with multiple server entries. If set, this
- string will be displayed instead of the hostname in the pulldown menu on the
- main page. This can be useful if you want to show only certain databases on
- your system, for example.
-
-$cfgServers[n]['bookmarkdb'] string
- $cfgServers[n]['bookmarktable'] string
- Since release 2.2.0 phpMyAdmin allows to bookmark queries. This can be useful for queries
- you often run. To use this functionality you have to:
-
- - create a table following this scheme:
- CREATE TABLE bookmark (
- id int(11) DEFAULT '0' NOT NULL auto_increment,
- dbase varchar(255) NOT NULL,
- label varchar(255) NOT NULL,
- query text NOT NULL,
- PRIMARY KEY (id)
- );
- - then complete the two variables $cfgServers[n]['bookmarkdb'] and
- $cfgServers[n]['bookmarktable'] so phpMyAdmin will be able to find the bookmark table.
-
-$cfgServerDefault integer
- If you have more than one server configured, you can set $cfgServerDefault to any one of
- them to autoconnect to that server when phpMyAdmin is started, or set it to 0 to be given
- a list of servers without logging in.
- If you have only one server configured, $cfgServerDefault MUST be set to that server.
-
+
+ - $cfgServers array
+ -
+ Since version 1.4.2, phpMyAdmin supports the adminstration of multiple
+ MySQL-server.
+ Therefore, a $cfgServers-array has been added which contains the login
+ information for the different servers. $cfgServers[1]['host'] contains
+ the hostname of the first server, $cfgServers[2]['host'] the hostname
+ of the second server, etc.
+ If you have only one server to administer, simply leave free the
+ hostname of the other $cfgServer-entries.
+
+
-$cfgManualBase string
- If set to an URL which points to the MySQL documentation, appropriate help links
-are generated.
-
-$cfgConfirm boolean
- Whether a warning ("Are your really sure..") should be displayed when
- you're about to loose data.
-$cfgPersistentConnections boolean
- Whether persistent connections should be used or not (mysql_connect or mysql_pconnect).
-$cfgBorder integer
- The size of a table's border.
-$cfgThBgcolor string [HTML color]
- The color (HTML) used for table headers.
-$cfgBgcolorOne string [HTML color]
- The color (HTML) #1 for table rows.
-$cfgBgcolorTwo string [HTML color]
- The color (HTML) #2 for table rows.
-$cfgMaxRows integer
- Number of rows displayed when browsing a resultset. If the resultset contains
- more rows, Previous/Next links will be shown.
-$cfgMaxInputsize integer
- Size of the edit-field when adding a new record to a table.
-$cfgOrder string ["DESC"|"ASC"]
- Defines whether fields are displayed in ascending ("ASC") order or in descending
- ("DESC") order when you click on the field-name.
-
$cfgShowBlob boolean
- Defines whether BLOB fields are shown when browsing a table's content or not.
-
$cfgShowSQL boolean
- Defines whether sql-queries generated by phpMyAdmin should be displayed or not.
-
$cfgModifyDeleteAtLeft boolean
- $cfgModifyDeleteAtRight boolean
- Defines the place where modify and delete links would be put when tables contents are
- displayed (you may have them displayed both at the left and at the right).
-
+ - $cfgServers[n]['host'] string
+ -
+ The hostname of your n-th MySQL-server. E.g. localhost.
+
+
-$cfgDefaultLang string
- Defines the default language to use, if not browser-defined or user-defined.
- See the select_lang.inc.php3 script to know the valid values for this setting.
-$cfgLang string
- Force: always use this language (must be defined in the select_lang.inc.php3 script).
-
+ - $cfgServers[n]['port'] string
+ -
+ The port-number of your n-th MySQL-server. Default is 3300 (leave
+ blank).
+
+
-$cfgColumnTypes array
- All possible types of a MySQL column. In most cases you don't need to edit this.
-$cfgFunctions array
- A list of functions MySQL supports. In most cases you don't need to edit this.
-$cfgAttributeTypes array
- Possible attributes for fields. In most cases you don't need to edit this.
+ - $cfgServers[n]['adv_auth'] boolean
+ -
+ Whether basic or advanced authentication should be used for this
+ server.
+ Basic authentication ($adv_auth = false) is the plain old way:
+ username and password are stored in config.inc.php3.
+ Advanced authentication $adv_auth = true) as introduced in 1.3.0
+ allows you to log in as any valid MySQL user via HTTP-Auth.
+ Please note that this authentication mode is
+ only supported with PHP running as an Apache
+ module, and not with cgi.
-
-
-Top -
-Introduction -
-Installation -
-Configuration -
-FAQ -
-Developpers -
-Credits
-
+ Using advanced authentication is recommended:
+
+ -
+ when phpMyAdmin is running in a multi-user environment where
+ people have shell-access that you don't want to know the
+ username/password for MySQL.
+
+ -
+ when you want to give users access to their own database and
+ don't want them to play around with others.
+
+
+
+
+ Advanced authentication is secure as the standard user needs just
+ read-only-access to the mysql database. MySQL passwords cannot be
+ decrypted easily, so there's no chance for a normal user to look at
+ other users' plaintext passwords.
+
+ All you have to provide in config.inc is a standard user which can
+ connect to MySQL and read the mysql user/db table
+ (see $cfgServers[n]['stduser']).
+
+
+
+ -
+ $cfgServers[n]['stduser'] string
+ $cfgServers[n]['stdpass'] string
+
+ -
+ A user/pasword pair used to verify the real user/password pair when
+ using advanced authentification. This user must be able to connect to
+ MySQL and read the mysql user table.
+ Not needed when using basic authentification.
+
+
+
+ -
+ $cfgServers[n]['user'] string
+ $cfgServers[n]['password'] string
+
+ -
+ The user/password-pair which phpMyAdmin will use to connect to this
+ MySQL-server when using basic authentification.
+ Not needed when using advanced authentification.
+
+
+
+ - $cfgServers[n]['only_db'] string
+ -
+ If set to a database name, only this database will be shown to the
+ user.
+
+
+
+ - $cfgServers[n]['verbose'] string
+ -
+ Only useful when using phpMyAdmin with multiple server entries. If set,
+ this string will be displayed instead of the hostname in the pulldown
+ menu on the main page. This can be useful if you want to show only
+ certain databases on your system, for example.
+
+
+
+ -
+ $cfgServers[n]['bookmarkdb'] string
+ $cfgServers[n]['bookmarktable'] string
+
+ -
+ Since release 2.2.0 phpMyAdmin allows to bookmark queries. This can be
+ useful for queries you often run.
+
+ To use this functionality you have to:
+
+ -
+ create a table following this scheme:
+
+ CREATE TABLE bookmark (
+ id int(11) DEFAULT '0' NOT NULL auto_increment,
+ dbase varchar(255) NOT NULL,
+ label varchar(255) NOT NULL,
+ query text NOT NULL,
+ PRIMARY KEY (id)
+ );
+
+
+ -
+ then complete the two variables $cfgServers[n]['bookmarkdb']
+ and $cfgServers[n]['bookmarktable'] so phpMyAdmin will be able
+ to find the bookmark table.
+
+
+
+
+
+ - $cfgServerDefault integer
+ -
+ If you have more than one server configured, you can set
+ $cfgServerDefault to any one of them to autoconnect to that server when
+ phpMyAdmin is started, or set it to 0 to be given a list of servers
+ without logging in.
+ If you have only one server configured, $cfgServerDefault MUST be set
+ to that server.
+
+
+
+ - $cfgManualBase string
+ -
+ If set to an URL which points to the MySQL documentation, appropriate
+ help links are generated.
+
+
+
+ - $cfgConfirm boolean
+ -
+ Whether a warning ("Are your really sure..") should be
+ displayed when you're about to loose data.
+
+
+
+ - $cfgPersistentConnections boolean
+ -
+ Whether persistent connections should be used or not (mysql_connect or
+ mysql_pconnect).
+
+
+
+ - $cfgBorder integer
+ -
+ The size of a table's border.
+
+
+
+ - $cfgThBgcolor string [HTML color]
+ -
+ The color (HTML) used for table headers.
+
+
+
+ - $cfgBgcolorOne string [HTML color]
+ -
+ The color (HTML) #1 for table rows.
+
+
+
+ - $cfgBgcolorTwo string [HTML color]
+ -
+ The color (HTML) #2 for table rows.
+
+
+
+ - $cfgMaxRows integer
+ -
+ Number of rows displayed when browsing a resultset. If the resultset
+ contains more rows, Previous/Next links will be shown.
+
+
+
+ - $cfgMaxInputsize integer
+ -
+ Size of the edit-field when adding a new record to a table.
+
+
+
+ - $cfgOrder string ["DESC"|"ASC"]
+ -
+ Defines whether fields are displayed in ascending ("ASC") order or in
+ descending ("DESC") order when you click on the field-name.
+
+
+
+ - $cfgShowBlob boolean
+ -
+ Defines whether BLOB fields are shown when browsing a table's content
+ or not.
+
+
+
+ - $cfgShowSQL boolean
+ -
+ Defines whether sql-queries generated by phpMyAdmin should be displayed
+ or not.
+
+
+
+ -
+ $cfgModifyDeleteAtLeft boolean
+ $cfgModifyDeleteAtRight boolean
+
+ -
+ Defines the place where modify and delete links would be put when
+ tables contents are displayed (you may have them displayed both at the
+ left and at the right).
+
+
+
+ - $cfgDefaultLang string
+ -
+ Defines the default language to use, if not browser-defined or
+ user-defined.
+ See the select_lang.inc.php3 script to know the valid values for
+ this setting.
+
+
+
+ - $cfgLang string
+ -
+ Force: always use this language (must be defined in the
+ select_lang.inc.php3 script).
+
+
+
+ - $cfgColumnTypes array
+ -
+ All possible types of a MySQL column. In most cases you don't need to
+ edit this.
+
+
+
+ - $cfgFunctions array
+ -
+ A list of functions MySQL supports. In most cases you don't need to
+ edit this.
+
+
+
+ - $cfgAttributeTypes array
+ -
+ Possible attributes for fields. In most cases you don't need to edit
+ this.
+
+
+
+
+
+
+
+
+ Top -
+ Introduction -
+ Installation -
+ Configuration -
+ FAQ -
+ Developpers -
+ Credits
+
+
FAQ - Frequently Asked Questions
-I can't insert new rows into a table - MySQL brings up a SQL-error.
-
-Examine the SQL error with care. I've found that many programmers specifying a wrong field-type. Common errors include:
+
+
+ I can't insert new rows into a table - MySQL brings up a SQL-error.
+
+ Examine the SQL error with care. I've found that many programmers
+ specifying a wrong field-type.
+ Common errors include:
+
- - Using VARCHAR without a size argument
-
- Using TEXT or BLOB with a size argument
+ - Using VARCHAR without a size argument
+ - Using TEXT or BLOB with a size argument
-Also, look at the syntax chapter in the MySQL manual to confirm that your syntax is correct.
-phpMyAdmin can't connect to MySQL. What's wrong?
-
-Either there is an error with your PHP setup or your username/password is
- wrong. Try to make a small script which uses mysql_connect and see if it works.
- If it doesn't, it may be you haven't even compiled MySQL support into PHP.
-I cannot edit the content of a table, even if the README says this is a
- feature of phpMyAdmin.
- phpMyAdmin allows only editing of a table's content if the table contains
- a primary or unique key.
-phpMyAdmin always gives "Access denied" when using advanced authentification.
- This could happen for some reasons:
-
- - $stduser/$stdpassword is wrong. Try to turn off $adv_auth and use this username and password to connect to MySQL.
-
- The username/password your specify in the login-dialog is wrong. Try the same as above and see if it works.
-
-
- You have already setup a security mechanism for the phpMyAdmin-directory,
- eg. a .htaccess file. This would interfere with phpMyAdmin's authentification,
- so remove it.
-
-I would like to help out with the development of phpMyAdmin. How should I proceed?
-
- The following method is preferred for new developers:
-
- - fetch the current CVS tree over anonymous CVS:
- cvs -d:pserver:anonymous@cvs.phpmyadmin.sourceforge.net:/cvsroot/phpmyadmin login
- [Password: simply press the Enter key]
- cvs -z3 -d:pserver:anonymous@cvs.phpmyadmin.sourceforge.net:/cvsroot/phpmyadmin checkout phpMyAdmin
- or
- cvs -z3 -d:pserver:anonymous@cvs.phpmyadmin.sourceforge.net:/cvsroot/phpmyadmin checkout phpMyAdmin-devel
- [This will create a new sub-directory named phpMyAdmin or phpMyAdmin-devel]
- - add your stuff
-
- put the modified files (tar'ed and gzip'ed) inside the patch tracker of the
- phpMyAdmin SourceForge account.
-
- Write access to the CVS tree is granted only to experienced developers who have already contributed something useful to phpMyAdmin.
- Also, have a look at the file DEVELOPERS.
-
-What's the preferred way of making phpMyAdmin secure against evil access?
- This depends on your system. If you're running a server which cannot be
- accessed by other people, it's sufficient to use the directory protection bundled
- with your webserver (with Apache you can use .htaccess files, for example).
- If other people have telnet access to your server, it's not a good idea to store
- the MySQL password in clear text in your config.inc.php3 file. You should use
- phpMyAdmin's advanced authentification feature in this case.
-
How can I insert a null value into my table?
- Enter "null", without the quotes, as the field's value. This
- is especially useful for Timestamp ot AutoIncrement fields.
-
I'm an ISP. Can I setup one central copy of phpMyAdmin or do I need to install
- it for each customer?
- Since version 2.0.3, you can setup a central copy of phpMyAdmin for all
- your users. The development of this feature was kindly sponsored by NetCologne
- GmbH.
- This requires a properly setup MySQL user management and phpMyAdmin's advanced
- authentication. phpMyAdmin performs these steps, when authenticating a user:
-
- - Select all entries from the mysql.user table where the username/password
- matches the challenging user. If no rows are returned, the authentication
- has failed. Otherwise, phpMyAdmin continues with step 2.
- - If the user's global Select_Priv is "N" (ie the user is not allowed
- to access all databases), phpMyAdmin searches the mysql.db table for
- entries with Select_Priv = "Y" belonging to the user. If no entries
- are found, the authentication has failed. Otherwise, phpMyAdmin shows all
- databases the user is allowed to view.
- If the user's global Select_Priv is "Y", all databases in the system
- are shown.
-
-
-This means that you need to add a user to the mysql database as following:
- INSERT INTO user (Host, User, Password, Select_priv, Insert_priv, Update_priv,
- Delete_priv, Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv,
- File_priv, Grant_priv, References_priv, Index_priv, Alter_priv) VALUES ('localhost',
- 'foo', PASSWORD('bar'), 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N',
- 'N', 'N', 'N')
- INSERT INTO db (Host, Db, User, Select_priv, Insert_priv, Update_priv, Delete_priv,
- Create_priv, Drop_priv, Grant_priv, References_priv, Index_priv, Alter_priv)
- VALUES ('localhost', 'foo_db', 'foo', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', '', '',
- '', '')
- Then only the "foo_db" database will be displayed to user "foo".
-
-How can I GZip a dump or a CSV export. It seem to not work?
-This feature is based on gzencode() to be more independent of the platform
-(Unix/Windows, Safe Mode or not, and so on).
-So, you must have PHP4 >= 4.0.4 and Zlib support (--with-zlib).
+ Also, look at the syntax chapter in the MySQL manual to confirm that your
+ syntax is correct.
-
-
-Top -
-Introduction -
-Installation -
-Configuration -
-FAQ -
-Developpers -
-Credits
-
+
+ phpMyAdmin can't connect to MySQL. What's wrong?
+
+ Either there is an error with your PHP setup or your username/password is
+ wrong. Try to make a small script which uses mysql_connect and see if it
+ works. If it doesn't, it may be you haven't even compiled MySQL support
+ into PHP.
+
-Developpers Information
-
- phpMyAdmin is Open Source, so you're invited to contribute to it.
- Many great features have been written by other people and you too
- can help to make phpMyAdmin a useful tool.
-
-
- If you're planning to contribute source, please read the following
- information:
-
- - All files include header.inc.php3 (layout), lib.inc.php3 (common functions)
- and config.inc.php3. All configuration data belongs in config.inc.php3.
- Please keep it free from other code.
- Commonly used functions should be added to lib.inc.php3.
-- Obviously, you're free to use whatever coding style you want. But please
- try to keep your code as simple as possible: beginners are using phpMyAdmin
- as an example application.
- - Please try to keep up the file-naming conventions. Table-related stuff
- goes to tbl_*.php3, db-related code to db_*.php3 and so on.
- - Please don't use verbose strings in your code, instead add the string
- (at least) to english.inc.php3 and print() it out.
- - If you want to be really helpful, write an entry for the ChangeLog.
+
+ The error message "Warning: MySQL Connection Failed: Can't connect to
+ local MySQL server through socket '/tmp/mysql.sock' (111)...") is
+ displayed. What can I do?
+
+ Here is a fix suggested by Brad Ummer in the
+
+ phpwizard forum:
+
+
+ -
+ First, you need to determine what socket is being used by MySQL.
+
+ To do this, telnet to your server and go to the MySQL bin directory. In
+ this directory there should be a file named mysqladmin. Type
+ ./mysqladmin variables, and this should give you a bunch of
+ info about your MySQL server, including the socket
+ (/tmp/mysql.sock, for example).
+
+ -
+ Then, you need to tell PHP to use this socket.
Assuming you are
+ using PHP 3.0.10 or better, you can specify the socket to use when you
+ open the connection. To do this in phpMyAdmin, you need to edit the
+ host information in the config.inc.php file using the format
+ 'host_name:socket_name'.
+ For example:
+ $cfgServers[n]['host'] = 'localhost:/tmp/mysql.sock';
+
+
+
+ I cannot edit the content of a table, even if the README says this is a
+ feature of phpMyAdmin.
+
+ phpMyAdmin allows only editing of a table's content if the table contains
+ a primary or unique key.
+
+
+
+ phpMyAdmin always gives "Access denied" when using advanced
+ authentification.
+
+ This could happen for some reasons:
+
+
+ -
+ $stduser/$stdpassword is wrong. Try to turn off $adv_auth and use this
+ username and password to connect to MySQL.
+
+ -
+ The username/password your specify in the login-dialog is wrong. Try
+ the same as above and see if it works.
+
+ -
+ You have already setup a security mechanism for the
+ phpMyAdmin-directory, eg. a .htaccess file. This would interfere with
+ phpMyAdmin's authentification, so remove it.
+
+
+
+
+ I would like to help out with the development of phpMyAdmin. How should
+ I proceed?
+
+ The following method is preferred for new developers:
+
+
+ -
+ fetch the current CVS tree over anonymous CVS:
+ cvs -d:pserver:anonymous@cvs.phpmyadmin.sourceforge.net:/cvsroot/phpmyadmin login
+ [Password: simply press the Enter key]
+ cvs -z3 -d:pserver:anonymous@cvs.phpmyadmin.sourceforge.net:/cvsroot/phpmyadmin checkout phpMyAdmin
+ or
+ cvs -z3 -d:pserver:anonymous@cvs.phpmyadmin.sourceforge.net:/cvsroot/phpmyadmin checkout phpMyAdmin-devel
+ [This will create a new sub-directory named phpMyAdmin or phpMyAdmin-devel]
+
+ -
+ add your stuff
+
+ -
+ put the modified files (tar'ed and gzip'ed) inside the patch tracker of
+ the
+ phpMyAdmin SourceForge account.
+
+
+
+ Write access to the CVS tree is granted only to experienced developers who
+ have already contributed something useful to phpMyAdmin.
+ Also, have a look at the file DEVELOPERS.
- IMPORTANT:
- With 1.4.1, development has switched to CVS.
- The following method is preferred for new developers:
-
- - fetch the current CVS tree over anonymous CVS:
- cvs -d:pserver:anonymous@cvs.phpmyadmin.sourceforge.net:/cvsroot/phpmyadmin login
- [Password: simply press the Enter key]
- cvs -z3 -d:pserver:anonymous@cvs.phpmyadmin.sourceforge.net:/cvsroot/phpmyadmin checkout phpMyAdmin
- or
- cvs -z3 -d:pserver:anonymous@cvs.phpmyadmin.sourceforge.net:/cvsroot/phpmyadmin checkout phpMyAdmin-devel
- [This will create a new sub-directory named phpMyAdmin or phpMyAdmin-devel]
- - add your stuff
- - put the modified files (tar'ed and gzip'ed) inside the patch tracker of the phpMyAdmin SourceForge account
- (http://sourceforge.net/projects/phpmyadmin/)
-
+ What's the preferred way of making phpMyAdmin secure against evil
+ access?
+
+ This depends on your system.
+ If you're running a server which cannot be accessed by other people, it's
+ sufficient to use the directory protection bundled with your webserver
+ (with Apache you can use .htaccess files, for example).
+ If other people have telnet access to your server, it's not a good idea to
+ store the MySQL password in clear text in your config.inc.php3 file.
+ You should use phpMyAdmin's advanced authentification feature in this case.
-
- Write access to the CVS tree is granted only to developers who have already
- contributed something useful to phpMyAdmin. If you're interested in that,
- please contact us using the phpmyadmin-devel mailing list.
+ How can I insert a null value into my table?
+
+ Enter "null", without the quotes, as the field's value. This is
+ especially useful for Timestamp ot AutoIncrement fields.
+
+
+
+ I'm an ISP. Can I setup one central copy of phpMyAdmin or do I need to
+ install it for each customer?
+
+ Since version 2.0.3, you can setup a central copy of phpMyAdmin for all
+ your users. The development of this feature was kindly sponsored by
+ NetCologne GmbH.
+
+ This requires a properly setup MySQL user management and phpMyAdmin's
+ advanced authentication. phpMyAdmin performs these steps, when
+ authenticating a user:
+
+
+ -
+ Select all entries from the mysql.user table where the
+ username/password matches the challenging user. If no rows are
+ returned, the authentication has failed. Otherwise, phpMyAdmin
+ continues with step 2.
+
+ -
+ If the user's global Select_Priv is "N" (ie the user is not
+ allowed to access all databases), phpMyAdmin searches the
+ mysql.db table for entries with Select_Priv = "Y" belonging
+ to the user. If no entries are found, the authentication has failed.
+ Otherwise, phpMyAdmin shows all databases the user is allowed to view.
+
+ If the user's global Select_Priv is "Y", all databases in the
+ system are shown.
+
+
+
+ This means that you need to add a user to the mysql database as
+ following:
+ INSERT INTO user (Host, User, Password, Select_priv, Insert_priv, Update_priv,
+ Delete_priv, Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv,
+ File_priv, Grant_priv, References_priv, Index_priv, Alter_priv) VALUES ('localhost',
+ 'foo', PASSWORD('bar'), 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N',
+ 'N', 'N', 'N')
+ INSERT INTO db (Host, Db, User, Select_priv, Insert_priv, Update_priv, Delete_priv,
+ Create_priv, Drop_priv, Grant_priv, References_priv, Index_priv, Alter_priv)
+ VALUES ('localhost', 'foo_db', 'foo', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', '', '',
+ '', '')
+ Then only the "foo_db" database will be displayed to user
+ "foo".
+
+
+
+ How can I GZip a dump or a CSV export. It seem to not work?
+
+ This feature is based on gzencode() to be more independent of the platform
+ (Unix/Windows, Safe Mode or not, and so on).
+ So, you must have PHP4 >= 4.0.4 and Zlib support (--with-zlib).
+
+
+
+
+ Top -
+ Introduction -
+ Installation -
+ Configuration -
+ FAQ -
+ Developpers -
+ Credits
+
+
+
+Developpers Information
+
+
+ phpMyAdmin is Open Source, so you're invited to contribute to it. Many
+ great features have been written by other people and you too can help to
+ make phpMyAdmin a useful tool.
+
+
+
+ If you're planning to contribute source, please read the following
+ information:
+
+
+ -
+ All files include header.inc.php3 (layout), lib.inc.php3
+ (common functions) and config.inc.php3.
+
+ All configuration data belongs in config.inc.php3. Please keep
+ it free from other code.
+
+ Commonly used functions should be added to lib.inc.php3.
+
+ -
+ Obviously, you're free to use whatever coding style you want. But
+ please try to keep your code as simple as possible: beginners are
+ using phpMyAdmin as an example application.
+ By the way, we're currently updating all the scripts so they will be
+ XHTML1.0 and CSS2 compliant on one hand, they will fit
+ PEAR coding standards
+ on the other hand. Please pay attention to this.
+
+ -
+ Please try to keep up the file-naming conventions. Table-related stuff
+ goes to tbl_*.php3, db-related code to db_*.php3 and so
+ on.
+
+ -
+ Please don't use verbose strings in your code, instead add the string
+ (at least) to english.inc.php3 and print() it out.
+
+ -
+ If you want to be really helpful, write an entry for the ChangeLog.
+
+
+
+
+ IMPORTANT: With 1.4.1, development has switched to CVS. The following
+ method is preferred for new developers:
+
+
+ -
+ fetch the current CVS tree over anonymous CVS:
+ cvs -d:pserver:anonymous@cvs.phpmyadmin.sourceforge.net:/cvsroot/phpmyadmin login
+ [Password: simply press the Enter key]
+ cvs -z3 -d:pserver:anonymous@cvs.phpmyadmin.sourceforge.net:/cvsroot/phpmyadmin checkout phpMyAdmin
+ or
+ cvs -z3 -d:pserver:anonymous@cvs.phpmyadmin.sourceforge.net:/cvsroot/phpmyadmin checkout phpMyAdmin-devel
+ [This will create a new sub-directory named phpMyAdmin or phpMyAdmin-devel]
+
+ -
+ add your stuff
+
+ -
+ put the modified files (tar'ed and gzip'ed) inside the patch tracker
+ of the phpMyAdmin SourceForge account
+ (http://sourceforge.net/projects/phpmyadmin/)
+
+
+
+ Write access to the CVS tree is granted only to developers who have already
+ contributed something useful to phpMyAdmin. If you're interested in that,
+ please contact us using the phpmyadmin-devel mailing list.
+
-
-
-Top -
-Introduction -
-Installation -
-Configuration -
-FAQ -
-Developpers -
-Credits
-
+
+
+
+
+ Top -
+ Introduction -
+ Installation -
+ Configuration -
+ FAQ -
+ Developpers -
+ Credits
+
+
Credits
@@ -462,36 +805,47 @@ So, you must have PHP4 >= 4.0.4 and Zlib support (--with-zlib).
CREDITS, in chronological order
-------------------------------
-[tr] - Tobias Ratschiller
+[tr] - Tobias Ratschiller <tobias@phpwizard.net>
* creator of the phpmyadmin project
* maintainer from 1998 to summer 2000
-[md] - Marc Delisle
+[md] - Marc Delisle <DelislMa@CollegeSherbrooke.qc.ca>
* multi-language version
* various fixes
-[om] - Olivier Müller
+[om] - Olivier Müller <om@omnis.ch>
* started sourceforge phpMyAdmin project
- * sync'ed different existing CVS trees with
- new features and bugfixes
+ * sync'ed different existing CVS trees with new features and bugfixes
* current project maintainer, with Marc and Loic
-[lc] - Loïc Chapeaux
+[lc] - Loïc Chapeaux <lolo@phpHeaven.net>
+ * rewrote and optimized javascript, DHTML and DOM stuff
+ * started to rewrite the scripts so they are XHTML1.0, CSS2 compliant
+ and fit the PEAR coding standards
+ * improved the language detection system
+ * bugfixes
-[mg] - Mirko Giese
+[mg] - Mirko Giese <mgiese@users.sourceforge.net>
-[rj] - Robin Johnson
+[rj] - Robin Johnson <robbat2@users.sourceforge.net>
* Database maintence controls
* Table type code
-[af] - Armel Fauveau
+[af] - Armel Fauveau <armel.fauveau@globalis-ms.com>
* Bookmarks feature
* Multiple dump feature
- * Gzip dump feature
+ * Gzip dump feature
-[kc] - Korakot Chaovavanich
-[pk] - Pete Kelly
+[kc] - Korakot Chaovavanich <korakot@iname.com>
+[pk] - Pete Kelly <webmaster@trafficg.com>
+The following people have contributed minor changes, enhancements, bugfixes or
+or support for a new language since version 2.1.0:
+Ricardo ?, Sven-Erik Andersen, Alessandro Astarita, Borges Botelho,
+Olivier Bussier, Michal Cihar, Neil Darlow, Kristof Hamann, Thomas Kläger,
+Martin Marconcini, David Nordenberg, Bernard M. Piller,Laurent Haas,
+"Sakamoto", www.securereality.com.au, Michael Tacelosky, Daniel Villanueva,
+Chee Wai, Thomas Michael Winningham.
Original Credits of Version 2.1.0
@@ -500,34 +854,35 @@ Original Credits of Version 2.1.0
This work is based on Peter Kuppelwieser's MySQL-Webadmin. It was his idea
to create a web-based interface to MySQL using PHP3. Although I have not
used any of his source-code, there are some concepts I've borrowed from
- him. phpMyAdmin was created because Peter told me he wasn't going to further
- develop his (great) tool.
+ him. phpMyAdmin was created because Peter told me he wasn't going to
+ further develop his (great) tool.
Thanks go to
- - Amalesh Kempf who contributed the code for
- the check when dropping a table or database. He also suggested that you
- should be able to specify the primary key on tbl_create.php3. To version
- 1.1.1 he contributed the ldi_*.php3-set (Import text-files) as well as
- a bug-report. Plus many smaller improvements.
- - Jan Legenhausen : He made many of the changes that were
- introduced in 1.3.0 (including quite significant ones like the
+ - Amalesh Kempf <ak-lsml@living-source.com> who contributed the code
+ for the check when dropping a table or database. He also suggested that
+ you should be able to specify the primary key on tbl_create.php3. To
+ version 1.1.1 he contributed the ldi_*.php3-set (Import text-files) as
+ well as a bug-report. Plus many smaller improvements.
+ - Jan Legenhausen <jan@nrw.net>: He made many of the changes that
+ were introduced in 1.3.0 (including quite significant ones like the
authentification). For 1.4.1 he enhanced the table-dump feature. Plus
bug-fixes and help.
- - Marc Delisle made phpMyAdmin language-
- independent by outsourcing the strings to a separate file. He also
- contributed the French translation.
- - Alexandr Bravo who contributed tbl_select.php3,
- a feature to display only some fields from a table.
- - Chris Jackson added support for MySQL functions in
- tbl_change.php3. He also added the "Query by Example" feature in 2.0.
- - Dave Walton added support for multiple servers and
- is a regular contributor for bug-fixes.
- - Gabriel Ash contributed the random access features
- for 2.0.6.
+ - Marc Delisle <DelislMa@CollegeSherbrooke.qc.ca> made phpMyAdmin
+ language-independent by outsourcing the strings to a separate file. He
+ also contributed the French translation.
+ - Alexandr Bravo <abravo@hq.admiral.ru> who contributed
+ tbl_select.php3, a feature to display only some fields from a table.
+ - Chris Jackson <chrisj@ctel.net> added support for MySQL functions
+ in tbl_change.php3. He also added the "Query by Example" feature in 2.0.
+ - Dave Walton <walton@nordicdms.com> added support for multiple
+ servers and is a regular contributor for bug-fixes.
+ - Gabriel Ash <ga244@is8.nyu.edu> contributed the random access
+ features for 2.0.6.
The following people have contributed minor changes, enhancements, bugfixes
or support for a new language:
- Jim Kraai, Jordi Bruguera, Miquel Obrador, Geert Lund, Thomas Kleemann, Alexander Leidinger,
- Kiko Albiol, Daniel C. Chao, Pavel Piankov, Sascha Kettler, Joe Pruett,
- Renato Lins, Mark Kronsbein, Jannis Hermanns, G. Wieggers.
+ Jim Kraai, Jordi Bruguera, Miquel Obrador, Geert Lund, Thomas Kleemann,
+ Alexander Leidinger, Kiko Albiol, Daniel C. Chao, Pavel Piankov,
+ Sascha Kettler, Joe Pruett, Renato Lins, Mark Kronsbein, Jannis Hermanns,
+ G. Wieggers.
And thanks to everyone else who sent me email with suggestions, bug-reports and
or just some feedback.
@@ -535,16 +890,26 @@ Original Credits of Version 2.1.0
-
-
-Top -
-Introduction -
-Installation -
-Configuration -
-FAQ -
-Developpers -
-Credits
-
+
+
+
+ Top -
+ Introduction -
+ Installation -
+ Configuration -
+ FAQ -
+ Developpers -
+ Credits
+
+
+
+
+
+
+
+
+
+