No me reconoce variables externas dentro de una función.
Publicado por German (10 intervenciones) el 29/12/2016 17:54:37
Gente muy buenos días, primero que nada aclarar que hace mucho no entraba con mi otra cuenta, mi usuario era kapi. Por alguna razón que desconozco no me acepta mis correos así que arranco de cero nuevamente.
Hace ya un tiempo comencé a programar No me reconoce variables externas dentro de una función.Tengo el siguiente problema o duda quizás.
En un archivo que llamo desde todos lados llamado conexion.php tengo el siguiente codigo
$conn = new mysqli($host, $username, $password, $db_name);
$conn->set_charset("utf8");
Ahora, al final he agregado varias funciones que me son de mucha ayuda pero el problema sirgio cuando agregue una como la siguiente
Así la función no devuelve nada y da error, pero si adentro de la función pongo los datos de conecion todo anda sin problemas, según he leido la funcion solo tiene en cuenta las variables internas de la misma y no de las externas.
La pregunta es como puedo hacer que la función acceda a las variables externas? Ya que si un dia tengo que cambiar algo deberia hacerlo en todos los lugares donde hice una conexion y puede ser peligroso desde el punto de vista de digitar mal algo u olvidar cambiar el usuario en alguna parte del archivo conexion.php.
Desde ya muchas gracias!!
Hace ya un tiempo comencé a programar No me reconoce variables externas dentro de una función.Tengo el siguiente problema o duda quizás.
En un archivo que llamo desde todos lados llamado conexion.php tengo el siguiente codigo
1
2
3
4
$host="kapi2454.ipagemysql.com"; // Nombre del servidor
$username="usuario"; // Usuario MySQL
$password="pass"; // Clave Mysql
$db_name="base"; // Database name
$conn = new mysqli($host, $username, $password, $db_name);
$conn->set_charset("utf8");
Ahora, al final he agregado varias funciones que me son de mucha ayuda pero el problema sirgio cuando agregue una como la siguiente
1
2
3
4
5
6
//Obtener nombre con id
function nombre($id){
$sql = $conn -> query("SELECT nombre FROM usuario WHERE id='$id' ");
$row = $sql -> fetch_assoc();
return $row[nombre];
}
Así la función no devuelve nada y da error, pero si adentro de la función pongo los datos de conecion todo anda sin problemas, según he leido la funcion solo tiene en cuenta las variables internas de la misma y no de las externas.
La pregunta es como puedo hacer que la función acceda a las variables externas? Ya que si un dia tengo que cambiar algo deberia hacerlo en todos los lugares donde hice una conexion y puede ser peligroso desde el punto de vista de digitar mal algo u olvidar cambiar el usuario en alguna parte del archivo conexion.php.
Desde ya muchas gracias!!
Valora esta pregunta


0