Foros del Web » Programando para Internet » PHP »

include o require

Estas en el tema de include o require en el foro de PHP en Foros del Web. Estoy realizando la programacion de un nuevo sistema de Portal que me han pedido que haga. Quiero hacer un fichero de configuracion para que me ...
  #1 (permalink)  
Antiguo 08/10/2004, 07:19
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 21 años, 4 meses
Puntos: 1
include o require

Estoy realizando la programacion de un nuevo sistema de Portal que me han pedido que haga. Quiero hacer un fichero de configuracion para que me sea mas facil su instalacion en cualquier tipo de hosting. La cosa es que tengo la siguiente duda. Tengo el fichero que llame configuracion.inc.php cuyo codigo es este:
Código PHP:
 $servidorbdatos "http://miservidorbdatos";
 
$bdatos "mibdatos";
 
$usuariobdatos "usuariobdatos";
 
$passbdatos "contrasenabdatos";
 
// y otras variables de configuracion que van aqui abajo 
tengo otro fichero que llamo funciones.php cuyo codigo es este:
Código PHP:
 require_once("configuracion.inc.php");
 function 
ConectaServidorBDatos(){
  
$coneccion mysql_pconnect($servidorbdatos,$usuariobdatos,$passbdatos) or die(mysql_error());
  
mysql_select_bd($bdatos,$coneccion) or die(mysql_error());
 } 
lo que quiero saber es si la funcion ConectaServidorBDatos puede usar las variables esas que estan dentro de ella y estan definidas en el fichero configuracion.inc.php o las mismas hay que declararlas goblales. De no ser asi cual seria el procedimiento correcto a seguir.
Salu2
__________________
Ing. Reynier Pérez Mira
  #2 (permalink)  
Antiguo 08/10/2004, 08:00
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Bueno .. existe un término que se denomina "Ambito de las variables" (o en ingles "scope") .. En una función el ambito de las variables se restringe a las que tienes en esa función. La manera de usar una variable que está fuera de esa función es pasandola como parámetro (o referencia) a la función .. o bien declarandola como global. Ejemplo:

Código PHP:
$a="valor";
function 
nose(){
global 
$a;
echo 
$a

Por lo demás .. recuerda que un include() .. requiere() o afin .. lo que hace es incluir tu código en el punto que lo llamas y todo ello se ejecuta como una sóla entidad (código/script).

Un saludo,

PD: ¿que tiene que ver tu pregunta con Include o Require?
  #3 (permalink)  
Antiguo 08/10/2004, 08:10
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 21 años, 4 meses
Puntos: 1
Y entonces

Disculpa por el titulo de la pregunta, pero no sabia como hacerlo. Ya entiendo como funciona esto. Que seria mejor entonces esto:
Código PHP:
require_once("configuracion.inc.php"); 
function 
ConectaServidorBDatos($servidorbdatos,$usuariobdatos,$pas  sbdatos,$bdatos){ 
  
$coneccion mysql_pconnect($servidorbdatos,$usuariobdatos,$pas  sbdatos) or die(mysql_error()); 
  
mysql_select_bd($bdatos,$coneccion) or die(mysql_error()); 

o esto:
Código PHP:
function ConectaServidorBDatos(){ 
  require_once(
"configuracion.inc.php"); 
  
$coneccion mysql_pconnect($servidorbdatos,$usuariobdatos,$pas  sbdatos) or die(mysql_error()); 
  
mysql_select_bd($bdatos,$coneccion) or die(mysql_error()); 

porque si lo hiciese de la primera forma me daria problemas a la hora de llamar a la funcion porque como quiera que fuese tendria que pasarle los parametros. Existe alguna otra forma de realizar esto mas estandar o mas facil para cuando deba cambiar codigo no cambiar mucho.
Salu2
__________________
Ing. Reynier Pérez Mira
  #4 (permalink)  
Antiguo 08/10/2004, 08:20
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Yo no usaría nunca un "include()" bajo una función (dentro de esta) .. pero si que declararía como global (como el ejemplo que puse con ese $a) las variables que realmente son comunes o bien las pasas como parámetro como más te guste.

Un saludo,
  #5 (permalink)  
Antiguo 08/10/2004, 10:13
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 21 años, 4 meses
Puntos: 1
Entonces ...

Puedo hacer el include del fichero configuracion.inc.php y declarar las variables que necesita la funcion como globales dentro de ella?
Salu2 ;)
__________________
Ing. Reynier Pérez Mira
  #6 (permalink)  
Antiguo 08/10/2004, 10:42
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Si, .. así es.

Código PHP:
<?
include("tus_variables.inc.php");
funtion nosecuantos($algunos_parametros){
   global 
$alguna_Variable_de_tus_variables_inc_php;
}
?>
ó incluso:

tus_funciones.inc.php
Código PHP:
<?
funtion nosecuantos
($algunos_parametros){
   global 
$alguna_Variable_de_tus_variables_inc_php;
}
?>

uso.php
Código PHP:
<?
include("tus_variables.inc.php");
include(
"tus_funciones.inc.php");

nosecuantos("blabla");
?>

Un saludo,
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:04.