Blogia
.:jmartin:. Weblog sobre (PHP,Oracle,Mysql,Java)

php

Més Flash i PHP!!

Seguint amb la noticia anterior, per si algú l’interessa, hi ha un pont d’unió entre php i flash mx, sense necessitat d’utilitzar el servidor coldfusion de macromedia, aquest esta programat amb php i el podeu trobar a http://www.amfphp.org/. Jo no en tinc gens d’idea de flash, però amb flash MX i php i una base de dades crec que es podrien fer grans coses.

Frameworks per a PHP

Aquest mati s’acaba de publicar Horde 2.2.6, aquest es una dels pocs frameworks que hi ha per a php, a diferencia d’altres llenguatges com java. Horde facilita algunes feines que es repetiexen a totes les aplicacions de php, compressió de la sortida, detecció de navegador, seguiment de connexió , etc..

No he utilitzat mai horde però si un altre framework que per mi es un dels més evolucionat anomenat mojavi. Aquest permet entre altres coses fer un disseny modular , filtres per accions, sistema d’autentificació biblioteca de validació, les típiques coses que et fen perdre el temps.

Algú n’ha utilitzat alguna altre? Experiències?

S’acaba de publicar la nova versió de upgradephp

Upgradephp es una llibreria que intenta implementa totes les novetats de les versions mes avançades del llenguatge, per així poder-les fer servir amb versions anteriors de l’intèrpret. Això pot ser molt interessant per a la gent que vol posar en practica les noves funcionalitats de PHP a servidors compartits amb versions inferiors o preparar el seu codi per a un futur canvi de versió.


Enllaç: updatephp

PHP released!

Han sortit dues noves versions de php, php 4.3.9 i php 5.0.2 tan l’una com l’altre arreglen alguns bugs del programa i problemes de seguretat. Estan disponibles a php.net des de el 22 i 23 de setembre respectivament.

Asp to php automàtic!!

Asp to php automàtic!! Asptophp es una aplicació que converteix aplicacions asp a php tal com diu el seu nom, pareix que funciona prou bé, però suposo que sempre es tindrà que revisar a fons el codi. La veritat que no ho he pogut provar, ja que no tinc res de codi asp. Si algú te aquesta desgracia :-) i ho prova ja dirà com funciona. A, per acabar m’ha sorprès que existeix una distribució de binaris per pleaystation 2 (en que estan pensant??).

Revelació d’informació sensible i pujada arbitraria en PHP

Aquí vos deixo una noticia que ha sortit publicada avui a la web de seguretat de hispasec. L’he deixat en l’idioma original del text:


Se han descubierto dos vulnerabilidades en PHP (versiones 4 y 5) que
pueden ser explotadas por usuarios maliciosos para revelar información
sensible o, potencialmente, comprometer un sistema afectado.

