SayIT

Software => Programare => Topic started by: kquizak on 23 December 2007, 15:27

Title: php: nu imi dau seama care-i baiu
Post by: kquizak on 23 December 2007, 15:27
codul care cheama: a.php

$util = new util("localhost","ne***","******","**n");
.....
$conexiune = $util->conectare_db();
$recordset = mysql_query($query,$conexiune) or die("eroare q");
$util->deconect_db();


iar clasa e asa:

class util {
  var $db_addres;
  var $db_user;
  var $db_password;
  var $db_name;
  var $conexiune;

  //constructor
  function util($dbaddress,$dbuser,$dbpassword,$dbname){
    $this->db_addres = $dbaddress;
    $this->db_name = $dbname;
    $this->db_password = $dbpassword;
    $this->db_user = $dbuser;
  }
  // functii utilitare
  function conectare_db(){
    $AdresaBazaDate = $this->$db_addres;
    $UtilizatorBazaDate = $this->$db_user;
    $ParolaBazaDate = $this->$db_password; // dev
    $NumeBazaDate = $this->$db_name; //dev
    $conexiune = mysql_connect($AdresaBazaDate,$UtilizatorBazaDate,$ParolaBazaDate,$NumeBazaDate) or die ("Nu ma pot conecta la db");
    mysql_select_db($NumeBazaDate,$conexiune) or die("Nu gasesc baza de date!");
    return $conexiune;
  }
  function deconect_db(){
    mysql_close($conexiune);
  }
.....

problema e ca daca folosesc orice alta methoda din clasa care nu are deaface cu vreo conectare a.php este parsat tot, daca folosesc metoda de conectare... pa ... pana acolo parseaza... (inainte imi dadea 'Nu ma pot conecta la db') dar in forma care e acum nimic... pot sa pun eu cate echo vreau ca tot degeaba...Am verificat variabilele constructor si se asigneaza corect...echo $util->$db_addres..
Nu vad care-i baiu... Praetor, anyone.... help...
Title: Re: php: nu imi dau seama care-i baiu
Post by: Praetor on 23 December 2007, 18:03
NIci eu nu vad probleme dar incearca sa folosesti direct variabilele obiectului decat sa le pui in variabile locale ($this->db_addres, $this->db_user etc).

SI vezi daca e incarcata extensia de mysql. Daca inainte mergea cat de cat si acum nu, poate s-au schimbat ceva setari de php pe server.