error in installer_base.lib.php shows up while configuring in expert-mode

Discussion in 'Installation/Configuration' started by d@ten, Sep 14, 2009.

  1. d@ten

    d@ten New Member

    Got this error while configuring my master-server:

    Code:
    >> Initial configuration  
    
    Operating System: Debian Lenny/Sid or compatible
    
        Following will be a few questions for primary configuration so be careful.
        Default values are in [brackets] and can be accepted with <ENTER>.
        Tap in "quit" (without the quotes) to stop the installer.
    
    
    Select language (en,de) [en]: 
    
    Installation mode (standard,expert) [standard]: expert
    
    Full qualified hostname (FQDN) of the server, eg server1.domain.tld  [test]: master
    
    MySQL server hostname [localhost]: 
    
    MySQL root username [root]: 
    
    MySQL root password []: foobar
    
    MySQL database to create [dbispconfig]: 
    
    MySQL charset [utf8]: 
    
    Shall this server join an existing ISPConfig multiserver setup (y,n) [n]: 
    
    Adding ISPConfig server record to database.
    
    Configure Mail (y,n) [y]: n
    
    Configure Jailkit (y,n) [y]: n
    
    Configure FTP Server (y,n) [y]: n
    
    Configure DNS Server (y,n) [y]: n
    
    
    Hint: If this server shall run the ispconfig interface, select 'y' in the 'Configure Apache Server' option.
    
    Configure Apache Server (y,n) [y]:  
    
    Configuring Apache
    
    [B][COLOR="Red"]Warning: Invalid argument supplied for foreach() in /root/trunk/install/lib/installer_base.lib.php on line 811[/COLOR][/B]
    Configuring vlogger
    Configure Firewall Server (y,n) [y]: 
    
    Adding the following to installer_base.lib.php:

    Code:
                    if(count($records) > 0) {
    +                        swriteln("======================\n");
    +                        swriteln(print_r($records) . "\n");
    +                        swriteln($records . "\n");
    +                        swriteln(var_dump($records) . "\n");
    +                        swriteln("======================\n");
                            foreach($records as $rec) {
    
    shows me the following:

    Code:
    [..]
    Hint: If this server shall run the ispconfig interface, select 'y' in the 'Configure Apache Server' option.
    
    Configure Apache Server (y,n) [y]: 
    
    Configuring Apache
    ======================
    
    1
    
    
    
    bool(false)
    
    
    ======================
    
    
    Warning: Invalid argument supplied for foreach() in /root/trunk/install/lib/installer_base.lib.php on line 816
    Configuring vlogger
    Configure Firewall Server (y,n) [y]: ^C
    
    $records is false (therefore not an integer) and in PHP count(false) results in <true>.

    I suggest changing
    Code:
    if(count($records) > 0) {
    in sth. like
    Code:
    if((count($records) > 0) && ($records)) {
    Weird.

    Greetings

    d@ten
     
    Last edited: Sep 14, 2009
  2. till

    till Super Moderator

    Thanks. It has been fixed in svn.
     

Share This Page