Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Nadal problem z pdo
Forum PHP.pl > Forum > PHP
dzesi
Witam myślałem ze pdo nie będzie mi potrzebne , ale jakoś niedługo to standard więc trzeba juz tworzyć za pomocą tej biblioteki kiedyś sie uczyłem ale zaprzestałem .Czytałem w manualu o zasiegu zmiennych ale nadal jest problem dajmy np taki przykład
  1. <?php
  2.  
  3. /**
  4.  
  5.  * @copyright 2008
  6.  * @version v-1.0
  7.  */
  8. // include('db_connection.php');
  9. class xxx
  10. {
  11.  
  12.  /** Zmienne publiczne */
  13. public $name;
  14. public $massage;
  15. public $pdo;
  16. public $db;
  17. public $query;
  18. public $dsn;
  19.  // database and host 
  20. $db='mysql:dbname=cdcol;host=localhost';
  21.  //user
  22. $user = 'root';
  23.  //password
  24. $password = '';
  25.  
  26.  // Connecting database 
  27.  public function connect()
  28. {
  29.  
  30.  
  31. try {
  32. $pdo = new PDO($db, $user, $password);
  33. echo "Połączenie z baza nawiązane ";
  34. } catch (PDOException $e) {
  35. echo 'Połączenie zerwane '. $e->getMessage();
  36. }
  37.  
  38. }
  39.  
  40.  
  41.  public function yyy()
  42.  {
  43.  
  44. // zapytanie sql 
  45. $sqluser="SELECT * FROM `CDS`";
  46. // wysyłanie zapytania sql
  47.  $this->query=$this->pdo->query($sqluser);
  48.  echo $query;
  49. }
  50.  
  51.  }
  52.  $query = new xxx();
  53.  $query->connect();
  54.  $query->yyy();
  55.  
  56.  
  57. ?>

Czy ktoś może mi pokazać na przykładzie jak w końcu pisać popranie skrypty przy pomocy pdo żeby nie było niespodzianek np ze w danej funkcji nie ma obiektu który połączy sie z baza Bo ciągle pdo sprawia mi jakieś niespodzianki sad.gif Tutoriale czytałem
masterix
  1. <?php
  2. $this->pdo = new PDO( .. . );
  3. ?>
tak powinno być w metodzie connect(); W tej chwili tworzysz tam lokalną zmienną tylko.
bim2
zreszta to:
  1. <?php
  2. // database and host 
  3. $db='mysql:dbname=cdcol;host=localhost';
  4.  //user
  5. $user = 'root';
  6.  //password
  7. $password = ''
  8. ?>

powinno zawierać przed sobą private czyli:

  1. <?php
  2. // database and host 
  3. private $db='mysql:dbname=cdcol;host=localhost';
  4.  //user
  5. private $user = 'root';
  6.  //password
  7.  private $password = ''
  8. ?>

i później w construct
  1. <?php
  2. $this->pdo = new PDO($this->db, $this->user, $this->password);
  3. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.