Il mio blog personale !

Archivi di Web developing category

Notes to setup a PHP application built with symfony (MVC web framework) on a aruba.it shared linux web server.
  1. Set PHP5 (not php4)
  2. in <app>/.htaccess
    Comment the 1st line (FollowSymLinks not supported)
    #Options +FollowSymLinks +ExecCGI
  3. propel:
    configure tables as  MyISAM, not INNODB (not supported)

Tested with symfony  1.2.5 in aruba linux hosting - 26/05/09

Se avete dei frame o iframes nella pagina e in questi avete dei redirect (tramite direttive meta o javascript reload), su Internet Explorer 7 il back button (indietro) del browser  agisce sull’ultimo frame che ha cambiato URL, cioè non manda indietro la pagina principale, ma solo il frame.

Comportamento molto contro-intuitivo, come del resto c’è da aspettarsi con browser Microsoft. Su Chrome e Firefox nessun problema invece.

Per ovviare alla cosa, fate redirezionare frame e iframe usando sempre javascript, NON con il metodo 

.location = “newpage.html”;

ma con 

window.location.replace(”newpage.html”)

che continua a funzionare su tutti i browser

 

Thanks to google e questo articolo

 posto qua il materiale usato nella tesi, più che altro per non perderlo, e nel caso interessasse a qualcuno.

Presentazione
Implementazione sistema di tipi (dichiarazione e controlli conformità a runtime, di messaggi xml inviati dalle operazioni) per JOLIE (linguaggio e interprete open source per creare orchestratori di servizi web che compongono applicazioni distribuite nella rete).


Oppure  presentazione_ppt2003.ppt

Demo
applicazione distribuita "gestione sessioni esami prof-studenti".
2 servizi database in modalità server, servizio centrale in modalità concorrente che gestisce e smista le sessioni di comunicazione tra più servizi con interfaccia grafica: professori (ognuno embedda più servizi contemporanei di esame per i vari studenti) e studenti. Con sistema di tipi attivo ed esempio di studente con interfaccia errata e errore di non conformità di messaggio.
Demo funzionante.zip (Vedi readme dentro, serve JVM) 3 Mb - Anteprima.jpg

Tesi
tesi.pdf (1 Mb)

Per lanciare uno script nel browser bisogna lanciare il server, poi specificare la url in localhost al giusto path.
Propongo un batch in autoit che fa tutto questo con un click sul menu contestuale del file di script.
Idea:
se un file è presente in c:\www\sito1\file.php  bisogna lanciare http://localhost:8080/sito1/file.php.
quindi basta rimpiazzare i prefissi e sostituire gli slashes per ottenere la url del server localhost.

Ecco un codice funzionante (scarica anche da qui e ammetti di essere pigro ), da personalizzare con i propri path, poi compilare (tasto destro->compile) ed associare ai files di script.
vedi i commenti

$apacheDocumentRoot = "e:\" ; vedi DocumentRoot in httpd.conf
$apacheUrlRoot = "http://localhost:8080/"  ; oppure 127.0.0.1:<porta>
$nomeEseguibileServer = "EasyPHP.exe" ; anche xmapp o Apache.exe
$pathEseguibileServer = "E:\siti\easyphp\EasyPHP.exe"; vedi sopra
$testoTrayTipWindows = "lancio pagina php in locale"
$timeoutSecondiTrayTipWindows = 6
$pathBrowser = "E:\applicazioni\internet\Mozilla Firefox\firefox.exe"
$parametriBrowserAfterUrl = "-url" ; internet explorer non vuole parametri, usare ""

If ($CmdLine[0]==0) Then MsgBox(0,"errore","passare lo script a linea di comando") Exit EndIf
$url = $CmdLine[1]
$url = StringReplace($url, $apacheDocumentRoot, $apacheUrlRoot)
$url = StringReplace($url,"\","/")
TrayTip ( $testoTrayTipWindows , $url, $timeoutSecondiTrayTipWindows , 1 )

If NOT ProcessExists($nomeEseguibileServer) Then
    Run($pathEseguibileServer)
    Sleep(5000)
EndIf

Run(""""&$pathBrowser &"""" & " " &$parametriBrowserAfterUrl &  " " &  """" &$url & """")

Premesso che per fare piccole modifiche veloci a scripts PHP ci sono molti editor personalizzabili, ho recentemente cercato un ambiente di sviluppo IDE per PHP gratuito, da usare per progettare applicazioni + complesse su Windows.
Il primo che ho provato è Netbeans for PHP. Netbeans lo ritengo uno tra i più completi IDE per Java, a molti non piace per la sua pesantezza, e in effetti è pesante, ma è il prezzo da pagare per avere il massimo delle funzionalità. E quando si ha a che fare con progetto complessi, le funzionalità aiutano eccome. Da precisare che ci vuole molto tempo ad avviare l’IDE, poi si lavora con fluidità sui progetti aperti.
Dallo screencast  vedo già che supporta le classiche funzioni Netbeans per Java, refactoring, evidenziazione codice, autocompletamento (anche di metodi importati da classi create dall’utente e incluse in qualsiasi modo), debugging,  templates e abbreviazioni. L’ide installato occupa meno di 90 Mb e non interferisce con altre installazioni di Netbeans.
Interessante è anche l’editor HTML (ovviamente non WYSIWYG) che segnala errori di tag non corrispondenti e ha una piccola palette dei tag,  oltre a fornire - in autocompletamento - l’elenco degli attributi disponibili per il tag corrente con tanto di documentazione onscreen.
Molto interessante anche l’editor Javascript che evidenzia sintassi ed errori del codice, autocompleta funzioni degli oggetti javascript, refactoring di variabili e funzioni ecc..
Stessa cosa per CSS: evidenziazione, autocompletamento selettori e attributi, con tanto di palette per selezionare caratteri, colori, bordi, posizioni.
Utile anche la funzione di download/upload FTP dei files che avviene sui corrispondenti path remoti nel server.
Sono rimasto invece deluso da Eclipse PDT dato che molti optano per eclipse piuttosto che netbeans. I tempi di avvio sono simili a quelli di Netbeans PHP. Non è possibile facilmente creare un progetto da files esistenti. la visibilità su metodi e funzioni incluse non ha funzionato bene in alcuni casi, il refactoring delle funzioni e metodi non ha funzionato. Il resto delle funzionalità (autocompletamento e altro anche per CSS e javascript) mi sono invece sembrate ottime e paragonabili a quelle di Netbeans.
So ora dell’esistenza di Dev PHP, quindi forse lo proverò sperando di poterlo usare come alternativa leggera.
Tempo fa ho provato Zend Studio (5.5 mi pare) e immagino che adesso sia almeno all’altezza dei 2 sopra, peccato che sia pagamento.
Sono curioso dei vostri commenti e di sapere cosa voi usate.

debug con php

Upload FTP

fermiamo IE6 !

Rss2mail

Principi di Ajax


 

Ultimi post

About Me

Blog tecnico/geek di Elvis. Chi sono ? studente & web developer freelance. Vedi la pagina "about me" per altre info.