home *** CD-ROM | disk | FTP | other *** search
/ PC World 2005 April / PCWorld_2005-04_cd.bin / akce / web / phptriad / phptriad2-2-1.exe / htdocs / phpmyadmin / Documentation.txt < prev    next >
Text File  |  2002-01-06  |  43KB  |  935 lines

  1.  
  2.                         phpMyAdmin 2.2.3 Documentation
  3.                                        
  4.      * Official phpMyAdmin project homepage    [
  5.        http://www.phpwizard.net/projects/phpMyAdmin/ ]
  6.      * Sourceforge phpMyAdmin download page    [
  7.        http://phpmyadmin.sourceforge.net/ ]
  8.      * Local documents:
  9.           + Version history: ChangeLog
  10.           + General notes: README
  11.           + License: LICENSE
  12.      * Documentation version: $Id: Documentation.html,v 1.122 2002/01/06
  13.        19:04:25 lem9 Exp $
  14.    ______________________________________________________________________
  15.    
  16.    Top  -  Requirements  -  Introduction  -  Installation  -
  17.    Configuration  -  FAQ  -  Developers  -  Credits
  18.    ______________________________________________________________________
  19.    
  20. Requirements
  21.  
  22.      * PHP3 or PHP4: phpMyAdmin widely uses the 'str_replace()' php
  23.        function that was added in PHP 3.0.6, but was buggy up until
  24.        PHP 3.0.8. Then you should not run this script with PHP3 < 3.0.8.
  25.        PHP also needs to be compiled with MySQL support;
  26.      * MySQL (tested with 3.21.x, 3.22.x and 3.23.x);
  27.      * a web-browser (doh!).
  28.    ______________________________________________________________________
  29.    
  30.    Top  -  Requirements  -  Introduction  -  Installation  -
  31.    Configuration  -  FAQ  -  Developers  -  Credits
  32.    ______________________________________________________________________
  33.    
  34. Introduction
  35.  
  36.    phpMyAdmin can manage a whole MySQL-server (needs a super-user) but
  37.    also a single database. To accomplish the latter you'll need a
  38.    properly set up MySQL-user who can read/write only the desired
  39.    database. It's up to you to look up the appropriate part in the MySQL
  40.    manual. Currently phpMyAdmin can:
  41.      * create and drop databases
  42.      * create, copy, drop and alter tables
  43.      * delete, edit and add fields
  44.      * execute any SQL-statement, even batch-queries
  45.      * manage keys on fields
  46.      * load text files into tables
  47.      * create (*) and read dumps of tables
  48.      * export (*) and import data to CSV values
  49.      * administer multiple servers and single databases
  50.      * communicate in more than 20 different languages
  51.        
  52.    (*)  phpMyAdmin can compress (Zip, GZip -RFC 1952- or Bzip2 formats)
  53.    dumps and CSV exports if you use PHP4 >= 4.0.4 with Zlib support
  54.    (--with-zlib) and/or Bzip2 support (--with-bz2).
  55.    ______________________________________________________________________
  56.    
  57.    Top  -  Requirements  -  Introduction  -  Installation  -
  58.    Configuration  -  FAQ  -  Developers  -  Credits
  59.    ______________________________________________________________________
  60.    
  61. Installation
  62.  
  63.    NOTE: phpMyAdmin does not apply any special security methods to the
  64.    MySQL database server. It is still the sysadmin's job to grant
  65.    permissions on the MySQL databases properly.
  66.    
  67.    Warning for Mac users: php seems not to like Mac end of lines
  68.    character ("\r") and Stuffit unstuffs with Mac formats, of course.
  69.    So you'll have to resave as in Bbedit to unix style ALL phpMyAdmin
  70.    scripts before uploading them to your server.
  71.    
  72.    Quick Install:
  73.     1. Untar or unzip the distribution (be sure to unzip the
  74.        subdirectories): tar xzvf phpMyAdmin_x.x.x.tar.gz
  75.     2. Open the file config.inc.php3 in your favourite editor and change
  76.        the values for host, user and password to fit your environment.
  77.        Have a look at Configuration section for an explanation of all
  78.        values.
  79.     3. It is recommended that you protect the directory in which you
  80.        installed phpMyAdmin (unless it's on a closed intranet, or you
  81.        wish to use http or cookie authentication), for example with
  82.        HTTP-AUTH (in a .htaccess file). See the FAQ section for
  83.        additional information.
  84.     4. Open the file <www.your-host.com>/<your-install-dir>/index.php3 in
  85.        your browser. phpMyAdmin should now display a welcome screen and
  86.        your databases, or a login dialog if using http or cookie
  87.        authentication mode.
  88.        
  89.    Upgrading from an older version:
  90.      * Please do not copy your older config.inc.php3 over the new one: it
  91.        may offer new configuration variables, and the new version may
  92.        depend on these for normal behavior. It is suggested instead to
  93.        insert your site values in the new one.
  94.        
  95.    Using authentication modes:
  96.      * Http and cookie authentication modes are recommended in a
  97.        multi-user environment where you want to give users access to
  98.        their own database and don't want them to play around with others.
  99.      * Http and cookie authentication modes are secure: the MySQL
  100.        password does not need to be set in the phpMyAdmin configuration
  101.        file. (except for the "standard user" -see the Configuration
  102.        section-).
  103.        In cookie mode, we send the password in a temporary cookie, so
  104.        most browsers should not store the password in their cookie file.
  105.      * For 'http' and 'cookie' modes, phpMyAdmin needs a stduser that has
  106.        only the SELECT privilege on the mysql.user (all columns except
  107.        "Password"), mysql.db (all columns) & mysql.tables_priv (all
  108.        columns except "Grantor" & "Timestamp") tables.
  109.        You must specify the details for the stduser in the
  110.        config.inc.php3 file under the $cfgServers[n]['stduser'] &
  111.        $cfgServers[n]['stdpass'] settings.
  112.        To create the control account (<stduser> and <stdpass> have to be
  113.        replaced by your own values, of course):
  114.        
  115.        GRANT USAGE ON mysql.* TO '<stduser>'@'localhost' IDENTIFIED BY
  116.    '<stdpass>';
  117.    GRANT SELECT (Host, User, Select_priv, Insert_priv, Update_priv,
  118.    Delete_priv, Create_priv, Drop_priv, Reload_priv, Shutdown_priv,
  119.    Process_priv, File_priv, Grant_priv, References_priv, Index_priv,
  120.    Alter_priv) ON mysql.user TO '<stduser>'@'localhost';
  121.    GRANT SELECT ON mysql.db TO '<stduser>'@'localhost';
  122.    GRANT SELECT (Host, Db, User, Table_name, Table_priv, Column_priv) ON
  123.    mysql.tables_priv TO '<stduser>'@'localhost';
  124.    ... and if you want to use the bookmark feature:
  125.        GRANT SELECT, INSERT, DELETE ON <bookmark_db>.<bookmark_table> TO
  126.    '<stduser>'@'localhost';
  127.      * Then each of the true users should be granted of a set of
  128.        privileges on a set of perticular databases but shouldn't have any
  129.        global privileges. For example, to grant the user real_user with
  130.        all privileges on the database user_base:
  131.           GRANT ALL PRIVILEGES ON user_base.* TO 'real_user'@localhost
  132.        IDENTIFIED BY 'real_password';
  133.        What the user may now do is controlled entirely by the MySQL user
  134.        management system.
  135.        With http or cookie auth mode, you don't need to fill the
  136.        user/password fields inside the $cfgServers array.
  137.        
  138.    'http' authentication mode:
  139.      * Was called 'advanced' in versions before 2.2.3.
  140.      * Introduced in 1.3.0, it uses Basic HTTP authentication method and
  141.        allows you to login as any valid MySQL user.
  142.      * Is only supported with PHP running as an Apache module, not with
  143.        cgi.
  144.        
  145.    'cookie' authentication mode:
  146.      * You can use this method as a replacement for the http
  147.        authentication (for example, if you're running IIS).
  148.      * Obviously, the user must enable cookies in the browser.
  149.      * With this mode, the use can truly logout of phpMyAdmin and login
  150.        back with the same username.
  151.        
  152.    'config' authentication mode:
  153.      * This mode is the less secure one because it requires you to fill
  154.        the $cfgServers[n]['user'] and $cfgServers[n]['password'] fields.
  155.        But usually you don't need to setup a "standard user" here: using
  156.        the $cfgServers[n]['only_db'] might be enough.
  157.        In the ISP FAQ section, there is an entry explaining how to
  158.        protect your configuration file.
  159.    ______________________________________________________________________
  160.    
  161.    Top  -  Requirements  -  Introduction  -  Installation  -
  162.    Configuration  -  FAQ  -  Developers  -  Credits
  163.    ______________________________________________________________________
  164.    
  165. Configuration
  166.  
  167.    Warning for Mac users: php seems not to like Mac end of lines
  168.    character ("\r"). So ensure you choose the option that allows to use
  169.    the *nix end of line character ("\n") in your text editor before
  170.    registering a script you have modified.
  171.    
  172.    All configurable data is placed in config.inc.php3.
  173.    
  174.    $cfgPmaAbsoluteUri string
  175.           Sets here the complete url (with full path) to your phpMyAdmin
  176.           version. E.g.
  177.           http://www.your_web.net/path_to_your_phpMyAdmin_directory/.
  178.           Don't forget the slash at the end of your url.
  179.           
  180.    $cfgServers array
  181.           Since version 1.4.2, phpMyAdmin supports the administration of
  182.           multiple MySQL servers. Therefore, a $cfgServers-array has been
  183.           added which contains the login information for the different
  184.           servers. $cfgServers[1]['host'] contains the hostname of the
  185.           first server, $cfgServers[2]['host'] the hostname of the second
  186.           server, etc. If you have only one server to administer, simply
  187.           leave free the hostname of the other $cfgServer-entries.
  188.           
  189.    $cfgServers[n]['host'] string
  190.           The hostname of your n-th MySQL-server. E.g. localhost.
  191.           
  192.    $cfgServers[n]['port'] string
  193.           The port-number of your n-th MySQL-server. Default is 3306
  194.           (leave blank).
  195.           
  196.    $cfgServers[n]['socket'] string
  197.           The path to the socket to use. Leave blank for default.
  198.           To use the socket feature you must run php 3.0.10 or more.
  199.           
  200.    $cfgServers[n]['connect_type'] string
  201.           What type connection to use with the MySQL server. Your options
  202.           are 'socket' & 'tcp'. It defaults to 'tcp' as that is nearly
  203.           guarenteed to be available on all MySQL servers, while sockets
  204.           are not supported on some platforms.
  205.           
  206.    $cfgServers[n]['stduser'] string
  207.           $cfgServers[n]['stdpass'] string
  208.           When using http or cookie authentication modes (or 'config'
  209.           authentication mode since phpMyAdmin 2.2.1), you need to supply
  210.           the details of a MySQL account that has SELECT privilege on the
  211.           mysql.user (all columns except "Password"), mysql.db (all
  212.           columns) & mysql.tables_priv (all columns except "Grantor" &
  213.           "Timestamp") tables. This account is used to check what
  214.           databases the user will see at login.
  215.           Please see the install section on "Using http authentication"
  216.           for more information.
  217.           Note that if you try login to phpMyAdmin with this "stduser",
  218.           you could get some errors, depending the exact privileges you
  219.           gave to the "stduser". phpMyAdmin does not support a direct
  220.           login with the "stduser".
  221.           
  222.    $cfgServers[n]['auth_type'] string ['http'|'cookie'|'config']
  223.           Whether config or cookie or http authentication should be used
  224.           for this server.
  225.           
  226.           + 'config' authentication ($auth_type = 'config') is the plain
  227.             old way: username and password are stored in config.inc.php3.
  228.           + 'cookie' authentication mode ($auth_type = 'cookie') as
  229.             introduced in 2.2.3 allows you to log in as any valid MySQL
  230.             user with the help of... cookies. Log name and password are
  231.             stored in cookies during the session and password is deleted
  232.             when it ends.
  233.           + 'http' authentication (was called 'advanced' in older
  234.             versions) ($auth_type = 'http') as introduced in 1.3.0 allows
  235.             you to log in as any valid MySQL user via HTTP-Auth.
  236.             
  237.           Please see the install section on "Using authentication modes"
  238.           for more information.
  239.           
  240.    $cfgServers[n]['user'] string
  241.           $cfgServers[n]['password'] string
  242.           The user/password-pair which phpMyAdmin will use to connect to
  243.           this MySQL-server. The password is not needed when http or
  244.           cookie authentication is used, and should be empty.
  245.           
  246.    $cfgServers[n]['only_db'] string or array
  247.           If set to a(an array of) database name(s), only this(these)
  248.           database(s) will be shown to the user. Since phpMyAdmin 2.2.1,
  249.           this/these database(s) name(s) may contain MySQL wilcards
  250.           characters ("_" and "%"): if you want to use literal instances
  251.           of these characters, escape them (ie use 'my\_db' and not
  252.           'my_db').
  253.           This setting is an efficient way to lower the server charge
  254.           since the latter does not need to send MySQL requests to build
  255.           the available database list. But it does not replace the
  256.           privileges rules of the MySQL database server. If set, it just
  257.           means only these databases will be displayed but not at all
  258.           other databases can't be used.
  259.           
  260.    $cfgServers[n]['verbose'] string
  261.           Only useful when using phpMyAdmin with multiple server entries.
  262.           If set, this string will be displayed instead of the hostname
  263.           in the pulldown menu on the main page. This can be useful if
  264.           you want to show only certain databases on your system, for
  265.           example.
  266.           
  267.    $cfgServers[n]['bookmarkdb'] string
  268.           $cfgServers[n]['bookmarktable'] string
  269.           Since release 2.2.0 phpMyAdmin allows to bookmark queries. This
  270.           can be useful for queries you often run.
  271.           To use this functionality you have to:
  272.           
  273.           + create a table following this scheme:
  274.                  CREATE TABLE bookmark (
  275.                    id int(11) DEFAULT '0' NOT NULL auto_increment,
  276.                    dbase varchar(255) NOT NULL,
  277.                    user varchar(255) NOT NULL,
  278.                    label varchar(255) NOT NULL,
  279.                    query text NOT NULL,
  280.                    PRIMARY KEY (id)
  281.                  );
  282.           + then complete the two variables $cfgServers[n]['bookmarkdb']
  283.             and $cfgServers[n]['bookmarktable'] with the database and
  284.             table names you've choosen so phpMyAdmin will be able to find
  285.             the bookmarks.
  286.             
  287.           Note that stduser must have SELECT, INSERT and DELETE
  288.           privileges on the bookmark table. Here is a query to set up
  289.           those privileges:
  290.           GRANT SELECT,INSERT,DELETE ON <bookmarkdb>.<bookmarktable> to
  291.           'stduser'@localhost;
  292.           
  293.    $cfgServerDefault integer
  294.           If you have more than one server configured, you can set
  295.           $cfgServerDefault to any one of them to autoconnect to that
  296.           server when phpMyAdmin is started, or set it to 0 to be given a
  297.           list of servers without logging in.
  298.           If you have only one server configured, $cfgServerDefault MUST
  299.           be set to that server.
  300.           
  301.    $cfgOBGzip boolean
  302.           Defines whether to use gzip output buffering for increased
  303.           speed in HTTP transfers.
  304.           
  305.    $cfgPersistentConnections boolean
  306.           Whether persistent connections should be used or not
  307.           (mysql_connect or mysql_pconnect).
  308.           
  309.    $cfgExecTimeLimit integer [number of seconds]
  310.           Set the number of seconds a script is allowed to run. If
  311.           seconds is set to zero, no time limit is imposed.
  312.           This setting is used while importing/exporting dump files but
  313.           has no effect when PHP is running in safe mode.
  314.           
  315.    $cfgSkipLockedTables boolean
  316.           Mark used tables and make it possible to show databases with
  317.           locked tables (since 3.23.30).
  318.           
  319.    $cfgShowSQL boolean
  320.           Defines whether sql-queries generated by phpMyAdmin should be
  321.           displayed or not.
  322.           
  323.    $cfgAllowUserDropDatabase boolean
  324.           Defines whether standard users (non administrator) are allowed
  325.           to delete their own database or not. If set as FALSE, the link
  326.           "Drop Database" will not be shown, and even a "DROP DATABASE
  327.           mydatabase" will be rejected. Quite practical for ISP's with
  328.           many customers.
  329.           
  330.    $cfgConfirm boolean
  331.           Whether a warning ("Are your really sure..") should be
  332.           displayed when you're about to loose data.
  333.           
  334.    $cfgShowTooltip boolean
  335.           Defines whether to display table comment as tooltip in left
  336.           frame or not.
  337.           
  338.    $cfgShowMysqlInfo boolean
  339.           $cfgShowMysqlVars boolean
  340.           $cfgShowPhpInfo boolean
  341.           Defines whether to display the "MySQL runtime information",
  342.           "MySQL system variables" and "PHP information" links or not for
  343.           simple users at the starting main (right) frame. This setting
  344.           does not check MySQL commands entered directly.
  345.           Please note that to block the usage of phpinfo() in scripts,
  346.           you have to put this in your php.ini:
  347.           disable_functions = phpinfo()
  348.           
  349.    $cfgShowStats boolean
  350.           Defines whether to display space usage and statistics about
  351.           databases and tables or not.
  352.           Note that statistics requires at least MySQL 3.23.3 and that,
  353.           at this date, MySQL doesn't return such information for
  354.           Berkeley DB tables.
  355.           
  356.    $cfgShowBlob boolean
  357.           Defines whether BLOB fields are shown when browsing a table's
  358.           content or not.
  359.           
  360.    $cfgNavigationBarIconic boolean
  361.           Defines whether navigation bar buttons contain text or symbols
  362.           only.
  363.           
  364.    $cfgShowAll boolean
  365.           Defines whether an user should be displayed a "show all
  366.           (records)" button in browse mode or not.
  367.           
  368.    $cfgMaxRows integer
  369.           Number of rows displayed when browsing a resultset. If the
  370.           resultset contains more rows, Previous/Next links will be
  371.           shown.
  372.           
  373.    $cfgOrder string [DESC|ASC|SMART]
  374.           Defines whether fields are displayed in ascending (ASC) order,
  375.           in descending (DESC) order or in a "smart" (SMART) order -ie
  376.           descending order for fields of type TIME, DATE, DATETIME &
  377.           TIMESTAMP, ascending order else- by default.
  378.           
  379.    $cfgProtectBinary boolean
  380.           Defines whether BLOB or BINARY fields are protected from
  381.           edition when browsing a table's content or not. Valid values
  382.           are:
  383.           - FALSE to allow edition of all fields;
  384.           - blob to allow edition of all fields except BLOBS;
  385.           - all to disallow edition of all BINARY or BLOB fields.
  386.           
  387.    $cfgZipDump boolean
  388.           $cfgGZipDump boolean
  389.           $cfgBZipDump boolean
  390.           Defines whether to allow the use of zip/gzip/bzip compression
  391.           when creating a dump file or not.
  392.           
  393.    $cfgManualBaseShort string
  394.           If set to an URL which points to the MySQL documentation (on
  395.           short pages), appropriate help links are generated.
  396.           
  397.    $cfgDefaultLang string
  398.           Defines the default language to use, if not browser-defined or
  399.           user-defined.
  400.           See the select_lang.inc.php3 script to know the valid values
  401.           for this setting.
  402.           
  403.    $cfgLang string
  404.           Force: always use this language (must be defined in the
  405.           select_lang.inc.php3 script).
  406.           
  407.    $cfgLeftWidth integer
  408.           Left frame width in pixel.
  409.           
  410.    $cfgLeftBgColor string [HTML color]
  411.           $cfgRightBgColor string [HTML color]
  412.           The background colors (HTML) used for both the frames.
  413.           
  414.    $cfgLeftPointerColor string [HTML color]
  415.           The color (HTML) used for the pointer in the left frame (does
  416.           not work with NS4).
  417.           
  418.    $cfgBorder integer
  419.           The size of a table's border.
  420.           
  421.    $cfgThBgcolor string [HTML color]
  422.           The color (HTML) used for table headers.
  423.           
  424.    $cfgBgcolorOne string [HTML color]
  425.           The color (HTML) #1 for table rows.
  426.           
  427.    $cfgBgcolorTwo string [HTML color]
  428.           The color (HTML) #2 for table rows.
  429.           
  430.    $cfgBrowsePointerColor string [HTML color]
  431.           The color (HTML) used for the pointer in browse mode (does not
  432.           work with NS4).
  433.           
  434.    $cfgTextareaCols integer
  435.           $cfgTextareaRows integer
  436.           Number of columns and rows for the textareas.
  437.           
  438.    $cfgLimitChars integer
  439.           Maximal number of Chars showed in a TEXT OR a BLOB field on
  440.           browse view. Can be turned off by a toggle button on the browse
  441.           page.
  442.           
  443.    $cfgModifyDeleteAtLeft boolean
  444.           $cfgModifyDeleteAtRight boolean
  445.           Defines the place where modify and delete links would be put
  446.           when tables contents are displayed (you may have them displayed
  447.           both at the left and at the right). "Left" and "right" are
  448.           parsed as "top" and "bottom" with vertical display mode.
  449.           
  450.    $cfgDefaultDisplay string
  451.           There are 2 display modes: horizontal and vertical. Define
  452.           which one is displayed by default.
  453.           
  454.    $cfgRepeatCells integer
  455.           Repeat the headers every X cells, or 0 to deactivate.
  456.           
  457.    $cfgColumnTypes array
  458.           All possible types of a MySQL column. In most cases you don't
  459.           need to edit this.
  460.           
  461.    $cfgAttributeTypes array
  462.           Possible attributes for fields. In most cases you don't need to
  463.           edit this.
  464.           
  465.    $cfgFunctions array
  466.           A list of functions MySQL supports. In most cases you don't
  467.           need to edit this.
  468.    ______________________________________________________________________
  469.    
  470.    Top  -  Requirements  -  Introduction  -  Installation  -
  471.    Configuration  -  FAQ  -  Developers  -  Credits
  472.    ______________________________________________________________________
  473.    
  474. FAQ - Frequently Asked Questions
  475.  
  476.   [Server]
  477.   
  478.    I'm running php 4+ and my server is crashing each time a specific
  479.    action is required or phpMyAdmin sends a blank page or a page full of
  480.    cryptic characters to my browser, what can I do?
  481.    There are some known php bugs with output buffering and compression.
  482.    Try to set the $cfgOBGzip directive to FALSE in your config.inc.php or
  483.    .php3 file and the zlib.output_compression directive to Off in your
  484.    php configuration file.
  485.    
  486.    My Apache server crashes when using phpMyAdmin.
  487.    You should first try the latest versions of Apache (and possibly
  488.    MySQL).
  489.    See also the other FAQ entry about php bugs with output buffering.
  490.    If your server keeps crashing, please ask for help in the various
  491.    Apache support groups.
  492.    
  493.    Using phpMyAdmin on IIS, I'm displayed the error message: "The
  494.    specified CGI application misbehaved by not returning a complete set
  495.    of HTTP headers...."
  496.    You just forgot to read the install.txt file from the php
  497.    distribution. Have a look at the last message in this bug report from
  498.    the official php bug database.
  499.    
  500.    Using phpMyAdmin on IIS, I'm facing crashes and/or many error messages
  501.    with the http or advanced authentication mode.
  502.    This is a known problem with the php ISAPI filter: it's not so stable.
  503.    For some more information and complete testings see the messages
  504.    posted by AndrΘ B. aka "djdeluxe76" in this thread from the phpWizard
  505.    forum.
  506.    Please use instead the cookie authentication mode.
  507.    
  508.    I can't use phpMyAdmin on PWS: nothing is displayed!
  509.    This seems to be a PWS bug. Filippo Simoncini found a workaroud (at
  510.    this time there is no better fix): remove or comment the DOCTYPE
  511.    declarations (3 lines) from the scripts header.inc.php3, index.php3,
  512.    left.php3 and libraries/common.lib.php3.
  513.    
  514.    How can I GZip or Bzip a dump or a CSV export. It seems to not work?
  515.    These features are based on the gzencode() and bzcompress() php
  516.    functions to be more independent of the platform (Unix/Windows, Safe
  517.    Mode or not, and so on). So, you must have PHP4 >= 4.0.4 and
  518.    Zlib/Bzip2 support (--with-zlib and --with-bz2).
  519.    
  520.    I cannot insert a text file in a table, and I get an error about safe
  521.    mode being in effect.
  522.    Your uploaded file is saved by PHP in the "upload dir", as defined in
  523.    php.ini by the variable upload_tmp_dir (usually the system default is
  524.    /tmp).
  525.    We recommend the following setup for Apache servers running in safe
  526.    mode, to enable uploads of files while being reasonably secure:
  527.      * create a separate directory for uploads: mkdir /tmp/php
  528.      * give ownership to the Apache server's user.group: chown
  529.        apache.apache /tmp/php
  530.      * give proper permission: chmod 600 /tmp/php
  531.      * put upload_tmp_dir = /tmp/php in php.ini
  532.      * restart Apache
  533.        
  534.    I'm having troubles when uploading files. In general file uploads
  535.    don't work on my system and uploaded files have a Content-Type: header
  536.    in the first line.
  537.    It's not really phpMyAdmin related but RedHat 7.0. You have a RedHat
  538.    7.0 and you updated your php rpm to php-4.0.4pl1-3.i386.rpm, didn't
  539.    you?
  540.    So the problem is that this package has a serious bug that was
  541.    corrected ages ago in php (2001-01-28: see php's bug tracking system
  542.    for more details). The problem is that the bugged package is still
  543.    available though it was corrected (see redhat's bugzilla for more
  544.    details).
  545.    So please download the fixed package and the problem should go away.
  546.    And that fixes the \r\n problem with file uploads!
  547.    
  548.    I'm having troubles when uploading files with phpMyAdmin running on a
  549.    secure server. My browser is Internet Explorer and I'm using the
  550.    Apache server.
  551.    As suggested by "Rob M" in the phpWizard forum, add this line to your
  552.    httpd.conf:
  553.        SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
  554.    It seems to clear up many problems between IE and SSL.
  555.    
  556.   [Configuration]
  557.   
  558.    The error message "Warning: Cannot add header information - headers
  559.    already sent by ..." is displayed, what's the problem?
  560.    Edit your config.inc.php or .php3 file and ensure there is nothing (ie
  561.    no blank lines, no spaces, no characters...) neither before the <?php
  562.    tag at the beginning, neither after the ?> tag at the end.
  563.    
  564.    phpMyAdmin can't connect to MySQL. What's wrong?
  565.    Either there is an error with your PHP setup or your username/password
  566.    is wrong. Try to make a small script which uses mysql_connect and see
  567.    if it works. If it doesn't, it may be you haven't even compiled MySQL
  568.    support into PHP.
  569.    
  570.    The error message "Warning: MySQL Connection Failed: Can't connect to
  571.    local MySQL server through socket '/tmp/mysql.sock' (111)...") is
  572.    displayed. What can I do?
  573.    Here is a fix suggested by Brad Ummer in the phpwizard forum:
  574.      * First, you need to determine what socket is being used by MySQL.
  575.        To do this, telnet to your server and go to the MySQL bin
  576.        directory. In this directory there should be a file named
  577.        mysqladmin. Type ./mysqladmin variables, and this should give you
  578.        a bunch of info about your MySQL server, including the socket
  579.        (/tmp/mysql.sock, for example).
  580.      * Then, you need to tell PHP to use this socket.
  581.        Assuming you are using PHP 3.0.10 or better, you can specify the
  582.        socket to use when you open the connection. To do this in
  583.        phpMyAdmin, you need to complete the socket information in the
  584.        config.inc.php3.
  585.        For example: $cfgServers[n]['socket'] = '/tmp/mysql.sock';
  586.        
  587.    Have also a look at the corresponding section of the MySQL
  588.    documentation.
  589.    
  590.    Nothing is displayed by my browser when I try to run phpMyAdmin, what
  591.    can I do?
  592.    Try to set the $cfgOBGZip directive to FALSE in the phpMyAdmin
  593.    configuration file. It helps sometime.
  594.    Also have a look at your php version number: if it contains "4.0b..."
  595.    it means you're running a beta version of PHP. That's not a so good
  596.    idea, please upgrade to a plain revision.
  597.    
  598.    Each time I want to insert or change a record or drop a database or a
  599.    table, an error 404 (page not found) is displayed or, with http or
  600.    cookie authentication, I'm asked to login again. What's wrong?
  601.    Check the value you set for the $cfgPmaAbsoluteUri directive in the
  602.    phpMyAdmin configuration file.
  603.    
  604.   [Known limitations]
  605.   
  606.    When using http authentication, an user who logged out can not relog
  607.    in with the same nick.
  608.    This is related to the authentication mechanism (protocol) used by
  609.    phpMyAdmin. We plan to change it as soon as we may find enough free
  610.    time to do it, but you can bypass this problem: just close all the
  611.    opened browser windows and then go back to phpMyAdmin. You should be
  612.    able to logs in again.
  613.    
  614.   [ISPs]
  615.   
  616.    I'm an ISP. Can I setup one central copy of phpMyAdmin or do I need to
  617.    install it for each customer?
  618.    Since version 2.0.3, you can setup a central copy of phpMyAdmin for
  619.    all your users. The development of this feature was kindly sponsored
  620.    by NetCologne GmbH. This requires a properly setup MySQL user
  621.    management and phpMyAdmin http authentication. See the install section
  622.    on "Using http authentication".
  623.    
  624.    What's the preferred way of making phpMyAdmin secure against evil
  625.    access?
  626.    This depends on your system.
  627.    If you're running a server which cannot be accessed by other people,
  628.    it's sufficient to use the directory protection bundled with your
  629.    webserver (with Apache you can use .htaccess files, for example).
  630.    If other people have telnet access to your server, you should use
  631.    phpMyAdmin's http authentication feature.
  632.    Suggestions:
  633.      * Your config.inc.php3 file should be chmod 660.
  634.      * All your phpMyAdmin files should be chown phpmy.apache, where
  635.        phpmy is a user whose password is only known to you, and apache is
  636.        the group under which Apache runs.
  637.      * You should use PHP safe mode, to protect from other users that try
  638.        to include your config.inc.php3 in their scripts.
  639.        
  640.    I get errors about not being able to include a file in /lang
  641.    Check php.ini, or ask your sysadmin to check it. The include_path must
  642.    contain "." somewhere in it, and open_basedir, if used, must contain
  643.    "." and "./lang" to allow normal operation of phpMyAdmin.
  644.    
  645.    phpMyAdmin always gives "Access denied" when using http
  646.    authentication.
  647.    This could happen for several reasons:
  648.      * $cfgServers[n]['stduser'] and/or $cfgServers[n]['stdpass'] are
  649.        wrong.
  650.      * The username/password you specify in the login-dialog are invalid.
  651.      * You have already setup a security mechanism for the
  652.        phpMyAdmin-directory, eg. a .htaccess file. This would interfere
  653.        with phpMyAdmin's authentication, so remove it.
  654.        
  655.   [Browsers or client OS]
  656.   
  657.    I get an out of memory error, and my controls are non-functional, when
  658.    trying to create a table with more than 14 fields.
  659.    We could reproduce this problem only under Win98/98SE. Testing under
  660.    WinNT4 or Win2K, we could easily create more than 60 fields.
  661.    A workaround is to create a smaller number of fields, then come back
  662.    to your table properties and add the other fields.
  663.    
  664.    With Xitami 2.5b4, phpMyAdmin won't process form fields.
  665.    This is not a phpMyAdmin problem but a Xitami known bug: you'll face
  666.    it with each script/website that use forms.
  667.    Upgrade or downgrade your Xitami server.
  668.    
  669.    I have problems dumping tables with Konqueror (phpMyAdmin 2.2.2)
  670.    With Konqueror 2.1.1: plain dumps, zip and gzip dumps work ok, except
  671.    that the proposed file name for the dump is always 'tbl_dump.php'.
  672.    Bzip2 dumps don't seem to work.
  673.    With Konqueror 2.2.1: plain dumps work; zip dumps are placed into the
  674.    user's temporary directory, so they must be moved before closing
  675.    Konqueror, or else they disappear. Gzip dumps give an error message.
  676.    Testing needs to be done for Konqueror 2.2.2.
  677.    
  678.    I refresh (reload) my browser, and come back to the welcome page.
  679.    Some browsers support right-clicking into the frame you want to
  680.    refresh, just do this in the right frame.
  681.    
  682.   [Using phpMyAdmin]
  683.   
  684.    I can't insert new rows into a table - MySQL brings up a SQL-error.
  685.    Examine the SQL error with care. I've found that many programmers
  686.    specifying a wrong field-type.
  687.    Common errors include:
  688.      * Using VARCHAR without a size argument
  689.      * Using TEXT or BLOB with a size argument
  690.        
  691.    Also, look at the syntax chapter in the MySQL manual to confirm that
  692.    your syntax is correct.
  693.    
  694.    When I create a table, I click the Index checkbox for 2 fields and
  695.    phpMyAdmin generates only one index with those 2 fields.
  696.    In phpMyAdmin 2.2.0 and 2.2.1, this is the way to create a
  697.    multi-fields index. If you want two indexes, create the first one when
  698.    creating the table, save, then display the table properties and click
  699.    the Index link to create the other index.
  700.    
  701.    How can I insert a null value into my table?
  702.    Since version 2.2.3, you have a checkbox for each field that can be
  703.    null. Before 2.2.3, you had to enter "null", without the quotes, as
  704.    the field's value.
  705.    
  706.   [phpMyAdmin project]
  707.   
  708.    I have found a bug. How do I inform developers?
  709.    Our Bug Tracker is located at
  710.    http://sourceforge.net/projects/phpmyadmin/ under the Bugs section.
  711.    But please first discuss your bug with other users:
  712.    http://sourceforge.net/projects/phpmyadmin/ (and choose Forums)
  713.    http://www.phpwizard.net/projects/phpMyAdmin/ (and choose Support
  714.    Forum)
  715.    
  716.    I want to translate the messages to a new language or upgrade an
  717.    existing language, where do I start?
  718.    Always use the current cvs version of your language file. For a new
  719.    language, start from english.inc.php3. If you don't know how to get
  720.    the cvs version, please ask one of the developers. It would be a good
  721.    idea to subscribe to the phpmyadmin-translators discussion list,
  722.    because this is where we ask for translations of new messages. You can
  723.    then send your translations to the sourceforge.net translation
  724.    tracker.
  725.    
  726.    I would like to help out with the development of phpMyAdmin. How
  727.    should I proceed?
  728.    The following method is preferred for new developers:
  729.      * fetch the current CVS tree over anonymous CVS:
  730.        cvs
  731.        -d:pserver:anonymous@cvs.phpmyadmin.sourceforge.net:/cvsroot/phpmy
  732.        admin login
  733.        [Password: simply press the Enter key]
  734.        cvs -z3
  735.        -d:pserver:anonymous@cvs.phpmyadmin.sourceforge.net:/cvsroot/phpmy
  736.        admin checkout phpMyAdmin
  737.        [This will create a new sub-directory named phpMyAdmin]
  738.      * add your stuff
  739.      * put the modified files (tar'ed and gzip'ed) inside the patch
  740.        tracker of the phpMyAdmin SourceForge account.
  741.        
  742.    Write access to the CVS tree is granted only to experienced developers
  743.    who have already contributed something useful to phpMyAdmin.
  744.    Also, have a look at the Developers section.
  745.    ______________________________________________________________________
  746.    
  747.    Top  -  Requirements  -  Introduction  -  Installation  -
  748.    Configuration  -  FAQ  -  Developers  -  Credits
  749.    ______________________________________________________________________
  750.    
  751. Developers Information
  752.  
  753.    phpMyAdmin is Open Source, so you're invited to contribute to it. Many
  754.    great features have been written by other people and you too can help
  755.    to make phpMyAdmin a useful tool.
  756.    
  757.    If you're planning to contribute source, please read the following
  758.    information:
  759.      * All files include header.inc.php3 (layout),
  760.        libraries/common.lib.php3 (common functions) and config.inc.php3.
  761.        All configuration data belongs in config.inc.php3. Please keep it
  762.        free from other code.
  763.        Commonly used functions should be added to libraries/lib.inc.php3
  764.        and more specific ones may be added within a library stored into
  765.        the libraries sub-directory.
  766.      * Obviously, you're free to use whatever coding style you want. But
  767.        please try to keep your code as simple as possible: beginners are
  768.        using phpMyAdmin as an example application.
  769.        By the way, we're currently updating all the scripts so they will
  770.        be XHTML1.0 and CSS2 compliant on one hand, they will fit PEAR
  771.        coding standards on the other hand. Please pay attention to this.
  772.      * Please try to keep up the file-naming conventions. Table-related
  773.        stuff goes to tbl_*.php3, db-related code to db_*.php3 and so on.
  774.      * Please don't use verbose strings in your code, instead add the
  775.        string (at least) to english.inc.php3 and print() it out.
  776.      * If you want to be really helpful, write an entry for the
  777.        ChangeLog.
  778.        
  779.    IMPORTANT: With 1.4.1, development has switched to CVS. The following
  780.    method is preferred for new developers:
  781.      * fetch the current CVS tree over anonymous CVS:
  782.        cvs
  783.        -d:pserver:anonymous@cvs.phpmyadmin.sourceforge.net:/cvsroot/phpmy
  784.        admin login
  785.        [Password: simply press the Enter key]
  786.        cvs -z3
  787.        -d:pserver:anonymous@cvs.phpmyadmin.sourceforge.net:/cvsroot/phpmy
  788.        admin checkout phpMyAdmin
  789.        [This will create a new sub-directory named phpMyAdmin]
  790.      * add your stuff
  791.      * put the modified files (tar'ed and gzip'ed) inside the patch
  792.        tracker of the phpMyAdmin SourceForge account
  793.        (http://sourceforge.net/projects/phpmyadmin/)
  794.        
  795.    Write access to the CVS tree is granted only to developers who have
  796.    already contributed something useful to phpMyAdmin. If you're
  797.    interested in that, please contact us using the phpmyadmin-devel
  798.    mailing list.
  799.    ______________________________________________________________________
  800.    
  801.    Top  -  Requirements  -  Introduction  -  Installation  -
  802.    Configuration  -  FAQ  -  Developers  -  Credits
  803.    ______________________________________________________________________
  804.    
  805. Credits
  806.  
  807.  
  808. phpMyAdmin - Credits
  809. ====================
  810.  
  811. CREDITS, in chronological order
  812. -------------------------------
  813.  
  814. [tr] - Tobias Ratschiller <tobias_at_phpwizard.net>
  815.         * creator of the phpmyadmin project
  816.         * maintainer from 1998 to summer 2000
  817.  
  818. [md] - Marc Delisle <DelislMa_at_CollegeSherbrooke.qc.ca>
  819.         * multi-language version
  820.         * various fixes and improvements
  821.  
  822. [om] - Olivier Mⁿller <om_at_omnis.ch>
  823.         * started SourceForge phpMyAdmin project in March 2001
  824.         * sync'ed different existing CVS trees with new features and bugfixes
  825.         * multi-language improvements, dynamic language selection
  826.         * current project maintainer, with Marc and Loic
  827.  
  828. [lc] - Lo∩c Chapeaux <lolo_at_phpheaven.net>
  829.         * rewrote and optimized javascript, DHTML and DOM stuff
  830.         * started to rewrite the scripts so they fit the PEAR coding standards
  831.           and generate XHTML1.0 and CSS2 compliant codes
  832.         * improved the language detection system
  833.         * many bugfixes and improvements
  834.  
  835. [rj] - Robin Johnson <robbat2_at_users.sourceforge.net>
  836.         * database maintence controls
  837.         * table type code
  838.  
  839. [af] - Armel Fauveau <armel.fauveau_at_globalis-ms.com>
  840.         * bookmarks feature
  841.         * multiple dump feature
  842.         * gzip dump feature
  843.         * zip dump feature
  844.  
  845. [gl] - Geert Lund <glund_at_silversoft.dk>
  846.         * various fixes
  847.         * moderator of the phpMyAdmin users forum at phpwizard.net
  848.  
  849. [kc] - Korakot Chaovavanich <korakot_at_iname.com>
  850.         * "insert as new row" feature
  851.  
  852. [pk] - Pete Kelly <webmaster_at_trafficg.com>
  853.         * rewrote and fix dump code
  854.         * bugfixes
  855.  
  856. [sa] - Steve Alberty <alberty_at_neptunlabs.de>
  857.         * rewrote dump code for PHP4
  858.         * mySQL table statistics
  859.         * bugfixes
  860.  
  861. [bg] - Benjamin Gandon <gandon_at_isia.cma.fr>
  862.         * main author of the version 2.1.0.1
  863.         * bugfixes
  864.  
  865.  
  866. Thanks to those guy who send us some major improvements to merge into the
  867. code since version 2.1.0:
  868. - Michal Cihar  who implemented the enhanced
  869.   index creation/display feature.
  870. - Christophe GeschΘ from the "MySQL Form Generator for PHPMyAdmin"
  871.   (http://sourceforge.net/projects/phpmysqlformgen/) who suggested the patch
  872.   for multiple table printviews.
  873. - Garvin Hicking  who builds the patch for vertical
  874.   display of table rows.
  875. - Piotr Roszatycki  and Dan Wilson, for the
  876.   Cookie authentication mode.
  877.  
  878. And also to the following people who have contributed minor changes,
  879. enhancements, bugfixes or support for a new language since version 2.1.0:
  880. Bora Alioglu, Ricardo ?, Sven-Erik Andersen, Alessandro Astarita, Borges Botelh
  881. o,
  882. Olivier Bussier, Neil Darlow, Kristof Hamann, Thomas KlΣger, Lubos Klokner,
  883. Martin Marconcini, Girish Nair, David Nordenberg, Bernard M. Piller,
  884. Laurent Haas, "Sakamoto", www.securereality.com.au,
  885. Michael Tacelosky, Daniel Villanueva, Vinay, Ignacio Vazquez-Abrams,
  886. Chee Wai, Jakub Wilk, Thomas Michael Winningham.
  887.  
  888.  
  889. Original Credits of Version 2.1.0
  890. ---------------------------------
  891.  
  892.     This work is based on Peter Kuppelwieser's MySQL-Webadmin. It was his idea
  893.     to create a web-based interface to MySQL using PHP3. Although I have not
  894.     used any of his source-code, there are some concepts I've borrowed from
  895.     him. phpMyAdmin was created because Peter told me he wasn't going to
  896.     further develop his (great) tool.
  897.     Thanks go to
  898.     - Amalesh Kempf <ak-lsml_at_living-source.com> who contributed the
  899.       code for the check when dropping a table or database. He also suggested
  900.       that you should be able to specify the primary key on tbl_create.php3. To
  901.       version 1.1.1 he contributed the ldi_*.php3-set (Import text-files) as
  902.       well as a bug-report. Plus many smaller improvements.
  903.     - Jan Legenhausen <jan_at_nrw.net>: He made many of the changes that
  904.       were introduced in 1.3.0 (including quite significant ones like the
  905.       authentication). For 1.4.1 he enhanced the table-dump feature. Plus
  906.       bug-fixes and help.
  907.     - Marc Delisle <DelislMa_at_CollegeSherbrooke.qc.ca> made phpMyAdmin
  908.       language-independent by outsourcing the strings to a separate file. He
  909.       also contributed the French translation.
  910.     - Alexandr Bravo <abravo_at_hq.admiral.ru> who contributed
  911.       tbl_select.php3, a feature to display only some fields from a table.
  912.     - Chris Jackson <chrisj_at_ctel.net> added support for MySQL
  913.       functions in tbl_change.php3. He also added the
  914.       "Query by Example" feature in 2.0.
  915.     - Dave Walton <walton_at_nordicdms.com> added support for multiple
  916.       servers and is a regular contributor for bug-fixes.
  917.     - Gabriel Ash <ga244_at_is8.nyu.edu> contributed the random access
  918.       features for 2.0.6.
  919.     The following people have contributed minor changes, enhancements, bugfixes
  920.     or support for a new language:
  921.     Jim Kraai, Jordi Bruguera, Miquel Obrador, Geert Lund, Thomas Kleemann,
  922.     Alexander Leidinger, Kiko Albiol, Daniel C. Chao, Pavel Piankov,
  923.     Sascha Kettler, Joe Pruett, Renato Lins, Mark Kronsbein, Jannis Hermanns,
  924.     G. Wieggers.
  925.  
  926.     And thanks to everyone else who sent me email with suggestions, bug-reports
  927.     and or just some feedback.
  928.    ______________________________________________________________________
  929.    
  930.    Top  -  Requirements  -  Introduction  -  Installation  -
  931.    Configuration  -  FAQ  -  Developers  -  Credits
  932.    ______________________________________________________________________
  933.    
  934.                                         Valid XHTML 1.0!      Valid CSS! 
  935.