Hola, Por si te sirve, yo tengo un proyecto WB19 con PHP i MySQL i para no tener que ir cambiando la conexión según en que entorno lo ejecuto, he hecho lo siguiente i me funciona de maravilla. 1. en el análisis no tengo ninguna conexión definida 2. en el código del proyecto, he puesto al inicio
// -------------------- connecta amb la DB --------------------- IF NOT ConnectarDB() THEN Info("No s'ha pogut obrir la BD","No se puede abrir la BD") Info(ErreurInfo()) PageAffiche("ErrorConnexio") FinProgramme() END
3. la función ConnectarDB() es
PROCEDURE ConnectarDB() pReturn est un booléen sCadena is string="" wConnexio is string CnXpress est une Connexion wConnexio = "connexio.txt" //wConnexio = fDataDir() + "\" + "connexio.txt" sCadena=fLoadText(wConnexio) IF sCadena<>"" THEN // Parameters of the connection HCloseConnection(CnXpress) CnXpress..Server=ExtractString(sCadena,1,";") CnXpress..User=ExtractString(sCadena,2,";") CnXpress..Password=ExtractString(sCadena,3,";") CnXpress..Database=ExtractString(sCadena,4,";") CnXpress..Provider=hNativeAccessMySQL CnXpress..Access=hOReadWrite // Opening the connection IF HOpenConnection(CnXpress) THEN IF NOT HChangeConnection("*",CnXpress) THEN pReturn=Faux RENVOYER Faux //Error("No es pot obrir la base de dades",CnXpress..Database) END HChangeConnexion("*",CnXpress) ELSE pReturn=Faux RENVOYER Faux //Error("El fitxer de configuració està buit o no trobat") END ELSE pReturn=Faux RENVOYER Faux END //HChangeConnexion("*",CnXpress)
RENVOYER True
4. el fichero "connexio.txt" para conectar con la DB tiene el siguiente contenido
server;usuario;password;DBname
i lo tengo en el directorio raiz de mi aplicación.
Con esto, lo único que tengo que hacer es adaptar este fichero en cada uno de los entornos donde ejecuto mi aplicación sin tener que tocar para nada el código ni el análisis.
Espero que te sirva |