Hola,
Una pregunta, ¿existe alguna razon para que tengas que poner en los parametros $textInfo=$langError2 al llamar a la funcion? Es que no veo que uses $textInfo en ningun otro sitio que en los parametros.
Tu llamda a la funcion podria ser simplemente:
Código PHP:
FUNC_Error(2,$langError2,$sql_host,$sql_usuario,$sql_pass,$sql_db,$sql_tabla_sucesos);
Luego, en esa funcion no veo que se use $sql_host,$sql_usuario,$sql_pass,$sql_db. Al menos no en el codigo que muestras.
Y en el nombre de la tabla siempre va a ser el mismo a nivel de aplicacion, o por lo menos en la mayor parte de las llamadas. Podrias usar un valor por defecto para ese parametro. Simplemente haces:
Código PHP:
function FUNC_Error($nErr,$textInfo,$sql_host,$sql_usuario,$sql_pass,$sql_db,$sql_tabla_sucesos="tabla"){//
En lugar de tabla pones el nombre de la tabla que usas. Y asi podras llamarla de esta forma:
Código PHP:
FUNC_Error(2,$langError2,$sql_host,$sql_usuario,$sql_pass,$sql_db);
cuando quieras guardarlo en esa tabla.
Aunque tambien deberias replantearte un rediseño de esas funciones. Porque el script principal no deberia ser el que debe decirle a los datos de conexion. Si son fijos para la aplicacion, los deberias poner dentro de la funcion con variables con valor fijo. Asi el script solo tiene que decirle a la funcion "graba este error", pasandole solo los 2 primeros parametros.
Tambien podrias mirar a dar el siguiente paso, usar clases. Con las clases puedes mantener el estado de tu logger. Y ese estado servira para almacenar los datos de conexion.
Suerte.