Anzeige:
Ergebnis 1 bis 7 von 7

Thema: PHP 5.6 und PHP7 auf einer Debian 8.5 und MySQL Problem

  1. #1
    Registrierter Benutzer Avatar von schani
    Registriert seit
    Jan 2003
    Ort
    Moosburg
    Beiträge
    369

    Unhappy PHP 5.6 und PHP7 auf einer Debian 8.5 und MySQL Problem

    Hallo zusammen,

    ich habe folgendes Problem:
    Ich brauche PHP5.6 und PHP7 auf einem Server. Das geht über fcgid ganz gut, aber es tritt dennoch folgendes Problem auf.
    Ich brauche PHP5.6 deswegen weil ältere CMS und eigener PHP Code von Kunden noch auf php-mysql basieren und nur darüber an die Datenbank ran kommen. Jetzt möchte ich PHP5.6 installieren noch mit alter php-mysql Anbindung und PHP7.0 mit neuer PHP-mysqli Anbindung.
    In Aptitude kann ich aber die beiden php-mysql Pakete nicht unabhängig von einander installieren. Wenn ich php5-mysqli lösche und durch php5-mysql ersetze wird das auch mit php7.0 gemacht.

    Was kann ich da tun?

    Kann ich auch irgendwie noch PHP 5.4 oder 5.5 parallel installieren?

    Besten Dank für Eure Tipps

    Christian

  2. #2
    Fieses Frettchen Avatar von DrunkenFreak
    Registriert seit
    Dec 2003
    Beiträge
    3.315
    Du kannst PHP auch selbst kompilieren und ein eigenes Verzeichnis dafür festlegen.

  3. #3
    Elefantenversteher Avatar von florian0285
    Registriert seit
    Jun 2016
    Beiträge
    1.054
    Hatte vor gut 10 Jahren den selben Fall und soweit scheint sich nichts geändert zu haben. Kurz gesagt musst du die zweite Version selbst bauen. Kompilieren, Paket bauen und ggf. eigenes Repo pflegen kann etwas aufwendig werden.

    Hier scheint es vorgefertigte Pakete für diesen Fall zu geben:

    https://dominicpratt.de/verschiedene...apache-nutzen/

    Ist allerdings ein externes Repo...
    Matthäus 7:3 Was siehst du aber den Splitter in deines Bruders Auge, und wirst nicht gewahr des Balkens in deinem Auge?

  4. #4
    Registrierter Benutzer
    Registriert seit
    Jun 2003
    Beiträge
    578
    Alternativ, kann man auch einen Wrapper einbinden, der die mysql Aufrufe auf mysqli verbiegt. Je nachedem, was gebraucht wirde, hätte ich da etwas fertiges...
    gruss sys;-)

  5. #5
    Elefantenversteher Avatar von florian0285
    Registriert seit
    Jun 2016
    Beiträge
    1.054
    Zeig mal...
    Matthäus 7:3 Was siehst du aber den Splitter in deines Bruders Auge, und wirst nicht gewahr des Balkens in deinem Auge?

  6. #6
    Registrierter Benutzer
    Registriert seit
    Jun 2003
    Beiträge
    578
    Das Script stellt die wichtigsten mysql Aufrufe als Funktion zur Verfügung, wenn die mysql Extension nicht vorhanden ist.

    PS.
    Die Umbrüche im Code-Tag sind nicht von mir!

    PHP-Code:
    if(!function_exists("mysql_connect"))
    {
        if(!
    extension_loaded("mysqli"))
        {
            
    trigger_error("MySQLi extension must be loaded."E_USER_ERROR);
        }

        
    define("MYSQL_NUM"MYSQLI_NUM);
        
    define("MYSQL_ASSOC"MYSQLI_ASSOC);
        
    define("MYSQL_BOTH"MYSQLI_BOTH);

        
    define("MYSQL_CLIENT_COMPRESS"NULL);
        
    define("MYSQL_CLIENT_IGNORE_SPACE"NULL);
        
    define("MYSQL_CLIENT_INTERACTIVE"NULL);

        
    $__mysql NULL;

    /*
     *  Start connections and functions
     *
    */

        
    function mysql_not_implemented($function)
        {
            
    trigger_error("The $function function is not needed for adresSQL. Complete function on mysql_wrapper.php to use it!"E_USER_WARNING);
            return 
    false;

        }

        function 
    mysql_resolve_link($link)
        {
            global 
    $__mysql;

            if(
    $link == NULL)
            {
                if(!
    is_object($__mysql))
                {
                    
    trigger_error("invalid link handle, connect to database"E_USER_ERROR);
                }
                else
                {
                    return 
    $__mysql;
                }
            }
            return 
    $link;
        }

        function 
    mysql_connect($host NULL$user NULL$pass NULL$new false$flags 0)
        {
            global 
    $__mysql;

            
    $extra_info substr(strstr($host":"), 1);
            if(!empty(
    $extra_info))
            {
                if(
    is_numeric($extra_info))
                {
                    
    $port $extra_info;
                }
                else
                {
                    
    $socket $extra_info;
                }

                
    $host substr($host0strlen($host)-(strlen($extra_info)+1));

            }

            if(empty(
    $socket))
            {
                if(empty(
    $port))
                {
                    
    $__mysql mysqli_connect($host$user$pass);
                }
                else
                {
                    
    $__mysql mysqli_connect($host$user$passNULL$port);
                }

            }
            else
            {
                
    $__mysql mysqli_connect($host$user$passNULLNULL$socket);
            }

            return 
    $__mysql;
        }

        function 
    mysql_select_db($dbname$link NULL)
        {
            
    $link mysql_resolve_link($link);
            return 
    mysqli_select_db($link$dbname);
        }

        function 
    mysql_query($query$link NULL)
        {
            
    $link mysql_resolve_link($link);
            return 
    mysqli_query($link$query);
        }

        function 
    mysql_fetch_assoc($result)
        {
            return 
    mysqli_fetch_assoc($result);
        }

        function 
    mysql_fetch_array($result$type MYSQL_BOTH)
        {
            return 
    mysqli_fetch_array($result$type);
        }

        function 
    mysql_fetch_field($result$offset NULL)
        {
            if(
    $offset != NULL)
            {
                for(
    $i 0; ($i $offset) || !($retval mysqli_fetch_field($result)); $i++)
                {
                    
    /* not ready yet... */
                
    }
            }
            else
            {
                return 
    mysqli_fetch_field($result);
            }

            return (
    $retval) ? $retval false;

        }

        function 
    mysql_close($link NULL)
        {
            
    $link mysql_resolve_link($link);
            return 
    mysqli_close($link);

        }

        function 
    mysql_affected_rows($link NULL)
        {
            
    $link mysql_resolve_link($link);
            return 
    mysqli_affected_rows($link);

        }

        function 
    mysql_change_user($user$passwd$database NULL$link NULL)
        {
            
    $link mysql_resolve_link($link);
            return 
    mysqli_change_user($link$user$passwd$database);
        }

        function 
    mysql_client_encoding($link NULL)
        {
            
    $link mysql_resolve_link($link);
            return 
    mysqli_character_set_name($link);
        }

        function 
    mysql_create_db($database$link NULL)
        {
            
    $link mysql_resolve_link($link);
            
    $query "CREATE DATABASE $database";
            
    $result msyqli_query($link$query);
            return (!
    $result) ? false true;
        }

        function 
    mysql_data_seek($result$row)
        {
            return 
    mysqli_data_seek($result$row);
        }

        function 
    mysql_db_name($result$row$field NULL)
        {
            return 
    mysql_not_implemented("mysql_db_name()");
        }

        function 
    mysql_db_query($database$query$link NULL)
        {
            
    $link mysql_resolve_link($link);
            
    mysqli_select_db($link$database);
            return 
    mysqli_query($link$query);
        }

        function 
    mysql_drop_db($database$link NULL)
        {
            
    $link mysql_resolve_link($link);
            
    $query "DROP DATABASE $database";
            
    $result mysqli_query($link$query);
            return (!
    $result) ? false true;
        }

        function 
    mysql_error($link NULL)
        {
            
    $link mysql_resolve_link($link);
            return 
    mysqli_error($link);
        }

        function 
    mysql_errno($link NULL)
        {
            
    $link mysql_resolve_link($link);
            return 
    mysqli_errno($link);
        }

        function 
    mysql_escape_string($string)
        {
            
    $link mysql_resolve_link(NULL);
            return 
    mysqli_real_escape_string($link$string);
        }

        function 
    mysql_fetch_lengths($result)
        {
            return 
    mysqli_fetch_lengths($result);
        }

        function 
    mysql_fetch_object($result)
        {
            return 
    mysqli_fetch_object($result);
        }

        function 
    mysql_fetch_row($result)
        {
            return 
    mysqli_fetch_row($result);
        }

        function 
    mysql_field_flags($result$offset)
        {
            return 
    mysql_not_implemented("mysql_field_flags()");
        }

        function 
    mysql_field_len($result$offset)
        {
            return 
    mysql_not_implemented("mysql_field_len()");
        }

        function 
    mysql_field_name($result$offset)
        {
           
    $finfo mysqli_fetch_field_direct($result$offset);
           return 
    $finfo->name;
        }

        function 
    mysql_field_seek($result$offset)
        {
            return 
    mysqli_field_seek($resutl$offset);
        }

        function 
    mysql_field_table($result$offset)
        {
            return 
    mysql_not_implemented("mysql_field_table()");
        }

        function 
    mysql_field_type($result$offset)
        {
            return 
    mysql_not_implemented("mysql_field_type()");
        }

        function 
    mysql_free_result($result)
        {
            return 
    mysqli_free_result($result);
        }

        function 
    mysql_get_client_info()
        {
            return 
    mysqli_get_client_info();
        }

        function 
    mysql_get_host_info($link NULL)
        {
            
    $link mysql_resolve_link($link);
            return 
    mysqli_get_client_info($link);

        }

        function 
    mysql_get_proto_info($link NULL)
        {
            
    $link mysql_resolve_link($link);
            return 
    mysqli_get_proto_info($link);
        }

        function 
    mysql_get_server_info($link NULL)
        {
            
    $link mysql_resolve_link($link);
            return 
    mysqli_get_server_info($link);
        }

        function 
    mysql_info($link NULL)
        {
            
    $link mysql_resolve_link($link);
            return 
    mysqli_info($link);
        }

        function 
    mysql_insert_id($link NULL)
        {
            
    $link mysql_resolve_link($link);
            return 
    mysqli_insert_id($link);
        }

        function 
    mysql_list_dbs($link NULL)
        {
            
    $link mysql_resolve_link($link);
            
    $query "SHOW DATABASES";
            return 
    mysqli_query($link$query);
        }

        function 
    mysql_list_fields($database$table$link NULL)
        {
            return 
    mysql_not_implemented("mysql_list_fields()");
        }

        function 
    mysql_list_processes($link NULL)
        {
            return 
    mysql_not_implemented("mysql_list_processes()");
        }

        function 
    mysql_list_tables($database$link NULL)
        {
            return 
    mysql_not_implemented("mysql_list_tables()");
        }

        function 
    mysql_num_fields($result)
        {
            return 
    mysqli_num_fields($result);
        }

        function 
    mysql_num_rows($result)
        {
            return 
    mysqli_num_rows($result);
        }

        function 
    mysql_pconnect($host NULL$user NULL$passwd NULL$flags NULL)
        {
            return 
    mysql_connect($host$user$passwdfalse$flags);
        }

        function 
    mysql_ping($link NULL)
        {
            
    $link mysql_resolve_link($link);
            return 
    mysqli_ping($link);
        }

        function 
    mysql_real_escape_string($string$link NULL)
        {
            
    $link mysql_resolve_link($link);
            return 
    mysqli_real_escape_string($link$string);
        }

        function 
    mysql_result($result$row$field NULL)
        {
            return 
    mysql_not_implemented("mysql_result()");
        }

        function 
    mysql_stat($link NULL)
        {
            
    $link mysql_resolve_link($link);
            return 
    mysqli_stat($link);
        }

        function 
    mysql_tablename($result$offset)
        {
            return 
    mysql_not_implemented("mysql_tablename()");
        }

        function 
    mysql_thread_id($link NULL)
        {
            
    $link mysql_resolve_link($link);
            return 
    mysqli_thread_id($link);
        }

        function 
    mysql_unbuffered_query($query$link NULL$result_mode NULL)
        {
            return 
    mysql_not_implemented("mysql_unbuffered_query()");
        }

        function 
    mysql_set_charset($link$charakter)
        {
            
    $link mysql_resolve_link($link);
            return 
    mysql_set_charset($charakter,$link);
        }


    gruss sys;-)

  7. #7
    Elefantenversteher Avatar von florian0285
    Registriert seit
    Jun 2016
    Beiträge
    1.054
    Danke [emoji51]
    Matthäus 7:3 Was siehst du aber den Splitter in deines Bruders Auge, und wirst nicht gewahr des Balkens in deinem Auge?

Ähnliche Themen

  1. Problem mit MySQL - debian-start fehlt
    Von aalex2001 im Forum Linux als Server
    Antworten: 3
    Letzter Beitrag: 06.04.07, 12:40
  2. Problem mit MySQL unter Debian
    Von quest im Forum Linux als Server
    Antworten: 1
    Letzter Beitrag: 16.05.06, 17:42
  3. Squid unter Debian hat ein Problem mit einer einzigen(!) Seite
    Von TheDodger im Forum Linux als Server
    Antworten: 11
    Letzter Beitrag: 18.05.04, 14:25
  4. Problem mit Connector/J (Tomcat & MySQL auf Debian)
    Von iGEL im Forum Linux als Server
    Antworten: 1
    Letzter Beitrag: 20.03.03, 15:34
  5. 5 GB in einer MySQL-Tabelle
    Von StoneQuader im Forum Linux als Server
    Antworten: 1
    Letzter Beitrag: 12.07.02, 19:49

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •