Newsgroup: it.comp.www.php
Titolo: Forse un bug di PHP-PDO su Debian etch

Salve,
scusate il crosspost, potete rispondere indifferentemente su uno dei due
ng.
Vorrei chiedere a chi usa Debian Etch, e ha installato PHP 5 e MySQL, di
provare questo script e di riportare l'output che da`.
Naturalmente dovete cambiare il nome del database, l'utente e la password.
Lo script non fa niente altro che collegarsi al database, quindi non
preoccupatevi. :)
Ho paura di aver beccato un bug abbastanza grosso in PDO, ma non so se e`
una combinazione di librerie o se e` proprio il pacchetto ufficiale di
etch ad avere il bug. Su una sarge coi backports della stessa versione di
PHP funziona correttamente... :/
Chi ha altre distro, lo puo` provare lo stesso e dirmi cosa gli torna?
Grazie mille.
<?php
  class CA extends PDO
  {
    public $a=1;
    public function __construct()
    {
      parent::__construct("mysql:dbname=vostrodb", "utente",
      "password",array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES
      'utf8'",PDO::ATTR_PERSISTENT => true));
    }
  }
  class CB extends PDO
  {
    public $b=2;
    public function __construct()
    {
      parent::__construct("mysql:dbname=vostrodb", "utente",
      "password",array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES
      'utf8'",PDO::ATTR_PERSISTENT => true));
    }
  }
  $a = new CA();
  $b = new CB();
  print_r($a);
  print "\n\n";
  print_r($b);
?>

 
La prova l'ho eseguita via cli e via web.
[root@pc107 html]# cat /etc/redhat-release
CentOS release 4.4 (Final)
Php 5.2.0-10, rebuild in "casa" da rpms di fedora 6
[root@pc107 html]# php -q a.php
CB Object
(
     [b] => 2
)
CB Object
(
     [b] => 2
)
Post su it.comp.www.php
	Francesco

> Ho paura di aver beccato un bug abbastanza grosso in PDO, 
Ciao Alessandro,
non ho provato lo script che suggerisci, però se può esserti d'aiuto, 
ti comunico che, su un mio hosting americano, molto recentemente, mi è 
stato detto che la PDO per MySQL non era ancora stata attivata perché 
avevano riscontrato problemi di instabilità, e quindi avrebbero atteso 
la risoluzione di tali problemi prima di offrire l'estensione PDO per 
MySQL.
--
rob4you

 MySQL.
Nel mio piccolo, ho notato un netto miglioramento del PDO dalla versione 
5.2; la versione php5.1 (presente in rh 4) aveva una serie infinita di 
problemi (basta vedere il changelog del php 5.2), tra cui eccezioni che 
non venivano sollevate, errori nel prepare etc. Adesso questi problemi 
sembrano risolti ma restano lacune impressionanti (la prima che mi viene 
in mente), che ne rendono l'uso difficile:
http://it2.php.net/manual/en/function.PDOStatement-rowCount.php
	Francesco

> 
http://it2.php.net/manual/en/function.PDOStatement-rowCount.php
Ahia! :-)
Mi sa che ci sarà ancora un po' da aspettare prima di poter usare la 
PDO con tranquillità anche in produzione.
--
rob4you

 MySQL.
Azz, e io andavo tranquillo vedendo che l'estensione PECL era praticamente
ferma da quasi un anno ed era stato integrato nel tree principale di PHP.
Beh, adesso segnalo quel bug (grazie Francesco per la conferma che e`
upstream e non solo debian). Per ora non ne ho trovati altri, speriamo
bene...
Bye.

 
Infatti qualche giorno fa volevo aprire un thread sull'argomento, per 
ricevere commenti da chi usa il PDO (poi il tempo è sempre poco e ho 
abbandonato l'idea)
Come ho riportato nel precedente post il PDO su 5.1 dava una serie di 
problemi (la maggior parte dei quali si concludevano con un bel 
segmentation fault!); da 5.2 questo non accade più (almeno sulla mia 
applicazione) ma restano problemi non indifferenti.
L'idea di utilizzare il PDO mi piaceva rispetto ai vari db abstract 
(modello pear, Ado etc) ma siamo sempre lontani...
	Francesco