Problema con inclusion de archivos y clases

Iniciado por 4rkn63l, 26 Junio 2011, 05:03 AM

0 Miembros y 1 Visitante están viendo este tema.

4rkn63l

Buenas foros, veran segun veo no tengo ningun error sintactico en estos scripts ya que se ejecuta sin mostrarme ningun tipo de error, sin embargo a pesar de ello al parecer las variables definidas en el archivo que estoy incluyendo no se recocen dentro de la clase, ya que la conexión no se lleva a cabo....lo explicare mejor con los archivos.

Código (php) [Seleccionar]

//connection_data.php
<?php
$host
="localhost";
$user="root";
$pass="mysql";
?>



Código (php) [Seleccionar]

<?php
 
require_once('connection_data.php');
echo 
$host.$user.$pass// aca si se muestran 
class connection
{

private $link;

public function connect()
{
echo $host.$user.$pass// aca no se muestran, no se reconocen
$this->link=mysql_connect($host,$user,$pass);
if($this->link==false)
die('Error conectando al servidor '.mysql_error());
return $this->link;
}
public function select_db($db)
{
if(mysql_select_db($db,$this->link)==false)
{
mysql_close($this->link);
die('Error seleccionando la base de datos '.mysql_error());
}
}
}
?>



Código (php) [Seleccionar]

<?php
require_once(
'connection_class.php');
$con=new connection();
$con->connect();
$con->select_db();
?>



Cuando llega a la parte de ejecutar $con->select_db() muestra el error que he definido dentro de ese metodo en caso de que falle, lo raro es que solo aca hay error y no cuando intenta conectar, sin embargo he comprobado que el error si esta en que no se reconocen las variables del archivo incluido ya que si sustituyo directamente los valores por los parametros conecta perfectamente.



















Nakp

pon el include de tu clase dentro del metodo connect()
Ojo por ojo, y el mundo acabará ciego.

4rkn63l

Genial, gracias Nakp lo logre solucionar con tu ayuda.

~ Yoya ~

Yo recomendaría que no agregues el require dentro de un método, lo mejor es declarar las variables como globales.

http://www.desarrolloweb.com/articulos/2457.php
Mi madre me dijo que estoy destinado a ser pobre toda la vida.
Engineering is the art of balancing the benefits and drawbacks of any approach.

4rkn63l

Gracias por tu recomendacion ~ Yoya ~, me parece bien declarar las variables como globales pues asi las tendria accesibles en todos los metodos. Siempre es bueno saber mas formas de hacer las cosas.  :)