Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di pgm
    Registrato dal
    Apr 2002
    Messaggi
    1,281

    [php] zend compatibility e PDO

    ciao a tutti

    sto riscontrando un problema in uno script che usa le pdo per interrogare il db e la direttiva zend.ze1_compatibility_mode di php.ini.

    infatti dato questo semplice codice
    Codice PHP:
    $res$this->db->prepare("SELECT * FROM users WHERE user = :user AND pwd = :pwd AND is_blocked = :blocked;");
    $res->bindParam(':user'$userPDO::PARAM_STR32);
    $res->bindParam(':pwd'md5($pwd), PDO::PARAM_STR32);
    $res->bindParam(':blocked'$blockedPDO::PARAM_INT1);
    $res->execute();
    $row $res->fetch(PDO::FETCH_OBJ);
    echo 
    $row->user
    non ho nessun risultato utile, nel senso che l'utente non mi viene stampato. Ho provato con var_dump su $row->user e mi da NULL.

    Provando invece con $this->db->query(ecc ecc ecc) tutto funziona a meraviglia.

    Poi ho pensato alla direttiva per la compatibilità con php4; l'ho settata ad off e magicamente tutto è funzionato come mi aspettavo.

    Ma non capisco il perchè e visto che sul quella macchina girano ancora applicazioni "vecchie" ho necessità di mantenere ad on la compatibilità.

    Aveve mai riscontrato questo problema?

  2. #2
    Ossequi pgm,
    sospetto tu abbia cocciato con un bug noto nel PHP:

    http://bugs.php.net/bug.php?id=35784

    Fossi nei tuoi panni proverei ad aggiornare il PHP (se possibile).

  3. #3
    Utente di HTML.it L'avatar di pgm
    Registrato dal
    Apr 2002
    Messaggi
    1,281
    ciao ntd.

    grazie per la risposta.

    non è tanto aggiornare il php, infatti la nuova applicazione gira in php5 e mysql5, ma la vecchia. per un periodo devo far usare entrambe.

    non c'è risoluzione quindi?

  4. #4
    Non dico di aggiornare la tua applicazione, dico di cambiare proprio il PHP. Dovresti fare un php_info() per vedere che versione hai: stando alla descrizione del bug sembra che il problema sia riscontrato fino al PHP 5.1 e quindi dovresti aggiornare al PHP 5.2 o superiore.

    Se questo è il caso devi contattare chi ti fa l'hosting per vedere se è possibile aggiornare il PHP. Se non può/vuole farlo, non c'è molto che tu possa fare... a parte mandare l'hoster a !

  5. #5
    Utente di HTML.it L'avatar di pgm
    Registrato dal
    Apr 2002
    Messaggi
    1,281
    è la 5.2.5

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.