La primera de las vulnerabilidades afecta a las versiones de la 4.1.2
a la 5.0.1 y se debe a un problema de tamaños de variables al tratar
con las variables GET, POST y COOKIE dentro del archivo 'php_variables.c'.
Esto puede ser explotado mediante el envío de un nombre de parámetro
especialmente creado a tal efecto con un corchete abierto para ver
memoria del heap cuando ciertas funciones se usan dentro de un script.
Un ejemplo sería el siguiente: abc[a][

El segundo problema, confirmado en la versión 5.0.1 y anteriores,
se debe a un error con el que se puede sobreescribir las matrices
asociadas a $_FILES utilizando una cabecera Content-Disposition
especialmente formada a tal efecto. En combinación con escaladas
de directorios, esta vulnerabilidad podría ser explotada para subir
archivos arbitrarios y en última instancia para ejecutar código
arbitrario. Un ejemplo sería el siguiente:
Content-Disposition: form-data; name="userfile";
filename="../../../test.php"

La explotación con éxito requiere un script PHP que utilice el array
$_FILES para, por ejemplo, mover archivos descargados.

Las vulnerabilidades han sido corregidas, y se puede actualizar vía
CVS.


http://www.hispasec.com/unaaldia/2158

Nou sistema de calcular el pagerank de google

Suposo que com algú ja sabrà el dia 9 de setembre va aparèixer una nova versió del la google toolbar. I aquesta ha canviat els sistema de calcular el cheksum de les pagines web ja que l’anterior s’havia desxifrat i fet públic. Be dons aquí vos deixo el nou codi per desxifra el checksum amb el nou sistema, ja que ja s’ha tornat a desxifrat i l’han fet públic.

Aquí teniu el codi amb php.

page_rank.php

He estat fent proves amb gmail-lite

M’ha cridat l’atenció la llibreria gmail-lite i he estat fent proves.
Aquí vos ensenyo una mica com ha anat. Es bastant fàcil.

La instal·lació:

Jo treballo sobre un Windows2000 Server (coses de la feina)però suposo que amb Linux deu ser bastant similar.

Primer descarreguem la llibreria gmail-lite .
Desprès descarreguem el Win32OpenSSL si no el tenim, i l’instal·lem.

Nota: això ens permetrà utilitzar php_curl.dll per connexions https, sinó al carregar l’extensió et donarà un error per falta de llibreries dll.

El següent pas es parar el servei de l’apache, anar al php.ini i descomentar l’extensió php_curl.dll

Nota: php_curl.dll es l’extensió per a PHP de libcurl que es una eina de transferència de fitxers mitjançant la sintaxis URL, que suporta aquests protocols entre d’altres: FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE i LDAP.
Libcurl esta disponible per a PHP des de la versió 4.0.2 (ja fa molt d’això)

Per finalitzar iniciem l’apache i comprovem que no hi ha errors.
Ho pots comprovar mirant el phpinfo, però si no dona cap error en pantalla no crec que tingues més problemes.

phpinfo.php

phpinfo(INFO_MODULES);


Desenvolupament:
Una vegada ja tens tots els complements ens posem al codi!!
La prova que he fet únicament mira els correus de l’inbox i diu si estan llegits o no i quants n’hi ha en total, però ja es veu una mica el funcionament.
El codi es aquest:

gmail.php


Crec que es fàcil d’entendre l’API de gmail-lite, però si teniu algun dubte el deixeu als comentaris.
La documentació completa la podeu al mateix paquet.

Update: Estaria be tenir una pagina de descarrega que agafes els fitxers del gmail. Si tinc una mica de temps igual ho miro de fer.

Nou PHP Nuke 7.5

Nou PHP Nuke 7.5 Nova versió en algunes millores i un preu de 10 dolars. Però comencen rumors que alguns hostings compartits l’estan prohibint pel seu mal us de recursos. Així que començaria a mirar seriosament l’opció de drupal(un content management open-source) que pareix anar per millor camí.

PHPnuke

Drupal

PHP i Parrot, el futur?

PHP i Parrot, el futur? Ja fa bastant de temps vaig començar a sentir parlar sobre parrot i php, parrot es una maquina virtual que s’utilitza ja amb èxit amb Perl6 i serveix per fer bytecodes de llenguatges interpretats. Però des de l’aparició final de PHP5 cada vegada agafa més força l’idea d’utilitzar la MV de parrot per a la pròxima versió (PHP 6) .

Com funciona parrot?

El que fa parrot es crear un bytecode (code precompilat) i executar-lo mitjançant el compilador JIT (just in time) de la maquina virtual. Això fa que puguem parlar de velocitats similars a C en alguns casos.

PHP+Parrot
Implementació interna de parrot
Pagina oficial de Parrot

Que pot aportar?

Pel que pareix ja hi ha 99% de codi implementat (encara utilitza les tipus de dades perl) i les dades del rendiment son bastant sorprenents, unes 10 vegades més ràpid en algorismes que utilitzen intensivament el CPU o temps com aquest:

Temps generant un fractal de Mandelbrot

PHP, 2.4 segons
Parrot without JIT, 0.5 segons
Parrot with JIT (Intel) 0.08 segons

(font)
Be, ara s’ha de veure si Zend i parrot treballaran conjuntament o una substituirà l’altre. Suposo que el rendiment dirà.

Alguns enllaços sobre el tema:

phplens 1
phplens 2

Com ho veieu tots aquest canvis?

Php i Pl/sql pareixen bons amics

Fa un parell de dies a phplens vaig llegir un article comparatiu sobre mysql i Oracle treballen des de PHP, desprès de les comparacions que ja eh llegit en altres llocs de temps en fer un select, 100000 inserts i la típica exposició de qualitats de cada sistema de base de dades vaig veure una cosa interessant.

Converting the PHP code to PL/SQL code contributed to a 30% increase in insert performance for Oracle and a 10 times improvement in select speed.


Pel que vaig entendre amb el meu angles d’indi s’hi utilitzes PL/SQL des de PHP pots millorar el rendiment d’una forma bastant sorprenent.En alguns casos ho he fet però crec que ho faré més sovint per substituir consultes annexada mitjançant el while.