P4A 3.8.0 is out!

It took me a couple of month to work on this release, we’ve a pretty long changelog you’ve to be sure to check out because we’ve a lot of important changes that may impact your upgrades.

One of the most important things is that now P4A supports MS SQL, it was quite easy but surely we need a stronger user base to test out every possible scenario. The next big thing is that MySQL connections are now UTF-8 safe, it could hurt your existing applications so please check out the notes in the changelog before upgrating.

– !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
– !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
– !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
– P4A_DB’s connection charset is now set to UTF 8
This could lead to possible data corruption, if you’re upgrading from a
previous release and you’re using MySQL or PostgreSQL (Oracle and SQLite
should not be involved in this change) you’ve to be sure to convert the DB
charset to UTF-8 before editing data in your P4A applications.

ALWAYS DO BACKUPS BEFORE ANYTHING ELSE!!!

For MySQL we used this procedure to migrate our DBs:
mysqldump –default-character-set=latin1 DBNAME > dump.sql
open dump.sql and replace this line
/*!40101 SET NAMES latin1 */;
with
/*!40101 SET NAMES utf8 */;
mysql NEWDBNAME < dump.sql - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - Support For MS SQL was added, check out the README file - AJAX STACK REVERTED TO XML (instead of JSON) due to the bugs with jQuery::form - README file was updated - CKEditor was updated to 3.4.1 - a new strategy to avoid CKEDITOR loading problems was implemented - P4A_Data_Fields::getSchemaTableField now correctly handles calculated fields - a bug with P4A_I18N::format and time fields was fixed - P4A::__construct() now has a "cache" param, simply pass a Zend_Cache object to override all Zend_Cache configurations inside P4A - P4A::getCache() method was added - P4A_I18N now uses P4A::getCache() to pass an overridden Zend_Cache object to Zend_Locale_Data - a bug with "onreturnpress" and IE was fixed - a bug with multicple CKEditor instances (loaded via AJAX call) and IE was solved - CKEditor's forcePasteAsPlainText option was enabled again - jQuery::form was updated to 2.49 - jQuery was updated to 1.4.3 - file upload percentage and speed is shown while uploading (if PECL uploadprogress is available, APC not implemented beacuse it does not work with PHP CGI) - a bug with autocomplete and HTML tags (in the value) was fixed - a bug with autocomplete loading was fixed (thank to Lorenzo Valori) - a bug with CKEDITOR and AJAX was fixed

Download P4A 3.8.0

16 thoughts on “P4A 3.8.0 is out!

  1. marco

    complimenti! sto valutando p4a per un serio utilizzo aziendale, e il supporto mssql è ovviamente una ottima cosa…:)

    ti chiedo spassionatamente: come valuti la possibilità di supportare sorgenti odbc?
    1) impossibile, non potrebbe funzionare con p4a
    2) difficile, ma potrebbe essere fatto
    3) fattibile, anzi è sulla roadmap
    ?
    perchè ci stiamo orientando verso l’uso di sistemi tipo teiid (jboss) che, a parte ovviamente jdbc, da poco offre anceh una interfaccia odbc (emula odbc su un server postgresql). in altrenativa ho anche pensato di usare p4a in Quercus o simili…

    mi interesserebbe sentire che ne pensi

    Ciao, e grazie x p4a!
    Marco

  2. Fabrizio Balliano Post author

    @marco: dato il proliferare dei driver php per la connessione ai db (solo mysql ne ha 3) abbiamo scelto di usare PDO come base e basta, di conseguenza cerchiamo di supportare tutti i db supportati da Zend_Db_Adapter_Pdo, in questo caso gli odbc non ci sono però mi chiedo perché tu voglia usare una connessione odbc piuttosto che la connessione diretta al db con il driver pdo nativo, che tipi di db vorresti usare che non sono in elenco?

  3. marco

    @fabrizio balliano: beh, io _devo_ “incrociare” (leggi join) dati provenienti da sistemi diversi (access, mysql, mssql, oracle, postgres…, da alcuni proprio non posso slegarmi: closed source) e vorrei poter dare “in pasto” ai widget p4a una “source” che integra diversi sistemi db.

    in questo senso, teiid (è una specie di gateway che crea database virtuali a partire da sorgenti multiple, e si gestisce gli update in autonomia…) mi consentirebbe di offrire un’unica “origine dati” (anche se virtuale), ma purtroppo (anche se capisco che già fa davvero molto), ha solo interfacce jdbc, da poco odbc-postgres (oppure tramite web services… che preferirei evitare, per ora)

    grosso modo, è una sorta di ciò che puoi fare (con gli ovvi limiti del sistema) tramite gli mdb di access (colleghi tutto ciò che ti pare via odbc, e poi nelle query puoi fare normali join senza problemi tra source diverse), e sto cercando di capire come posso slegarmi da una situazione del genere: semplificherebbe notevolmente lo sviluppo e la manutenzione… di una applicazione che di questo ha bisogno, oltre che le fasi di transizione

    infatti quando ho scoperto p4a, ho spalancato gli occhi… molto molto interessante, ma vorrei quadrare anche la questione “sorgenti dati”: non mi fraintendere, capisco che p4a ha molto senso anche con il workflow che supporti ma… voglio solo capire il meglio che posso fare.

    ma forse mi sto dilungando, meglio il forum?

  4. DJIBA

    Bonjour Mr BALLIANO
    Je suis une jeune étudiant en Master et je me suis orient ver le développement et la je suis sur un projet et je travail avec P4A et que je peut avoir de support ou un site web de support pour P4A .
    Merci
    DJIBA Aba

  5. Bartosz Sapijaszko

    Hello, do U have any idea for write and handle ‘browser side’ time events, for example: I have an external cron script for loading data into table and want to ‘auto refresh’ chart widget (and only this widget) that displays data from the table. How to make it with P4A?

  6. Axelle

    Hi everyone having problem to figure out this problem.
    i was developing an admin consol with p4a on my linux home server wich i can access from outside my application works fine.but when i send to the original server in our datacenter. I got this error message.
    I need some help guys.

    Fatal error: Class ‘newlife’ not found in /home/content/86/11556586/html/savelife/p4a/p4a/objects/p4a.php on line 303.
    by the way i am french speaker excuse me for words mistake if any
    Any help will be appreciate.

Leave a Reply

Your email address will not be published. Required fields are marked *