Grazie per il supporto (anche morale) ... diciamo che sono in m.rda ... :-(
Riassumendo ecco cosa ho fatto:
Il sistema è un windows 2003, dove ho installato apache/mysql/php (non ho usato xamp o similari,ho installato i singoli servizi).
Quindi ho trasferito siti web e db dal mio pc al server. Dopo aver configurato opportunamente php.ini e httpd.conf, ho richiamato le applicazioni.
Le app sono raggiungibili dall'esterno tramite ip pubblico (purtroppo non posso darvi l'ind.)
Ogni app è raggiungibile nel seguente modo:
http://mio_ind/sito1
http://mio_ind/sito2
http://mio_ind/sito3
e così via......
Non vi è un dominio che punta all'ip.
Ogni sito ha autenticazione php session.
Ogni sito è associato a 2 db (le app usano 2 db ,con funzionalità diverse).
esempio:
sito1_db1 e sito1_db2
sito2_db1 e sito2_db2
....
Come dicevo,per comodità ho creato 2 utenti mysql ,uno per db. queste utenze le richiamo dalla mia classe di connessione.
Ho già provato a creare utenti diversi per ogni db e associarli in modo univoco al db, ma il problema persiste.
Ho testato l'applicazione da remoto e in locale sul server: stesso errore.
Ho provato a modificare my.cnf aumentando a 1000 le connection,ma il problema persiste.
Ho provato a sostituire localhost con 127.0.0.1. Niente.
ecco la classe
codice:
class db1_database{
// parametri per la connessione al database
private $host = "localhost";
private $username = "user1";
private $password = "mia_passw";
private $database = "DB1";
public function get_host(){
return $this->host;
}
public function get_username(){
return $this->username;
}
public function get_password(){
return $this->password;
}
public function get_database(){
return $this->database;
}
public function connect_db(){
$temp= new mysqli($this->host,$this->username,$this->password, $this->database);
if (mysqli_connect_errno()) {
echo "Connection to Database failed. Conflict with other Mysql session.
Please contact your system administrator.";
//printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
return $temp;
}
// funzione per la chiusura della connessione (da richiamare alla fine di ogni procedura)
public function disconnect_db($mysqli){
//mysql_close(); //chiude la connessione al database
$mysqli->close() or die ("Check your DB connection!");
}
//controlla se esiste la connessione al database
public function check_connection($mysqli){
if ($mysqli->connect_errno) {
// notifica in caso di errore
//echo "Errore in connessione al DBMS: ".mysqli_connect_error();
return true;
}
else {
// notifica in caso di connessione attiva
//echo "Connessione avvenuta con successo";
return false;
}
}
//esegue più query contemporaneamente
public function exec_multi_query($mysql_obj,$query){
return $mysql_obj->multi_query($query);
}
}
In questo momento sto creando una virtual machine con windows 2008....
vediamo....