From gianluca at ihuri.it Thu Feb 1 10:06:49 2007 From: gianluca at ihuri.it (=?ISO-8859-1?Q?Gianluca_Ba=F9?=) Date: Thu Feb 1 10:26:53 2007 Subject: [Php-it] Terminare un include =?iso-8859-1?q?=E8_possibile=3F?= Message-ID: <45C1ADA9.3090802@ihuri.it> Come da oggetto, ? possibile fare una exit() in in file incluso per terminare SOLO la sua inclusione e non l'esecuzione del chiamante? Sarebbe bello..... Saluti Gianluca From michel at ziobudda.net Thu Feb 1 10:11:50 2007 From: michel at ziobudda.net (Davide Michel 'ZioBudda' Morelli) Date: Thu Feb 1 10:32:07 2007 Subject: [Php-it] Terminare un include =?ISO-8859-15?Q?=E8_possibil?= =?ISO-8859-15?Q?e=3F?= In-Reply-To: <45C1ADA9.3090802@ihuri.it> References: <45C1ADA9.3090802@ihuri.it> Message-ID: <45C1AED6.2060406@ziobudda.net> Gianluca Ba? ha scritto: > > Come da oggetto, ? possibile fare una exit() in in file incluso per > terminare SOLO la sua inclusione e non l'esecuzione del chiamante? > Sarebbe bello..... > Handling Returns: It is possible to execute a *return()* statement inside an included file in order to terminate processing in that file and return to the script which called it. Also, it's possible to return values from included files. You can take the value of the include call as you would a normal function. This is not, however, possible when including remote files unless the output of the remote file has valid PHP start and end tags (as with any local file). You can declare the needed variables within those tags and they will be introduced at whichever point the file was included. -- Michel 'ZioBudda' Morelli michel@ziobudda.net Consulenza sistemistica in ambito OpenSource. Sviluppo applicazioni web dinamiche (LAMP+Ajax) Telefono: +39-3939890025 -- Fax: +39-0291390660 http://www.ziobudda.net ICQ: 58351764 http://www.ziobuddalabs.it Skype: zio_budda http://www.ajaxblog.it MSN: michel@ziobuddalabs.it -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.ziobudda.net/pipermail/php-it/attachments/20070201/f52c6376/attachment.htm From gianluca at ihuri.it Thu Feb 1 10:17:03 2007 From: gianluca at ihuri.it (=?ISO-8859-15?Q?Gianluca_Ba=F9?=) Date: Thu Feb 1 10:37:07 2007 Subject: [Php-it] Terminare un include =?ISO-8859-15?Q?=E8_possibil?= =?ISO-8859-15?Q?e=3F?= In-Reply-To: <45C1AED6.2060406@ziobudda.net> References: <45C1ADA9.3090802@ihuri.it> <45C1AED6.2060406@ziobudda.net> Message-ID: <45C1B00F.3010305@ihuri.it> > Gianluca Ba? ha scritto: > >> >> Come da oggetto, ? possibile fare una exit() in in file incluso per >> terminare SOLO la sua inclusione e non l'esecuzione del chiamante? >> Sarebbe bello..... >> > > Handling Returns: It is possible to execute a *return()* > statement inside an > included file in order to terminate processing in that file and return > to the script which called it. Also, it's possible to return values > from included files. You can take the value of the include call as you > would a normal function. This is not, however, possible when including > remote files unless the output of the remote file has valid PHP start > and end tags > > (as with any local file). You can declare the needed variables within > those tags and they will be introduced at whichever point the file was > included. > Fantastico, questo cambier? drasticamente il mio modo di lavorare :) Grazie ma dove l'hai trovato !?!? From cesare at ngi.it Thu Feb 1 10:21:42 2007 From: cesare at ngi.it (Cesare D'Amico) Date: Thu Feb 1 10:41:43 2007 Subject: [Php-it] Terminare un include =?iso-8859-15?q?=E8?= possibile? In-Reply-To: <45C1B00F.3010305@ihuri.it> References: <45C1ADA9.3090802@ihuri.it> <45C1AED6.2060406@ziobudda.net> <45C1B00F.3010305@ihuri.it> Message-ID: <200702011021.42875.cesare@ngi.it> Alle 10:17, gioved? 01 febbraio 2007, Gianluca Ba? ha scritto: > Fantastico, questo cambier? drasticamente il mio modo di lavorare :) Mmm, quali opportunit? ci vedi in questo modo di gestire gli include? -- Cesare D'Amico | Gruppo Volta Area tecnica | Web & Mkt Solutions Tel: 045 21 000 84 | Via Leida 8 - Verona Fax: 045 21 000 85 | http://www.gruppovolta.it From giovanni.cappellini at gmail.com Thu Feb 1 10:26:56 2007 From: giovanni.cappellini at gmail.com (Giovanni Cappellini) Date: Thu Feb 1 10:48:03 2007 Subject: [Php-it] EasyEclipse e plugin FTP In-Reply-To: <002f01c74558$376a4b20$bf00000a@portatile> References: <45C0AB5F.1000906@gmail.com> <002f01c74558$376a4b20$bf00000a@portatile> Message-ID: <45C1B260.8080103@gmail.com> Folli Danilo wrote: > Tu che plugin hai usato per effettuare l'upload ftp? http://www.easyeclipse.org/site/plugins/eclipse-webdav-ftp.html Mi sa che a questo punto lascio perdere EasyEclipse e provo [Normal]Eclipse :) From gianluca at ihuri.it Thu Feb 1 10:32:26 2007 From: gianluca at ihuri.it (=?ISO-8859-15?Q?Gianluca_Ba=F9?=) Date: Thu Feb 1 10:52:29 2007 Subject: [Php-it] Terminare un include =?ISO-8859-15?Q?=E8_possibil?= =?ISO-8859-15?Q?e=3F?= In-Reply-To: <200702011021.42875.cesare@ngi.it> References: <45C1ADA9.3090802@ihuri.it> <45C1AED6.2060406@ziobudda.net> <45C1B00F.3010305@ihuri.it> <200702011021.42875.cesare@ngi.it> Message-ID: <45C1B3AA.2020408@ihuri.it> >Alle 10:17, gioved? 01 febbraio 2007, Gianluca Ba? ha scritto: > > >>Fantastico, questo cambier? drasticamente il mio modo di lavorare :) >> >> > >Mmm, quali opportunit? ci vedi in questo modo di gestire gli include? > > > Mah soprattutto un fatto di indentazione e scrittura del codice... $result_query = mysql_query(bla bla bla); if ( (bool) $result_query === false ) { echo "Errore"; return; } if ( mysql_num_rows($result_query) == 0 ) { echo "Nessun risultato"; return; } ...stampa dei risultati .... altrimenti dovevo fare tutti gli annidamenti necessari dato che al posto della return non potevo usare la exit ovviamente... From php at beccati.com Thu Feb 1 14:18:45 2007 From: php at beccati.com (Matteo Beccati) Date: Thu Feb 1 16:00:21 2007 Subject: [Php-it] Terminare un include =?ISO-8859-15?Q?=E8_possibil?= =?ISO-8859-15?Q?e=3F?= In-Reply-To: <45C1B3AA.2020408@ihuri.it> References: <45C1ADA9.3090802@ihuri.it> <45C1AED6.2060406@ziobudda.net> <45C1B00F.3010305@ihuri.it> <200702011021.42875.cesare@ngi.it> <45C1B3AA.2020408@ihuri.it> Message-ID: <45C1E8B5.2020308@beccati.com> Gianluca Ba? ha scritto: > [snip] > if ( mysql_num_rows($result_query) == 0 ) > { > echo "Nessun risultato"; > return; > } > > ...stampa dei risultati .... > > > altrimenti dovevo fare tutti gli annidamenti necessari dato che al posto > della return non potevo usare la exit ovviamente... usare le funzioni ? cosa troppo evoluta, vero? ;) Ciao ciao -- Matteo Beccati http://phpadsnew.com http://phppgads.com From marco at emmeti.it Thu Feb 1 14:59:21 2007 From: marco at emmeti.it (Marco Messini) Date: Thu Feb 1 16:12:29 2007 Subject: [Php-it] symfony Message-ID: <45C1F239.2060604@emmeti.it> Sapete se esiste una documentazione in italiano. ho fatto un po' di ricerche ma non ho trovato niente. Grazie Marco -- AVVERTENZE AI SENSI DEL DLGS 196/2003 http://www.emmeti.it/Contact/privacy.it.html From cverondini at deis.unibo.it Thu Feb 1 12:27:03 2007 From: cverondini at deis.unibo.it (Cristiano Verondini) Date: Thu Feb 1 16:30:10 2007 Subject: =?ISO-8859-1?Q?Re:_[Php-it]_Terminare_un_include_=E8_possibile?= =?ISO-8859-1?Q?=3F?= In-Reply-To: <45C1ADA9.3090802@ihuri.it> References: <45C1ADA9.3090802@ihuri.it> Message-ID: <5762EAAF-B0DA-4F1D-8BBC-E135E52BE92A@deis.unibo.it> On 01/feb/07, at 10:06, Gianluca Ba? wrote: > Come da oggetto, ? possibile fare una exit() in in file incluso per > terminare SOLO la sua inclusione e non l'esecuzione del chiamante? Ti hanno gi? risposto sul come, ma sinceramente io preferisco evitare il pi? possibile codice eseguito direttamente dalla include. Nei miei progetti uso le inclusioni per la definizione delle funzioni/ classi, che poi richiamo. Cris -- Cristiano Verondini http://www.verondini.it --- [ICQ 114 190] From info at danilofolli.it Thu Feb 1 12:43:42 2007 From: info at danilofolli.it (Folli Danilo) Date: Thu Feb 1 16:30:17 2007 Subject: [Php-it] EasyEclipse e plugin FTP References: <45C0AB5F.1000906@gmail.com><002f01c74558$376a4b20$bf00000a@portatile> <45C1B260.8080103@gmail.com> Message-ID: <000b01c745f6$46b2e8f0$bf00000a@portatile> > http://www.easyeclipse.org/site/plugins/eclipse-webdav-ftp.html > Ho installato anche webdav ma upload ftp, per quanto funzioni, mi sembra troppo macchinoso. From Riccardo.Vettore at evolutiontravel.it Thu Feb 1 15:24:06 2007 From: Riccardo.Vettore at evolutiontravel.it (Riccardo.Vettore@evolutiontravel.it) Date: Thu Feb 1 16:30:18 2007 Subject: [Php-it] tiny - richiamare plugin duplicato Message-ID: Ciao, forse qualcuno ha gi? affrontato questo problema e pu? consigliarmi. Utilizzo il plugin di Tiny per la gestione delle immagini. Quello che voglio ottenere ? una gestione privata + una gestione pubblica, per questo ho duplicato il plugin. Ora, nella finestra del plug-in privato vorrei richiamare il plug-in pubblico ma non so come fare. sto procedendo a tentativi ma fin'ora nessun risultato positivo. consigli? Grazie! Riccardo Vettore -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.ziobudda.net/pipermail/php-it/attachments/20070201/1792f1ae/attachment.html From AlberT at superalbert.it Thu Feb 1 10:37:29 2007 From: AlberT at superalbert.it (Emiliano Gabrielli (aka AlberT)) Date: Thu Feb 1 16:30:20 2007 Subject: [Php-it] Terminare un include =?iso-8859-15?q?=E8?= possibile? In-Reply-To: <45C1B3AA.2020408@ihuri.it> References: <45C1ADA9.3090802@ihuri.it> <200702011021.42875.cesare@ngi.it> <45C1B3AA.2020408@ihuri.it> Message-ID: <200702011037.30107.AlberT@superalbert.it> On Thursday 01 February 2007 10:32, Gianluca Ba? wrote: > >Mmm, quali opportunit? ci vedi in questo modo di gestire gli include? bh? .. prima dell'introduzione delle *_once() era comodo per fare if (definded()) return; define(); ora come ora la vedo pi? come un goto (nel senso che spezza il flusso).. quindi andrebbe usata con mooolta moderazione -- From therealmorpheu5 at gmail.com Thu Feb 1 11:12:03 2007 From: therealmorpheu5 at gmail.com (Andrea Franceschini) Date: Thu Feb 1 16:30:24 2007 Subject: [Php-it] Trovare classe che chiama metodo (debug) In-Reply-To: <45C067F4.2050800@beccati.com> References: <45C06508.2050206@ziobudda.net> <45C067F4.2050800@beccati.com> Message-ID: <4f7364fd0702010212q3d203247w212b5d96e047d7c5@mail.gmail.com> 2007/1/31, Matteo Beccati : > http://www.php.net/debug_backtrace Mi pare di capire che se ho un metodo log($message) che la mia applicazione chiama per inserire un messaggio nel log, per sapere chi l'ha chiamata mi basta guardare nell'indice 1 dell'array risultante, mentre devo scorrermi tutto l'array se voglio il backtrace completo? Provvidenziale, stavo giusto scrivendo l'error logger della mia applicazione :P From domenico.lorusso at pleiade.it Thu Feb 1 12:06:28 2007 From: domenico.lorusso at pleiade.it (Domenico L.) Date: Thu Feb 1 16:30:27 2007 Subject: [Php-it] Using open source software to design, develop, and deploy a collaborative Web site, Part 13: PHP development within Eclipse In-Reply-To: <45C07E48.9010407@ziobudda.net> References: <45BFE819.5090709@ziobudda.net> <45C069F1.20607@txt.it> <45C07116.70308@tosnet.it> <4f7364fd0701310245w118f6482n62e4234f56010321@mail.gmail.com> <45C077A8.60200@ziobudda.net> <45C07E48.9010407@ziobudda.net> Message-ID: <45C1C9B4.8060209@pleiade.it> Davide Michel 'ZioBudda' Morelli ha scritto: > > EasyEclipse for PHP > > Version: 1.2.1.1 > Based on Eclipse build id: M20060921-0945 io ho questo ma mi chiede anche a me la emf a nessuno ? capitato? soprattutto da ignorante mi spiegate come cercare ed aggiungere solo questo componente? grazie :-) -- Domenico L. icq: 645 44 861 per stupire mezz'ora basta un libro di storia, io cercai di imparare la Treccani a memoria... [F.d.A.] From fsockopen at yahoo.it Thu Feb 1 12:08:54 2007 From: fsockopen at yahoo.it (simo) Date: Thu Feb 1 16:30:42 2007 Subject: [Php-it] Terminare un include è possibile? In-Reply-To: <45C1B3AA.2020408@ihuri.it> Message-ID: <20070201110854.4315.qmail@web26910.mail.ukl.yahoo.com> > Mah soprattutto un fatto di indentazione e scrittura > del codice... in ogni caso la RETURN indica che e' finita una funzione e che la "testina" deve tornare alla riga successiva rispetto alla chiamata della funzione. include() e' di fatto una funzione (che esegue il codice contenuto all' interno del file specificato come parametro ... e non e' diversa dalle altre per cui con return ... ritorni alla chiamata! L' unico difetto (IMHO) e' strutturale. la include() si usa per caricare, librerie, classi o moduli e difficilmente trovi la return al loro interno, Ciao Simone ___________________________________ Vinci i biglietti per FIFA World Cup in Germania! yahoo.it/concorso_messenger From franco at inpe.unipi.it Thu Feb 1 12:25:01 2007 From: franco at inpe.unipi.it (Francesco F) Date: Thu Feb 1 16:30:47 2007 Subject: [Php-it] [PDO] Errore nella query non rilevato Message-ID: <45C1CE0D.90007@inpe.unipi.it> Per un nuovo progetto stavo valutando l'uso della PDO (PHP 5.1.6) per l'accesso al database ma, il primo impatto non ? stato dei migliori. Il codice ? il seguente: $sql = 'Insert into ANAGRAFICA (fis_cognome, fi_nome) VALUES(:fis_cognome, :fis_nome);'; $resPDO = $myPDO->prepare($sql); $a = array(':fis_cognome' => 'A', ':fis_nome' => 'b'); $resPDO->execute($a); L'errore ? il seguente: PHP Fatal error: Call to a member function execute() on a non-object in /var/www/html/importANAGRAFICA.php on line 14 Prova e riprova, l'errore era nel nome del campo (prima riga, fi_nome al posto di fis_nome) Non mi sembra un comportamento tanto corretto.. un errore di sql non permette la creazione dell'oggetto! Ho racchiuso anche le due istruzioni tra try-catch ma nessun errore! Vostre opinioni in merito? Francesco From gianluca at ihuri.it Thu Feb 1 15:52:41 2007 From: gianluca at ihuri.it (=?ISO-8859-15?Q?Gianluca_Ba=F9?=) Date: Thu Feb 1 16:32:50 2007 Subject: [Php-it] Terminare un include =?ISO-8859-15?Q?=E8_possibil?= =?ISO-8859-15?Q?e=3F?= In-Reply-To: <45C1E8B5.2020308@beccati.com> References: <45C1ADA9.3090802@ihuri.it> <45C1AED6.2060406@ziobudda.net> <45C1B00F.3010305@ihuri.it> <200702011021.42875.cesare@ngi.it> <45C1B3AA.2020408@ihuri.it> <45C1E8B5.2020308@beccati.com> Message-ID: <45C1FEB9.9070409@ihuri.it> >Gianluca Ba? ha scritto: > > >>[snip] >>if ( mysql_num_rows($result_query) == 0 ) >>{ >> echo "Nessun risultato"; >> return; >>} >> >>...stampa dei risultati .... >> >> >>altrimenti dovevo fare tutti gli annidamenti necessari dato che al posto >>della return non potevo usare la exit ovviamente... >> >> > >usare le funzioni ? cosa troppo evoluta, vero? ;) > > > Cosa sono le funzioni? E soprattutto, cos'? PHP ? ahuauh scherzo, si effettivamente hai ragione poteva essere una soluzione... Ciao :) From m_invernizzi at tiscali.it Thu Feb 1 16:15:43 2007 From: m_invernizzi at tiscali.it (marco invernizzi) Date: Thu Feb 1 16:36:14 2007 Subject: [Php-it] Using open source software to design, develop, and deploy a collaborative Web site, Part 13: PHP development within Eclipse In-Reply-To: <45C07E48.9010407@ziobudda.net> References: <45BFE819.5090709@ziobudda.net> <45C069F1.20607@txt.it> <45C07116.70308@tosnet.it> <4f7364fd0701310245w118f6482n62e4234f56010321@mail.gmail.com> <45C077A8.60200@ziobudda.net> <45C07E48.9010407@ziobudda.net> Message-ID: <45C2041F.60500@tiscali.it> Davide Michel 'ZioBudda' Morelli ha scritto: > ________________SPONSOR______________ > Spazio pubblicitario libero. > mail a info@ziobudda.net > > > > ________________SPONSOR______________ > > Davide Michel 'ZioBudda' Morelli ha scritto: >> >> easyphp su sourceforge.net > > Ovviamente volevo dire: > > EasyEclipse for PHP > > Version: 1.2.1.1 > Based on Eclipse build id: M20060921-0945 io ho provato proprio questa ma si incarta sulle dipendenze di emf m. > > > Ciao > ___________________________________________________________________ Quipo Free Internet - 2 email, 150 Mb di spazio web e molto di pi?. ADSL, Hardware & Software Online Store From Luca.PESCATORE at ec.europa.eu Thu Feb 1 16:27:39 2007 From: Luca.PESCATORE at ec.europa.eu (Luca.PESCATORE@ec.europa.eu) Date: Thu Feb 1 16:48:09 2007 Subject: [Php-it] Webdev 10 e 11 Message-ID: <9DF4E06FF8CF9A47A168AC814D31D17F8740D9@delalbtia-ex001.delalbtia.delegations.cec.eu.int> Ciao a tutti, qualcuno conosce Webdev ? Pareri ? Le versioni 11 (Francese) e 10 (Inglese) permettono di sviluppare in un metalinguaggio con la possibilita' di generare codice PHP. Supporta inoltre la generazione di interfacce grafiche con un IDE visuale e l'utilizzo di AJAX. Luca Luca Pescatore Delegation of the European Commission in Albania Rruga e Durresit, 127-1, Laprake, Tirana Tel. + 355 4 228320, Fax. + 355 4 230752 website: http://www.delalb.cec.eu.int Please note my new e-mail address: luca.pescatore@ec.europa.eu -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.ziobudda.net/pipermail/php-it/attachments/20070201/780f50c2/attachment.htm From st.jonathan at gmail.com Thu Feb 1 17:12:58 2007 From: st.jonathan at gmail.com (Jonathan Stoppani) Date: Thu Feb 1 17:33:33 2007 Subject: =?ISO-8859-1?Q?Re:_[Php-it]_Terminare_un_include_=E8_possibile?= =?ISO-8859-1?Q?=3F?= In-Reply-To: <20070201110854.4315.qmail@web26910.mail.ukl.yahoo.com> References: <20070201110854.4315.qmail@web26910.mail.ukl.yahoo.com> Message-ID: <97991F75-D639-4F66-8C47-E59E9087935A@gmail.com> On Feb 1, 2007, at 12:08 , simo wrote: >> Mah soprattutto un fatto di indentazione e scrittura >> del codice... > > in ogni caso la RETURN indica che e' finita una > funzione e che la "testina" deve tornare alla riga > successiva rispetto alla chiamata della funzione. > > include() e' di fatto una funzione (che esegue il > codice contenuto all' interno del file specificato > come parametro ... e non e' diversa dalle altre per > cui con return ... ritorni alla chiamata! > > L' unico difetto (IMHO) e' strutturale. > la include() si usa per caricare, librerie, classi o > moduli e difficilmente trovi la return al loro > interno, > > Ciao > Simone L'include non ? una funzione, ? un costrutto. http://ch2.php.net/manual/en/function.include.php prima dei commenti: Note: Because this is a language construct and not a function, it cannot be called using variable functions Best Regards, Jonathan Stoppani --------------------------------- ICQ: 322754291 AIM: garetjax@mac.com MSN+GTalk: st.jonathan@gmail.com From ilias.bartolini at gmail.com Thu Feb 1 20:21:17 2007 From: ilias.bartolini at gmail.com (Ilias Bartolini) Date: Thu Feb 1 20:41:51 2007 Subject: [Php-it] [PDO] Errore nella query non rilevato In-Reply-To: <45C1CE0D.90007@inpe.unipi.it> References: <45C1CE0D.90007@inpe.unipi.it> Message-ID: <200702012021.17368.ilias.bartolini@gmail.com> On Thursday 01 February 2007 12:25, Francesco F wrote: > Per un nuovo progetto stavo valutando l'uso della PDO (PHP 5.1.6) per > l'accesso al database ma, il primo impatto non ? stato dei migliori. > > Il codice ? il seguente: > $sql = 'Insert into ANAGRAFICA (fis_cognome, fi_nome) > VALUES(:fis_cognome, :fis_nome);'; > $resPDO = $myPDO->prepare($sql); > $a = array(':fis_cognome' => 'A', ':fis_nome' => 'b'); > $resPDO->execute($a); > > L'errore ? il seguente: > PHP Fatal error: Call to a member function execute() on a non-object in > /var/www/html/importANAGRAFICA.php on line 14 > > Prova e riprova, l'errore era nel nome del campo (prima riga, fi_nome al > posto di fis_nome) > Non mi sembra un comportamento tanto corretto.. un errore di sql non > permette la creazione dell'oggetto! > Ho racchiuso anche le due istruzioni tra try-catch ma nessun errore! > > Vostre opinioni in merito? http://it2.php.net/manual/en/function.pdo-prepare.php ---------------------------- If the database server successfully prepares the statement, PDO->prepare() returns a PDOStatement object. If the database server cannot successfully prepare the statement, PDO->prepare() returns FALSE. ---------------------------- Purtroppo non sei il primo a lamentarsi del fatto che l'utilizzo delle eccezioni nelle nuove librerie OO di PHP5 ? carente e confuso.... Per quanto riguarda PDO avevo fatto una veloce prova ai tempi della 5.1.4 con il driver ODBC su windows. Dopo 3 prove in croce avevo incontrato 2 bachi... di cui il secondo non restituiva nemmeno errore e faceva crashare di netto il thread di apache. ...spero le cose siano migliorate e qualcuno possa dare feedback pi? positivi. Ilias -- /** * Reply to: ilias.bartolini(at)gmail.com * ICQ# 42797710 - PGP Key-ID:0xC6867602 * http://zatoichi.homeip.net - will write free code for food */ -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available Url : http://lists.ziobudda.net/pipermail/php-it/attachments/20070201/537c5634/attachment.pgp From therealmorpheu5 at gmail.com Thu Feb 1 23:12:18 2007 From: therealmorpheu5 at gmail.com (Andrea Franceschini) Date: Thu Feb 1 23:32:43 2007 Subject: [Php-it] php e i thread Message-ID: <4f7364fd0702011412y635e3e06pdf6faf1ac182400@mail.gmail.com> L'argomento ? stato trattato abbastanza estesamente e mi pare di aver capito che l'unica "soluzione" (se cos? la vogliamo chiamare) sia usare un brutto accrocchio di fork e memoria condivisa. Ora la mia domanda ?: avete idea se PHP6 supporter? il multithreading? No, perch? mi sono innamorato di questa pratica in particolare per quel che riguarda la gestione di un logger di sistema: se ne fa un thread separato in attesa di messaggi e tutto funziona a meraviglia. a thread monolitico invece ? un po' pi? difficile la gestione del fatto. Per dire, creo una classe logger a cui faccio le varie chiamate, immagazzino i messaggi temporaneamente e poi scrivo tutto una volta che l'oggetto sta per essere distrutto. Uno dice ma perch? tutto questo casino? Per esempio perch? nel sistema ho un gestore di documenti XML a singleton e il logger usa come backend dei file XML e se il logger facesse uso del singleton XML, inevitabilmente gli altri oggetti che lo usano perderebbero i loro documenti. Non cambia niente con l'approccio multithread, comunque il flush dei messaggi andrebbe fatto alla morte del thread, ma sarebbe pi? facile gestire le "dipendenze" tra i vari thread con opportuni wait - e non come sto facendo adesso con una sequenza condizionale di unset che appesantisce il tutto. (ok, no, va bene, l'esempio non ? adeguato al fatto multithread, per? dai, era bello da dire :) From franco at inpe.unipi.it Fri Feb 2 09:08:34 2007 From: franco at inpe.unipi.it (Francoesco F) Date: Fri Feb 2 09:32:46 2007 Subject: [Php-it] [PDO] Errore nella query non rilevato Message-ID: <2344.83.190.212.240.1170403714.squirrel@www.inpe.unipi.it> > http://it2.php.net/manual/en/function.pdo-prepare.php > returns a PDOStatement object. If the database server cannot successfully prepare the statement, PDO->prepare() returns FALSE. > Grazie, in prima battuta mi ero perso il ritorno false nel caso di errore durante la preparazione (l'ho scoperto ieri sera) > Purtroppo non sei il primo a lamentarsi del fatto che l'utilizzo delle eccezioni nelle nuove librerie OO di PHP5 ? carente e confuso.... Infatti, in questo specifico caso, mi aspettavo un'eccezione... > Dopo 3 prove in croce avevo incontrato 2 bachi... di cui il secondo non restituiva nemmeno errore e faceva crashare di netto il thread di apache. ...spero le cose siano migliorate e qualcuno possa dare feedback pi? positivi. La situazione non ? certo incoraggiante...beh, aspetto anch'io qualche risposta positiva, altrimenti abbandono l'idea del pdo! Francesco From domenico.lorusso at pleiade.it Fri Feb 2 11:16:41 2007 From: domenico.lorusso at pleiade.it (Domenico L.) Date: Fri Feb 2 11:33:24 2007 Subject: [Php-it] Using open source software to design, develop, and deploy a collaborative Web site, Part 13: PHP development within Eclipse In-Reply-To: <45C2041F.60500@tiscali.it> References: <45BFE819.5090709@ziobudda.net> <45C069F1.20607@txt.it> <45C07116.70308@tosnet.it> <4f7364fd0701310245w118f6482n62e4234f56010321@mail.gmail.com> <45C077A8.60200@ziobudda.net> <45C07E48.9010407@ziobudda.net> <45C2041F.60500@tiscali.it> Message-ID: <45C30F89.70103@pleiade.it> marco invernizzi ha scritto: > Davide Michel 'ZioBudda' Morelli ha scritto: >> Davide Michel 'ZioBudda' Morelli ha scritto: >>> >>> easyphp su sourceforge.net >> >> Ovviamente volevo dire: >> >> EasyEclipse for PHP >> >> Version: 1.2.1.1 >> Based on Eclipse build id: M20060921-0945 > io ho provato proprio questa ma si incarta sulle dipendenze di emf > io ho risolto partendo dalla wtp_all_in_one (210 MB) ciao -- Domenico L. icq: 645 44 861 per stupire mezz'ora basta un libro di storia, io cercai di imparare la Treccani a memoria... [F.d.A.] From domenico.lorusso at pleiade.it Fri Feb 2 15:13:34 2007 From: domenico.lorusso at pleiade.it (Domenico L.) Date: Fri Feb 2 15:30:28 2007 Subject: [Php-it] Estendere una classe o incorporare un oggetto? Message-ID: <45C3470E.8050106@pleiade.it> Caio all, l'oggetto ? un po' criptico, il punto ? questo (esempio): Ho la classe A(nimale) E la classe V(isione) Ora V estende A per dare ad A gli aspetti grafici In questa situazione per? se estendo nuovamente A per aggiungere dei metodi ottenendo la classe F(antastici) quindi F e V sono 2 classi che estendono A ma se volessi utilizzare la parte grafica usata in V per F non potrei... D'altro canto V potrebbe essere una classe che come propriet? si aspetta un oggetto di tipo A (che ? l'approccio di PEAR) per? a questo punto V non pu? accedere ai metodi/propriet? non pubblici di A che invece ? cosa che mi serve... Come si pu? risolvere questa cosa? In soldoni mi serve poter estendere degli aspetti della classe base A, facendo in modo che siano cmq tutte compatibili con V. se po fa? come? ciao!!! P.S. PHP 4 ma prima o poi si migra la 5! -- Domenico L. icq: 645 44 861 per stupire mezz'ora basta un libro di storia, io cercai di imparare la Treccani a memoria... [F.d.A.] From maudelgo at libero.it Fri Feb 2 17:21:45 2007 From: maudelgo at libero.it (mau) Date: Fri Feb 2 17:41:38 2007 Subject: [Php-it] strano problema con apache2 e mysql Message-ID: <45C36519.7070903@libero.it> ciao a tutti, Sono nuovo di questa lista ed ho un problema che proprio non riesco a risolvere Ho creato una piccola applicazione in php4-mysql che girava normalmente con apache 1.3 Adesso ho installato apache 2 e le applicazioni php funzionano ma non riconosce pi? le funzioni mysql; infatti in phpinfo non compare pi? mysql, ho provato a editare php.ini,il modulo auth_mysql ? abilitato. Se invece rifaccio partire apache 1.3 tutto funziona perfettamente. C'? qualcuno che ha un'idea su cosa non va? Grazie Maurizio From fsockopen at yahoo.it Fri Feb 2 19:26:00 2007 From: fsockopen at yahoo.it (simo) Date: Fri Feb 2 19:46:35 2007 Subject: [Php-it] strano problema con apache2 e mysql In-Reply-To: <45C36519.7070903@libero.it> Message-ID: <998549.81755.qm@web26901.mail.ukl.yahoo.com> non so magari il modulo php4 per apache2 e' compilato senza supporto mysql per cui devi abilitarlo da php.ini extension=mysql.so per mysql5 extension=mysqli.so (credo) Ciao Simone --- mau ha scritto: > ________________SPONSOR______________ > Spazio pubblicitario libero. > mail a info@ziobudda.net > > > > ________________SPONSOR______________ > > ciao a tutti, > Sono nuovo di questa lista ed ho un problema che > proprio non riesco a > risolvere > Ho creato una piccola applicazione in php4-mysql che > girava normalmente > con apache 1.3 > Adesso ho installato apache 2 e le applicazioni php > funzionano ma non > riconosce pi? le funzioni mysql; > infatti in phpinfo non compare pi? mysql, ho provato > a editare > php.ini,il modulo auth_mysql ? abilitato. > Se invece rifaccio partire apache 1.3 tutto funziona > perfettamente. > C'? qualcuno che ha un'idea su cosa non va? > Grazie > Maurizio > > _______________________________________________ > Php-it mailing list > Php-it@lists.ziobudda.net > Per cancellarsi dalla lista: > http://lists.ziobudda.net/mailman/listinfo/php-it > ___________________________________ Vinci i biglietti per FIFA World Cup in Germania! yahoo.it/concorso_messenger From maudelgo at libero.it Sat Feb 3 08:25:25 2007 From: maudelgo at libero.it (mau) Date: Sat Feb 3 08:45:22 2007 Subject: [Php-it] strano problema con apache2 e mysql In-Reply-To: <998549.81755.qm@web26901.mail.ukl.yahoo.com> References: <998549.81755.qm@web26901.mail.ukl.yahoo.com> Message-ID: <45C438E5.5010807@libero.it> simo ha scritto: > > ________________SPONSOR______________ > > non so magari il modulo php4 per apache2 > e' compilato senza supporto mysql > > per cui devi abilitarlo da php.ini > > extension=mysql.so > > per mysql5 > > extension=mysqli.so > > (credo) > > Ciao > Simone > > ho gi? controllato ed ? abilitato. From fsockopen at yahoo.it Sat Feb 3 10:09:41 2007 From: fsockopen at yahoo.it (simo) Date: Sat Feb 3 10:30:20 2007 Subject: [Php-it] strano problema con apache2 e mysql In-Reply-To: <45C438E5.5010807@libero.it> Message-ID: <20070203090941.90990.qmail@web26912.mail.ukl.yahoo.com> hai provato a vedere quali estensioni sono caricate: die('
'.print_r(get_loaded_extensions(),1).'
'); non e' che sta usando un altro php.ini in phpinfo() quale php.ini dice di usare ? /etc/apache2/php4/php.ini o altro ? hai controllato che error_reporting sia E_ALL ? e che non dia errori ? extension_dir ? /usr/local/lib/php/extensions/no-debug-no-zts-***... esiste e contiene mysql.so ? per ora non mi viene in mente altro ... Ciao Simone --- mau ha scritto: > ________________SPONSOR______________ > Spazio pubblicitario libero. > mail a info@ziobudda.net > > > > ________________SPONSOR______________ > > simo ha scritto: > > > > ________________SPONSOR______________ > > > > non so magari il modulo php4 per apache2 > > e' compilato senza supporto mysql > > > > per cui devi abilitarlo da php.ini > > > > extension=mysql.so > > > > per mysql5 > > > > extension=mysqli.so > > > > (credo) > > > > Ciao > > Simone > > > > > ho gi? controllato ed ? abilitato. > > > _______________________________________________ > Php-it mailing list > Php-it@lists.ziobudda.net > Per cancellarsi dalla lista: > http://lists.ziobudda.net/mailman/listinfo/php-it > ___________________________________ Vinci i biglietti per FIFA World Cup in Germania! yahoo.it/concorso_messenger From maudelgo at libero.it Sat Feb 3 12:05:19 2007 From: maudelgo at libero.it (mau) Date: Sat Feb 3 12:25:18 2007 Subject: [Php-it] strano problema con apache2 e mysql In-Reply-To: <20070203090941.90990.qmail@web26912.mail.ukl.yahoo.com> References: <20070203090941.90990.qmail@web26912.mail.ukl.yahoo.com> Message-ID: <45C46C6F.9060104@libero.it> simo ha scritto: > ________________SPONSOR______________ > Spazio pubblicitario libero. > mail a info@ziobudda.net > > > > ________________SPONSOR______________ > > hai provato a vedere quali estensioni sono caricate: > > die('
'.print_r(get_loaded_extensions(),1).'
'); > questo ? l'output: Array ( [0] => zip [1] => yp [2] => xmlrpc [3] => xml [4] => wddx [5] => tokenizer [6] => sysvshm [7] => sysvsem [8] => sysvmsg [9] => standard [10] => sockets [11] => shmop [12] => session [13] => posix [14] => pcre [15] => overload [16] => mime_magic [17] => mbstring [18] => iconv [19] => gettext [20] => ftp [21] => filepro [22] => exif [23] => dbx [24] => dba [25] => ctype [26] => calendar [27] => bz2 [28] => bcmath [29] => zlib [30] => openssl [31] => apache2handler ) > non e' che sta usando un altro php.ini > > in phpinfo() quale php.ini dice di usare ? > > /etc/apache2/php4/php.ini o altro ? > ? quello giusto > hai controllato che error_reporting sia E_ALL ? > e che non dia errori ? > > extension_dir ? > > /usr/local/lib/php/extensions/no-debug-no-zts-***... > esiste e contiene mysql.so ? > questa directory non esiste sulla mia Debian Sarge in compenso mysql.so ? contenuta nella directory /usr/lib/php4/20020429/ From fabiogandola at tiscali.it Sat Feb 3 21:47:59 2007 From: fabiogandola at tiscali.it (Fabio) Date: Sat Feb 3 22:08:49 2007 Subject: [Php-it] Problema molto strano su $GLOBALS e $_POST Message-ID: <000301c747d4$974e04e0$0201a8c0@athlonxp1800> Ciao a tutti. Ho uno script che mi gira correttamente sul mio server locale, mentre quando lo metto in linea non funziona come dovrebbe. Ho un file pippo.php con una form con la action sul file stesso pippo.php con una submit cos?: All'inizio del file, per verificare se arrivo da un post (e quindi elaborarlo) oppure se devo semplicemente visualizzare il form, faccio un test di questo tipo: if ($_POST['pippo'] != '') { // logica che gestisce il caso di post } dentro il file, per vari motivi che evito qui di spiegare, faccio anche delle operazioni tipo: $GLOBALS['pippo']['messaggio'] = "ciao" venendo, al dunque, quando sul mio computer locale, faccio un print_r($GLOBALS), (dopo aver fatto il submit del form) vedo: [_POST] => Array ( [param_uno] => 6 [param_due] => 5 [pippo] => Vota ) [pippo] => Array ( [messaggio] => ciao ) quando sul server remoto, faccio un print_r($GLOBALS), vedo: [_POST] => Array ( [param_uno] => 6 [param_due] => 5 [pippo] => Vota ) [pippo] => Hota Qualcuno ha un'idea di che cavolo di problema potrebbe essere? ? come se sul server online non riuscisse a gestire l'array $GLOBALS['pippo'] !!! E soprattutto la cosa particolare ? che il "Vota", si ? trasformato in un assurdo "Hota". Server Online: [SERVER_SOFTWARE] => Apache/1.3.36 (Unix) mod_auth_passthrough/1.8 mod_log_bytes/1.2 mod_bwlimited/1.4 FrontPage/5.0.2.2635.SR1.2 mod_ssl/2.8.27 OpenSSL/0.9.7a PHP-CGI/0.1b La versione di PHP, non scritta in questa scritta viene mostrata nel pannello di gestione del sito e loro dicono che ? PHP 4.4.2 Server Locale: [SERVER_SOFTWARE] => Apache/2.2.0 (Win32) DAV/2 mod_ssl/2.2.0 OpenSSL/0.9.8a PHP/4.4.1-pl1 Ehm.. in pratica sembrerebbe che la versione locale di php sia + vecchia di quella online. Che ne dite? Grazie From php at beccati.com Mon Feb 5 00:00:41 2007 From: php at beccati.com (Matteo Beccati) Date: Mon Feb 5 00:21:44 2007 Subject: [Php-it] Problema molto strano su $GLOBALS e $_POST In-Reply-To: <000301c747d4$974e04e0$0201a8c0@athlonxp1800> References: <000301c747d4$974e04e0$0201a8c0@athlonxp1800> Message-ID: <45C66599.3040503@beccati.com> Ciao, > [pippo] => Hota > > Qualcuno ha un'idea di che cavolo di problema potrebbe essere? ? come se > sul server online non riuscisse a gestire l'array $GLOBALS['pippo'] !!! > E soprattutto la cosa particolare ? che il "Vota", si ? trasformato in > un assurdo "Hota". Il server remoto ha register_globals on, per cui $GLOBALS['pippo'] esiste gi? nel momento in cui tu fai: > $GLOBALS['pippo']['messaggio'] = "ciao" Tenendo conto che probabilmente la stringa che hai usato realmente inizia con "H", ti ritrovi a sostituire il primo carattere della stringa $GLOBALS['pippo'] con il primo carattere della stringa a destra dell'uguale, come se fosse: $GLOBALS['pippo'][0] = "ciao"; equivalente a: $GLOBALS['pippo'][0] = "c"; Ciao ciao -- Matteo Beccati http://phpadsnew.com http://phppgads.com From fabiogandola at tiscali.it Mon Feb 5 09:52:23 2007 From: fabiogandola at tiscali.it (fabiogandola@tiscali.it) Date: Mon Feb 5 10:13:36 2007 Subject: [Php-it] Problema molto strano su $GLOBALS e $_POST Message-ID: <1315579.1170665543954.JavaMail.root@ps11> Anche se devo ancora studiarmi la tua risposta, ti ringrazio infinitamente, perch? sinceramente non avevo proprio idea di cosa potesse causare il problema. ora cerco di studiarmi sta faccenda del register_globals, visto che ? da un bel po' di tempo che io lo presuppongo sempre off, e sinceramente non pensavo che a trovarmelo on ci potessero essere script che non funzionavano... Tra l'altro visto che ? on, sul server online, vuol dire che la gente potrebbe scrivermi delle variabili che io ipotizzo "vuote", accipicchia :| E' una gran fregatura.. Comunque ora cerco di capire per bene la tua risposta, perch? ho ricordi un po' vaghi dei comportamenti con register global a on.. Poi cerco nel manuale se esiste qualche modo per forzare (senza aver accesso a php.ini) il register globals a off... Grazie! Naviga e telefona senza limiti con Tiscali Scopri le promozioni Tiscali adsl: navighi e telefoni senza canone Telecom http://abbonati.tiscali.it/adsl/ From aldo.galimberti at txt.it Mon Feb 5 10:06:12 2007 From: aldo.galimberti at txt.it (Aldo Galimberti) Date: Mon Feb 5 10:27:12 2007 Subject: [Php-it] Problema molto strano su $GLOBALS e $_POST In-Reply-To: <1315579.1170665543954.JavaMail.root@ps11> References: <1315579.1170665543954.JavaMail.root@ps11> Message-ID: <45C6F384.5080408@txt.it> fabiogandola@tiscali.it wrote: > Tra l'altro visto che ? on, sul server online, vuol dire che la gente > potrebbe scrivermi delle variabili che io ipotizzo "vuote", accipicchia > :| > > E' una gran fregatura.. > IMHO, le variabili vanno sempre dichiarate e inizializzate prima di usarle... -- Aldo Galimberti - TXT Polymedia S.p.A. v.Frigia 27 - 20126 Milano Tel. +39 02 257711 Fax. +39 02 2578994 http://www.txt.it/ From michel at ziobudda.net Mon Feb 5 10:58:18 2007 From: michel at ziobudda.net (Davide Michel 'ZioBudda' Morelli) Date: Mon Feb 5 11:19:19 2007 Subject: [Php-it] strano problema con apache2 e mysql In-Reply-To: <45C46C6F.9060104@libero.it> References: <20070203090941.90990.qmail@web26912.mail.ukl.yahoo.com> <45C46C6F.9060104@libero.it> Message-ID: <45C6FFBA.20708@ziobudda.net> mau ha scritto: > questo ? l'output: > > Array > ( > [0] => zip > [1] => yp > [2] => xmlrpc > [3] => xml > [4] => wddx > [5] => tokenizer > [6] => sysvshm > [7] => sysvsem > [8] => sysvmsg > [9] => standard > [10] => sockets > [11] => shmop > [12] => session > [13] => posix > [14] => pcre > [15] => overload > [16] => mime_magic > [17] => mbstring > [18] => iconv > [19] => gettext > [20] => ftp > [21] => filepro > [22] => exif > [23] => dbx > [24] => dba > [25] => ctype > [26] => calendar > [27] => bz2 > [28] => bcmath > [29] => zlib > [30] => openssl > [31] => apache2handler > ) manca appunto mysql >> >> extension_dir ? >> >> /usr/local/lib/php/extensions/no-debug-no-zts-***... >> esiste e contiene mysql.so ? >> > questa directory non esiste sulla mia Debian Sarge > in compenso mysql.so ? contenuta nella directory /usr/lib/php4/20020429/ metti /usr/lib/php4/20020429/ al posto di quella scritta in extension_dir o fai un link simbolico dei moduli da /usr/lib/php4/20020429/ a extension_dir . M. -- Michel 'ZioBudda' Morelli michel@ziobudda.net Consulenza sistemistica in ambito OpenSource. Sviluppo applicazioni web dinamiche (LAMP+Ajax) Telefono: +39-3939890025 -- Fax: +39-0291390660 http://www.ziobudda.net ICQ: 58351764 http://www.ziobuddalabs.it Skype: zio_budda http://www.ajaxblog.it MSN: michel@ziobuddalabs.it From maudelgo at libero.it Mon Feb 5 12:40:42 2007 From: maudelgo at libero.it (mau) Date: Mon Feb 5 13:01:06 2007 Subject: [Php-it] strano problema con apache2 e mysql In-Reply-To: <45C6FFBA.20708@ziobudda.net> References: <20070203090941.90990.qmail@web26912.mail.ukl.yahoo.com> <45C46C6F.9060104@libero.it> <45C6FFBA.20708@ziobudda.net> Message-ID: <45C717BA.9050200@libero.it> Davide Michel 'ZioBudda' Morelli ha scritto: > ________________SPONSOR______________ > > > metti /usr/lib/php4/20020429/ al posto di quella scritta in > extension_dir o fai un link simbolico dei moduli da > /usr/lib/php4/20020429/ a extension_dir . > > Fatto!! Ma non funziona ugualmente From gianiaz at gianiaz.net Mon Feb 5 13:15:37 2007 From: gianiaz at gianiaz.net (Giovanni Battista Lenoci) Date: Mon Feb 5 13:36:42 2007 Subject: [Php-it] strano problema con apache2 e mysql In-Reply-To: <45C717BA.9050200@libero.it> References: <20070203090941.90990.qmail@web26912.mail.ukl.yahoo.com> <45C46C6F.9060104@libero.it> <45C6FFBA.20708@ziobudda.net> <45C717BA.9050200@libero.it> Message-ID: <45C71FE9.2010806@gianiaz.net> mau ha scritto: > Fatto!! Ma non funziona ugualmente riavviato apache? ciao -------------- next part -------------- A non-text attachment was scrubbed... Name: gianiaz.vcf Type: text/x-vcard Size: 259 bytes Desc: not available Url : http://lists.ziobudda.net/pipermail/php-it/attachments/20070205/32d97281/gianiaz.vcf From auri at auri.it Mon Feb 5 14:10:44 2007 From: auri at auri.it (Auri Mason) Date: Mon Feb 5 14:33:18 2007 Subject: [Php-it] Oracle PDO Message-ID: <20070205141044.tazal8qwsjcwkwo0@www.auri.it> Ciao Oracle PDO: ######################################################################### dato il TNSNAMES ######################################################################### DEL1.DELSER.COM = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.1.5)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = del1) ) ) ######################################################################### dato questo file di esempio ######################################################################### getMessage(); exit; } $s = $dbh->prepare("SELECT GIAC_CODART, GIAC_QTA FROM GIACENZE_TRYME WHERE (((GIACENZE_TRYME.GIAC_CODMAG)='1' Or (GIACENZE_TRYME.GIAC_CODMAG)='1A')) and GIACENZE_TRYME.GIAC_CODART='0986'"); $s->execute(); while ($r = $s->fetch(PDO::FETCH_ASSOC)) { echo $r['GIAC_CODART'] . "
"; echo $r['GIAC_QTA'] . "
"; } ?> ######################################################################### Qualcuno ? in grado di indicarmi la corretta parametrizzazione? Ottengo l'errore "Connection failed: SQLSTATE[HY000]: pdo_oci_handle_factory: ORA-12514: TNS:listener does not currently know of service requested in connect descriptor (/usr/src/php-5.1.2/ext/pdo_oci/oci_driver.c:463)" Grazie mille, Auri From domenico.lorusso at pleiade.it Mon Feb 5 14:22:14 2007 From: domenico.lorusso at pleiade.it (Domenico L.) Date: Mon Feb 5 14:39:54 2007 Subject: [Php-it] Oracle PDO In-Reply-To: <20070205141044.tazal8qwsjcwkwo0@www.auri.it> References: <20070205141044.tazal8qwsjcwkwo0@www.auri.it> Message-ID: <45C72F86.6000202@pleiade.it> Auri Mason ha scritto: > > ######################################################################### > dato il TNSNAMES > ######################################################################### > DEL1.DELSER.COM = [..] > ######################################################################### > dato questo file di esempio > ######################################################################### > > try { > $dbh = new PDO('oci:dbname=10.0.1.5', 'fidesv45', 'fides'); grazie per utente e pwd :-) > } > > Qualcuno ? in grado di indicarmi la corretta parametrizzazione? > Ottengo l'errore "Connection failed: SQLSTATE[HY000]: > pdo_oci_handle_factory: ORA-12514: TNS:listener does not currently > know of service requested in connect descriptor > (/usr/src/php-5.1.2/ext/pdo_oci/oci_driver.c:463)" Il problema ? relativo a listener e non alla query in se, inoltre citi il tnsnames e poi passi l'indirizzo ip. Io non conosco PDO ma prova a fare: $dbh = new PDO('oci:dbname=DEL1.DELSER.COM', 'fidesv45', 'fides'); ciao -- Domenico L. icq: 645 44 861 per stupire mezz'ora basta un libro di storia, io cercai di imparare la Treccani a memoria... [F.d.A.] From gianluca at ihuri.it Mon Feb 5 15:27:30 2007 From: gianluca at ihuri.it (=?ISO-8859-1?Q?Gianluca_Ba=F9?=) Date: Mon Feb 5 15:49:09 2007 Subject: [Php-it] else if ... Elseif Message-ID: <45C73ED2.8000404@ihuri.it> Salve ragazzi, una piccola curiosit? solamente: ma cosa cambia tra scrivere if ( cond. ) ... else if ( cond ) ... e if ( cond. ) ... elseif ( cond ) ... perch? fare due costrutti diversi per la stessa cosa?! Saluti Gianluca From gianiaz at gianiaz.net Mon Feb 5 15:30:05 2007 From: gianiaz at gianiaz.net (Giovanni Battista Lenoci) Date: Mon Feb 5 15:52:03 2007 Subject: [Php-it] else if ... Elseif In-Reply-To: <45C73ED2.8000404@ihuri.it> References: <45C73ED2.8000404@ihuri.it> Message-ID: <45C73F6D.4000600@gianiaz.net> Gianluca Ba? ha scritto: > ________________SPONSOR______________ > Spazio pubblicitario libero. > mail a info@ziobudda.net > > > > ________________SPONSOR______________ > > Salve ragazzi, > una piccola curiosit? solamente: ma cosa cambia tra scrivere > > if ( cond. ) > ... > else if ( cond ) > ... > > e > > if ( cond. ) > ... > elseif ( cond ) > ... > > perch? fare due costrutti diversi per la stessa cosa?! > > Saluti > > Gianluca Nel caso specifico niente, ma se nel primo caso il secondo if ha un else cambia la logica. Ho capito bene quello che intendi? ciao -------------- next part -------------- A non-text attachment was scrubbed... Name: gianiaz.vcf Type: text/x-vcard Size: 259 bytes Desc: not available Url : http://lists.ziobudda.net/pipermail/php-it/attachments/20070205/f6b635d8/gianiaz.vcf From st.jonathan at gmail.com Mon Feb 5 15:43:02 2007 From: st.jonathan at gmail.com (Jonathan Stoppani) Date: Mon Feb 5 16:04:11 2007 Subject: [Php-it] else if ... Elseif In-Reply-To: <45C73F6D.4000600@gianiaz.net> References: <45C73ED2.8000404@ihuri.it> <45C73F6D.4000600@gianiaz.net> Message-ID: On 05/02/07, Giovanni Battista Lenoci wrote: > > Salve ragazzi, > > una piccola curiosit? solamente: ma cosa cambia tra scrivere > > > > if ( cond. ) > > ... > > else if ( cond ) > > ... > > > > e > > > > if ( cond. ) > > ... > > elseif ( cond ) > > ... > > > > perch? fare due costrutti diversi per la stessa cosa?! > > > > Saluti > > > > Gianluca > Nel caso specifico niente, ma se nel primo caso il secondo if ha un else > cambia la logica. Non ? vero, fra if { } else { if { } else { } } e if { } else if { } else { } Non cambia niente. Comunque solamente elseif ? un costrutto, else if sono due costrutti messi assieme... E se guardi bene php ? pieno di questo genere di "inutilit?" (anche se io alla fine use sempre elseif :D ) Ciao, Jonathan From aldo.galimberti at txt.it Mon Feb 5 15:48:20 2007 From: aldo.galimberti at txt.it (Aldo Galimberti) Date: Mon Feb 5 16:09:26 2007 Subject: [Php-it] else if ... Elseif In-Reply-To: References: <45C73ED2.8000404@ihuri.it> <45C73F6D.4000600@gianiaz.net> Message-ID: <45C743B4.10901@txt.it> Jonathan Stoppani wrote: > E se guardi bene php ? pieno di questo genere di "inutilit?" (anche se > io alla fine use sempre elseif :D ) > io la prima ovvero else if anche per coerenza con gli altri linguaggi C based... :) -- Aldo Galimberti - TXT Polymedia S.p.A. v.Frigia 27 - 20126 Milano Tel. +39 02 257711 Fax. +39 02 2578994 http://www.txt.it/ From st.jonathan at gmail.com Mon Feb 5 15:52:05 2007 From: st.jonathan at gmail.com (Jonathan Stoppani) Date: Mon Feb 5 16:13:14 2007 Subject: [Php-it] else if ... Elseif In-Reply-To: <45C743B4.10901@txt.it> References: <45C73ED2.8000404@ihuri.it> <45C73F6D.4000600@gianiaz.net> <45C743B4.10901@txt.it> Message-ID: > Jonathan Stoppani wrote: > > > E se guardi bene php ? pieno di questo genere di "inutilit?" (anche se > > io alla fine use sempre elseif :D ) > > > > io la prima ovvero else if anche per coerenza con gli altri linguaggi C > based... :) Concordo su questo punto, credo uso l'elseif perch? quando ho cominciato ho cominciato cos?... questione di abitudini... ^^ From gianluca at ihuri.it Mon Feb 5 15:54:18 2007 From: gianluca at ihuri.it (=?ISO-8859-1?Q?Gianluca_Ba=F9?=) Date: Mon Feb 5 16:15:54 2007 Subject: [Php-it] else if ... Elseif In-Reply-To: References: <45C73ED2.8000404@ihuri.it> <45C73F6D.4000600@gianiaz.net> <45C743B4.10901@txt.it> Message-ID: <45C7451A.30805@ihuri.it> > > ------------------------------------------------------------------------ > >> Jonathan Stoppani wrote: >> >> > E se guardi bene php ? pieno di questo genere di "inutilit?" (anche se >> > io alla fine use sempre elseif :D ) >> > >> >> io la prima ovvero else if anche per coerenza con gli altri linguaggi C >> based... :) > > > Concordo su questo punto, credo uso l'elseif perch? quando ho > cominciato ho cominciato cos?... questione di abitudini... ^^ > >------------------------------------------------------------------------ > >______________________________________________ > Si anche io uso sempre else ed if staccati.... :) From gianiaz at gianiaz.net Mon Feb 5 16:36:20 2007 From: gianiaz at gianiaz.net (Giovanni Battista Lenoci) Date: Mon Feb 5 16:57:36 2007 Subject: [Php-it] else if ... Elseif In-Reply-To: References: <45C73ED2.8000404@ihuri.it> <45C73F6D.4000600@gianiaz.net> Message-ID: <45C74EF4.8070708@gianiaz.net> Jonathan Stoppani ha scritto: > Non ? vero, > > fra > if { > > } else { > if { > > } else { > > } > } > > e > > if { > > } else if { > > } else { > > } > Io avevo fatto questo tipo di distinzione: fra if( ) { } elseif () { } e if() { } else if() { } } non cambia nulla, ma questa ? un'inutilit? data dal fatto che il costrutto if si pu? usare anche senza graffe se l'istruzione ? una sola, e il secondo blocco if viene visto come tale. Quello che dicevo io ? che con un costrutto if() { } elseif { } non puoi fare quello che raggiungeresti nell'else #2 if () { } else if { } else { #2 } } Ciao -------------- next part -------------- A non-text attachment was scrubbed... Name: gianiaz.vcf Type: text/x-vcard Size: 259 bytes Desc: not available Url : http://lists.ziobudda.net/pipermail/php-it/attachments/20070205/fe45c78f/gianiaz.vcf From therealmorpheu5 at gmail.com Mon Feb 5 17:12:07 2007 From: therealmorpheu5 at gmail.com (Andrea Franceschini) Date: Mon Feb 5 17:34:04 2007 Subject: [Php-it] imporre l'implementazione di un metodo Message-ID: <4f7364fd0702050812j298789a3w24eaa6d91f879400@mail.gmail.com> Salve a tutti. Ho le solite due classi A e B con B che estende A. Ora avrei bisogno di imporre che B implementi un metodo m() ma ho anche bisogno di poter istanziare A, quindi non posso dichiarare A abstract n? tantomento includere un metodo abstract nella definizione di A. C'? un altro modo con cui posso imporre questo requisito? From st.jonathan at gmail.com Mon Feb 5 17:18:34 2007 From: st.jonathan at gmail.com (Jonathan Stoppani) Date: Mon Feb 5 17:39:45 2007 Subject: [Php-it] else if ... Elseif In-Reply-To: <45C74EF4.8070708@gianiaz.net> References: <45C73ED2.8000404@ihuri.it> <45C73F6D.4000600@gianiaz.net> <45C74EF4.8070708@gianiaz.net> Message-ID: <88AEDF63-7718-48BD-B7C2-7EF7ABDE2494@gmail.com> On Feb 5, 2007, at 4:36 , Giovanni Battista Lenoci wrote: > non cambia nulla, ma questa ? un'inutilit? data dal fatto che il > costrutto if si pu? usare anche senza graffe se l'istruzione ? una > sola, e il secondo blocco if viene visto come tale. > > Quello che dicevo io ? che con un costrutto > > if() { > > } elseif { > > } > > non puoi fare quello che raggiungeresti nell'else #2 > > if () { > > } else if { > > } else { #2 > > } > #3 > } > Vero ;) Best Regards, Jonathan Stoppani --------------------------------- WWW: http://www.garetjax.info ICQ: 322754291 AIM: garetjax@mac.com MSN+GTalk: st.jonathan@gmail.com From therealmorpheu5 at gmail.com Mon Feb 5 17:22:47 2007 From: therealmorpheu5 at gmail.com (Andrea Franceschini) Date: Mon Feb 5 17:43:52 2007 Subject: [Php-it] Estendere una classe o incorporare un oggetto? In-Reply-To: <45C3470E.8050106@pleiade.it> References: <45C3470E.8050106@pleiade.it> Message-ID: <4f7364fd0702050822t5935897et1efd22b891698329@mail.gmail.com> Il 02/02/07, Domenico L. ha scritto: > Come si pu? risolvere questa cosa? Forse puoi includere riferimenti ai vari oggetti in apposite chiavi di $GLOBALS e usare quelle direttamente. Non ? una gran soluzione, ma mi pare l'unica praticabile nel tuo caso. From st.jonathan at gmail.com Mon Feb 5 17:23:18 2007 From: st.jonathan at gmail.com (Jonathan Stoppani) Date: Mon Feb 5 17:44:31 2007 Subject: [Php-it] imporre l'implementazione di un metodo In-Reply-To: <4f7364fd0702050812j298789a3w24eaa6d91f879400@mail.gmail.com> References: <4f7364fd0702050812j298789a3w24eaa6d91f879400@mail.gmail.com> Message-ID: <9ACB7A8A-686D-40B5-9814-8E280285C515@gmail.com> On Feb 5, 2007, at 5:12 , Andrea Franceschini wrote: > ________________SPONSOR______________ > Spazio pubblicitario libero. > mail a info@ziobudda.net > > > > ________________SPONSOR______________ > > Salve a tutti. Ho le solite due classi A e B con B che estende A. Ora > avrei bisogno di imporre che B implementi un metodo m() ma ho anche > bisogno di poter istanziare A, quindi non posso dichiarare A abstract > n? tantomento includere un metodo abstract nella definizione di A. > > C'? un altro modo con cui posso imporre questo requisito? Definisci un'interfaccia C in cui dichiari il metodo e dichiari la classe B cos?: class B extends A implements C { } Best Regards, Jonathan Stoppani --------------------------------- WWW: http://www.garetjax.info ICQ: 322754291 AIM: garetjax@mac.com MSN+GTalk: st.jonathan@gmail.com From therealmorpheu5 at gmail.com Mon Feb 5 17:31:25 2007 From: therealmorpheu5 at gmail.com (Andrea Franceschini) Date: Mon Feb 5 17:52:31 2007 Subject: [Php-it] imporre l'implementazione di un metodo In-Reply-To: <9ACB7A8A-686D-40B5-9814-8E280285C515@gmail.com> References: <4f7364fd0702050812j298789a3w24eaa6d91f879400@mail.gmail.com> <9ACB7A8A-686D-40B5-9814-8E280285C515@gmail.com> Message-ID: <4f7364fd0702050831h16203a7aj4c297018e2ce711d@mail.gmail.com> Il 05/02/07, Jonathan Stoppani ha scritto: > Definisci un'interfaccia C in cui dichiari il metodo e dichiari la > classe B cos?: > > class B extends A implements C { > > } E' una soluzione, ma vorrei che chi implementa un'estensione per A sia formalmente costretto ad implementare quel metodo in modo trasparente (ovvero: senza dover aggiungere implements alla classe B). Ho provato a mettere A implements C col solo risultato di dover implementare m() in A e B ? ancora libera di fare quel che le pare. From domenico.lorusso at pleiade.it Mon Feb 5 17:35:35 2007 From: domenico.lorusso at pleiade.it (Domenico L.) Date: Mon Feb 5 17:52:51 2007 Subject: [Php-it] Estendere una classe o incorporare un oggetto? In-Reply-To: <4f7364fd0702050822t5935897et1efd22b891698329@mail.gmail.com> References: <45C3470E.8050106@pleiade.it> <4f7364fd0702050822t5935897et1efd22b891698329@mail.gmail.com> Message-ID: <45C75CD7.70402@pleiade.it> Andrea Franceschini ha scritto: > Il 02/02/07, Domenico L. ha scritto: > >> Come si pu? risolvere questa cosa? > > Forse puoi includere riferimenti ai vari oggetti in apposite chiavi di > $GLOBALS e usare quelle direttamente. Non ? una gran soluzione, ma mi > pare l'unica praticabile nel tuo caso. > s? temo anche io che ci? che cerco non esista, perch? voglio tassitavamente evitare accrocchi, altrimenti poi la manutenzione diventa impossibile... grazie cmq sono costretto a passare al modello mcv anche se non si applica benissimo a questo caso.... ciao -- Domenico L. icq: 645 44 861 per stupire mezz'ora basta un libro di storia, io cercai di imparare la Treccani a memoria... [F.d.A.] From therealmorpheu5 at gmail.com Mon Feb 5 17:35:58 2007 From: therealmorpheu5 at gmail.com (Andrea Franceschini) Date: Mon Feb 5 17:57:03 2007 Subject: [Php-it] Estendere una classe o incorporare un oggetto? In-Reply-To: <45C75CD7.70402@pleiade.it> References: <45C3470E.8050106@pleiade.it> <4f7364fd0702050822t5935897et1efd22b891698329@mail.gmail.com> <45C75CD7.70402@pleiade.it> Message-ID: <4f7364fd0702050835t16b72e0dq4e1ba9f64f018774@mail.gmail.com> Il 05/02/07, Domenico L. ha scritto: > grazie cmq sono costretto a passare al modello mcv anche se non si > applica benissimo a questo caso.... A me pare invece che il MVC si applichi abbastanza bene a questo caso. Infatti hai le due classi A ed F a far la parte del Controller, e la classe V che fa la parte del View. Poi, che tu abbia o meno il Model ? un discorso a parte: il paradigma, per come la vedo io, si applica. E allora forse s? che diventa indispensabile avere tutto in $GLOBALS e felicit? a pacchi per tutti, io sto lavorando ad un progetto che funziona proprio con questa logica. From domenico.lorusso at pleiade.it Mon Feb 5 17:46:02 2007 From: domenico.lorusso at pleiade.it (Domenico L.) Date: Mon Feb 5 18:03:14 2007 Subject: [Php-it] Ricercare "figlio" in un array Message-ID: <45C75F4A.9040706@pleiade.it> Ciao all, Ipotizzate di avere un array con n elementi e profondit? m Ipotizzate di dover interpretare un input utente del formato: ciao[miao][bao] Che vuol tornami un riferimento a bao. Ora questa ? la funzione che dovrebbe tornare il riferimento... non l'ho ancora testata... voi cosa ne dite va? Ciao /** * funzione che cerca all'interno dell'array $var il nodo che soddifa $niddle * * @param array $var un'array nidificato * @param mixed $out variabile che conterr? il puntatore * @param string $niddle la stringa che indica che oggetto figlio ritornare, es.: ciao[miao][bao] * @param bool $create se a true crea gli elementi se non ci sono * @return mixed false in caso di fallimento un puntatore al figlio che soddisfi le ricerche * */ function seekArray(&$var, &$out, $niddle, $create=false){ #->supponiamo ciao[miao][bao] $out=&$var; $step=array(); $er='#^(\w+)((\[\w+\])*)$#sD'; preg_match_all($er,$niddle,$m); if (empty($m[1]) and !$create) return false; $step[]=$m[1];#->ciao if (!empty($m[2])){ $niddle=$m[2];#->[miao][bao] $er ='#\[(\w+)\]#sD'; preg_match_all($er,$niddle,$m); if (count($m[1])) $step+=$m[1]; } $n=count($step); for ($i=0;$i<$n;$i++){ $niddle=$step[$i]; if (!isset($out[ $niddle ])) if (!$create) return false; else $out[ $niddle ]=0; $out = &$out[ $niddle ]; } return true; } -- Domenico L. icq: 645 44 861 per stupire mezz'ora basta un libro di storia, io cercai di imparare la Treccani a memoria... [F.d.A.] From domenico.lorusso at pleiade.it Mon Feb 5 17:47:38 2007 From: domenico.lorusso at pleiade.it (Domenico L.) Date: Mon Feb 5 18:04:49 2007 Subject: [Php-it] imporre l'implementazione di un metodo In-Reply-To: <4f7364fd0702050831h16203a7aj4c297018e2ce711d@mail.gmail.com> References: <4f7364fd0702050812j298789a3w24eaa6d91f879400@mail.gmail.com> <9ACB7A8A-686D-40B5-9814-8E280285C515@gmail.com> <4f7364fd0702050831h16203a7aj4c297018e2ce711d@mail.gmail.com> Message-ID: <45C75FAA.7030106@pleiade.it> Andrea Franceschini ha scritto: > > E' una soluzione, ma vorrei che chi implementa un'estensione per A sia > formalmente costretto ad implementare quel metodo in modo trasparente > (ovvero: senza dover aggiungere implements alla classe B). Ho provato > a mettere A implements C col solo risultato di dover implementare m() > in A e B ? ancora libera di fare quel che le pare. scusa ma non puoi dichiarare solo il metodo astratto? Altrimenti l'unica soluzione che mi viene in mente ? che A abbia quel metodo fatto cos?: function metodoDiB (){;} ciao -- Domenico L. icq: 645 44 861 per stupire mezz'ora basta un libro di storia, io cercai di imparare la Treccani a memoria... [F.d.A.] From cverondini at deis.unibo.it Mon Feb 5 17:45:26 2007 From: cverondini at deis.unibo.it (Cristiano Verondini) Date: Mon Feb 5 18:07:46 2007 Subject: [Php-it] Ricercare "figlio" in un array References: <45C75F4A.9040706@pleiade.it> Message-ID: <018c01c74945$0d194740$6301a8c0@IdeaFutura.local> > Ora questa ? la funzione che dovrebbe tornare il riferimento... non > l'ho ancora testata... voi cosa ne dite va? Io userei un po' di ricorsione :) Cris -- Cristiano Verondini http://www.verondini.it --- [ICQ: 114 190] From st.jonathan at gmail.com Mon Feb 5 18:10:51 2007 From: st.jonathan at gmail.com (Jonathan Stoppani) Date: Mon Feb 5 18:32:04 2007 Subject: [Php-it] imporre l'implementazione di un metodo In-Reply-To: <4f7364fd0702050831h16203a7aj4c297018e2ce711d@mail.gmail.com> References: <4f7364fd0702050812j298789a3w24eaa6d91f879400@mail.gmail.com> <9ACB7A8A-686D-40B5-9814-8E280285C515@gmail.com> <4f7364fd0702050831h16203a7aj4c297018e2ce711d@mail.gmail.com> Message-ID: On Feb 5, 2007, at 5:31 , Andrea Franceschini wrote: > ________________SPONSOR______________ > Spazio pubblicitario libero. > mail a info@ziobudda.net > > > > ________________SPONSOR______________ > > Il 05/02/07, Jonathan Stoppani ha scritto: > >> Definisci un'interfaccia C in cui dichiari il metodo e dichiari la >> classe B cos?: >> >> class B extends A implements C { >> >> } > > E' una soluzione, ma vorrei che chi implementa un'estensione per A sia > formalmente costretto ad implementare quel metodo in modo trasparente > (ovvero: senza dover aggiungere implements alla classe B). Ho provato > a mettere A implements C col solo risultato di dover implementare m() > in A e B ? ancora libera di fare quel che le pare. Allora puoi implementare il m in A che, non so, lanci un'eccezione Best Regards, Jonathan Stoppani --------------------------------- WWW: http://www.garetjax.info ICQ: 322754291 AIM: garetjax@mac.com MSN+GTalk: st.jonathan@gmail.com From therealmorpheu5 at gmail.com Mon Feb 5 18:50:39 2007 From: therealmorpheu5 at gmail.com (Andrea Franceschini) Date: Mon Feb 5 19:11:46 2007 Subject: [Php-it] imporre l'implementazione di un metodo In-Reply-To: <45C75FAA.7030106@pleiade.it> References: <4f7364fd0702050812j298789a3w24eaa6d91f879400@mail.gmail.com> <9ACB7A8A-686D-40B5-9814-8E280285C515@gmail.com> <4f7364fd0702050831h16203a7aj4c297018e2ce711d@mail.gmail.com> <45C75FAA.7030106@pleiade.it> Message-ID: <4f7364fd0702050950k71672ac0s729ec4fe69d8188e@mail.gmail.com> Il 05/02/07, Domenico L. ha scritto: > scusa ma non puoi dichiarare solo il metodo astratto? Fatal error: Class Plugin contains 1 abstract method and must therefore be declared abstract or implement the remaining methods Significherebbe che dovrei implementare m() per A e che quindi B non sarebbe piu' costretta ad implementare m() perche' lo eredita da A. > Altrimenti l'unica soluzione che mi viene in mente ? che A abbia quel > metodo fatto cos?: > > function metodoDiB (){;} neanche questo costringe B ad implementare la funzione. From dodiesis_ml at sgrunt.net Tue Feb 6 00:51:03 2007 From: dodiesis_ml at sgrunt.net (dodiesis_ml) Date: Tue Feb 6 01:12:09 2007 Subject: [Php-it] Alternativa a pear dataobject Message-ID: <1170719463.6886.5.camel@bau> Salve a tutti. si dice in giro che pear sia ciccione. E quindi voi cosa usate (se usate qualcosa) al posto di dataobject di pear? Sia solo per php4 che anche per php5. Sto guardando vari framework... il problema ? che sono esagerati: fanno troppo. Grazie. From domenico.lorusso at pleiade.it Tue Feb 6 09:47:25 2007 From: domenico.lorusso at pleiade.it (Domenico L.) Date: Tue Feb 6 10:04:47 2007 Subject: [Php-it] Ricercare "figlio" in un array In-Reply-To: <018c01c74945$0d194740$6301a8c0@IdeaFutura.local> References: <45C75F4A.9040706@pleiade.it> <018c01c74945$0d194740$6301a8c0@IdeaFutura.local> Message-ID: <45C8409D.1090101@pleiade.it> Cristiano Verondini ha scritto: > >> Ora questa ? la funzione che dovrebbe tornare il riferimento... non >> l'ho ancora testata... voi cosa ne dite va? > > Io userei un po' di ricorsione :) mah... in realt? era stato il mio primo pensiero, poi siccome il match mi ritorna un array mi sembrava pi? semplice l'iterazione cmq la funzione non andava l'ho modificata: $arr=array(); $out=''; seekArray ($arr,$out,'ciao[mioa][bao]',true); $out='ok'; echo "
Result
"; var_dump($arr); var_dump($out); function seekArray(&$var, &$out, $niddle, $create=false){ #->supponiamo ciao[miao][bao] $v=&$var; $step=array(); $er='#^(\w+)((\[\w+\])*)$#sD'; preg_match_all($er,$niddle,$m); if (empty($m[1][0]) and !$create) return false; $step[]=$m[1][0];#->ciao if (!empty($m[2][0])){ $niddle=$m[2][0];#->[miao][bao] $er ='#\[(\w+)\]#sD'; preg_match_all($er,$niddle,$m); if (count($m[1])) $step=array_merge($step,$m[1]); } $n=count($step); for ($i=0;$i<$n;$i++){ $niddle=$step[$i]; if (!isset($v[ $niddle ])) if (!$create) return false; else $v=array( $niddle =>0); $v = &$v[ $niddle ]; } $out=&$v; return true; } Per? ottengo questo output: Result array(1) { #->var_dump($arr); ["ciao"]=> &array(1) { ["mioa"]=> &array(1) { ["bao"]=> int(0) } } } string(2) "ok" #->var_dump($out); non mi ? chiaro cosa succede come si fa a capire a cosa puntano le variabili?!?! Perch? mi stampa &array ??? ciao -- Domenico L. icq: 645 44 861 per stupire mezz'ora basta un libro di storia, io cercai di imparare la Treccani a memoria... [F.d.A.] From domenico.lorusso at pleiade.it Tue Feb 6 10:24:07 2007 From: domenico.lorusso at pleiade.it (Domenico L.) Date: Tue Feb 6 10:41:31 2007 Subject: [Php-it] Estendere una classe o incorporare un oggetto? In-Reply-To: <4f7364fd0702050835t16b72e0dq4e1ba9f64f018774@mail.gmail.com> References: <45C3470E.8050106@pleiade.it> <4f7364fd0702050822t5935897et1efd22b891698329@mail.gmail.com> <45C75CD7.70402@pleiade.it> <4f7364fd0702050835t16b72e0dq4e1ba9f64f018774@mail.gmail.com> Message-ID: <45C84937.6060907@pleiade.it> Andrea Franceschini ha scritto: > > Il 05/02/07, Domenico L. ha scritto: > >> grazie cmq sono costretto a passare al modello mcv anche se non si >> applica benissimo a questo caso.... > > A me pare invece che il MVC si applichi abbastanza bene a questo caso. > Infatti hai le due classi A ed F a far la parte del Controller, e la > classe V che fa la parte del View. Poi, che tu abbia o meno il Model ? > un discorso a parte: il paradigma, per come la vedo io, si applica. E > allora forse s? che diventa indispensabile avere tutto in $GLOBALS e > felicit? a pacchi per tutti, io sto lavorando ad un progetto che > funziona proprio con questa logica. Dunque do qualche dettaglio in pi?: Il progetto ? si prefigge di interpretare un documento testuale e ricavarne delle variabili che poi potranno essere sostituite nel testo (un template insomma). Il documento pu? avere una parte di intestazione che non deve essere riprodotto nel documento finale. Le variabili devono poter essere richieste all'utente. Ora, adottando un modello MVC, pensavo: il modello vm ha i metodi per ricavare le variabili da un testo e per manipolare le variabili Il control si occupa di parsare il template per estrarre l'header e di tenere i fili di tutto Il form si occupa di presentare e richiedere le variabili all'utente Ora il punto ? che vm che ha, come propriet?, _variabili (che ? un array associativo $key->$struct dove $struct ? la struttura della variabile implementata da un array associativo a profondit? variabile), e altre propriet? di contorno utili per interpretare i documenti. Vm sa come manipolare ricavare gli attributi di una variabile ma non ha la logica per analizzarli. Esempio: l'attributo label ha senso solo per la classe form, il vm si limita a riconoscerlo, ma non sa che farci. In questa situazione ho che tutte le classi che ho descritto hanno necessit? di accedere e manipolare _variabili e qui mi si va a far benedire lo schema MVC, perch? cmq credo che _variabili debba essere una propriet? privata. Per ora mi fermo qui se non incasino troppo, spero di essermi spiegato ciao -- Domenico L. icq: 645 44 861 per stupire mezz'ora basta un libro di storia, io cercai di imparare la Treccani a memoria... [F.d.A.] From michel at ziobudda.net Tue Feb 6 10:22:27 2007 From: michel at ziobudda.net (Davide Michel 'ZioBudda' Morelli) Date: Tue Feb 6 10:43:38 2007 Subject: [Php-it] PHP for Microsoft AJAX Library Message-ID: <45C848D3.6090800@ziobudda.net> A small set of PHP files to support using the Microsoft AJAX Library with PHP web applications. The current release supports creating web service proxies in PHP code such that the Microsoft AJAX Library (a free download from http://ajax.asp.net) can call them from client-side code. Future releases will support localization and globalization, debug and release scripts, and more features inspired by ASP.NET AJAX. http://codeplex.com/phpmsajax -- Michel 'ZioBudda' Morelli michel@ziobudda.net Consulenza sistemistica in ambito OpenSource. Sviluppo applicazioni web dinamiche (LAMP+Ajax) Telefono: +39-3939890025 -- Fax: +39-0291390660 http://www.ziobudda.net ICQ: 58351764 http://www.ziobuddalabs.it Skype: zio_budda http://www.ajaxblog.it MSN: michel@ziobuddalabs.it From alecosnet at inwind.it Tue Feb 6 10:43:57 2007 From: alecosnet at inwind.it (Alessandro Marinuzzi) Date: Tue Feb 6 11:05:08 2007 Subject: [Php-it] Regex condizionale... Message-ID: <45C84DDD.1040102@inwind.it> Salve! Ho due regex per le immagini e vorrei usarne una diversa a seconda delle mie necessit?: if(preg_match("/\[img\=([0-9]*)x([0-9]*)\](.+?)\[\/img\]/", $body) { $body = preg_replace("/\[img\=([0-9]*)x([0-9]*)\](.+?)\[\/img\]/", '', $body); } else { $body = preg_replace("/\[img\](.+?)\[\/img\]/", '', $body); } Secondo voi funziona cos?? Attenzione scritto al volo e non testato ;-) Se conoscete un metodo migliore che ben venga :-) Questo accrocchio per un semplice motivo se ho una immagine di 400X300 la lascio inalterata perch? tanto non altera l'impaginazione nel mio blog ma se ho una immagine proveniente da una macchina fotografica da 5,1 MP ho qualche problema a farla entrare nel mio blog perc cui devo ricorrere al ridimensionamento al volo (1? caso) scrivendo [img=400x300]http://www.miosito/img/fotografia.jpg[/img] mentre se le immagini sono pi? piccole di 400x400 (2? caso) le posto direttamente senza ridurle con la seconda regex. Ci sono idee migliori delle mie? Le aspetto... :-) -- Alessandro Marinuzzi --------------------- http://www.alecos.it/ --------------------- From petdog at gmail.com Tue Feb 6 11:00:08 2007 From: petdog at gmail.com (petdog) Date: Tue Feb 6 11:21:23 2007 Subject: [Php-it] Regex condizionale... In-Reply-To: <45C84DDD.1040102@inwind.it> References: <45C84DDD.1040102@inwind.it> Message-ID: <9e51316e0702060200m2d4b75cbna02898d872fd6190@mail.gmail.com> On 2/6/07, Alessandro Marinuzzi wrote: > if(preg_match("/\[img\=([0-9]*)x([0-9]*)\](.+?)\[\/img\]/", $body) { > > $body = preg_replace("/\[img\=([0-9]*)x([0-9]*)\](.+?)\[\/img\]/", '', $body); > } else { > $body = preg_replace("/\[img\](.+?)\[\/img\]/", '', $body); > > } > > Secondo voi funziona cos?? Non hai bisogno dell'if. >> Attenzione scritto al volo e non testato ;-) Se conoscete un metodo migliore che ben venga :-) Questo accrocchio per un semplice motivo se ho una immagine di 400X300 la lascio inalterata perch? tanto non altera l'impaginazione nel mio blog ma se ho una immagine proveniente da una macchina fotografica da 5,1 MP ho qualche problema a farla entrare nel mio blog perc cui devo ricorrere al ridimensionamento al volo (1? caso) scrivendo [img=400x300]http://www.miosito/img/fotografia.jpg[/img] mentre se le immagini sono pi? piccole di 400x400 (2? caso) le posto direttamente senza ridurle con la seconda regex. Ci sono idee migliori delle mie? Le aspetto... :-) << Sara' il caso di fare un thumbnail? :D From marcello at vezz.it Tue Feb 6 11:00:22 2007 From: marcello at vezz.it (Marcello Vezzelli) Date: Tue Feb 6 11:21:37 2007 Subject: [Php-it] Regex condizionale... In-Reply-To: <45C84DDD.1040102@inwind.it> References: <45C84DDD.1040102@inwind.it> Message-ID: <45C851B6.9020203@vezz.it> Alessandro Marinuzzi wrote: > Secondo voi funziona cos?? Attenzione scritto al volo e non testato ;-) Se conoscete un metodo migliore che ben venga :-) Questo accrocchio per un semplice motivo se ho una immagine di 400X300 la lascio inalterata perch? tanto non altera l'impaginazione nel mio blog ma se ho una immagine proveniente da una macchina fotografica da 5,1 MP ho qualche problema a farla entrare nel mio blog perc cui devo ricorrere al ridimensionamento al volo (1? caso) scrivendo [img=400x300]http://www.miosito/img/fotografia.jpg[/img] mentre se le immagini sono pi? piccole di 400x400 (2? caso) le posto direttamente senza ridurle con la seconda regex. Ci sono idee migliori delle mie? Le aspetto... :-) > Si ma cos? gli utenti si scaricano lo stesso 3 mega di jpeg per poi vederla 400x300... dovresti fare il thumbnail server side con le gd2 e tenere le due versioni. Ciao Marcello From gianiaz at gianiaz.net Tue Feb 6 11:01:20 2007 From: gianiaz at gianiaz.net (Giovanni Battista Lenoci) Date: Tue Feb 6 11:22:36 2007 Subject: [Php-it] Regex condizionale... In-Reply-To: <45C84DDD.1040102@inwind.it> References: <45C84DDD.1040102@inwind.it> Message-ID: <45C851F0.1070007@gianiaz.net> Alessandro Marinuzzi ha scritto: > ________________SPONSOR______________ > Spazio pubblicitario libero. > mail a info@ziobudda.net > > > > ________________SPONSOR______________ > > Salve! Ho due regex per le immagini e vorrei usarne una diversa a > seconda delle mie necessit?: > > if(preg_match("/\[img\=([0-9]*)x([0-9]*)\](.+?)\[\/img\]/", $body) { > > $body = preg_replace("/\[img\=([0-9]*)x([0-9]*)\](.+?)\[\/img\]/", '', $body); > } else { > $body = preg_replace("/\[img\](.+?)\[\/img\]/", '', $body); > > } > > Secondo voi funziona cos?? Attenzione scritto al volo e non testato ;-) Se conoscete un metodo migliore che ben venga :-) Questo accrocchio per un semplice motivo se ho una immagine di 400X300 la lascio inalterata perch? tanto non altera l'impaginazione nel mio blog ma se ho una immagine proveniente da una macchina fotografica da 5,1 MP ho qualche problema a farla entrare nel mio blog perc cui devo ricorrere al ridimensionamento al volo (1? caso) scrivendo [img=400x300]http://www.miosito/img/fotografia.jpg[/img] mentre se le immagini sono pi? piccole di 400x400 (2? caso) le posto direttamente senza ridurle con la seconda regex. Ci sono idee migliori delle mie? Le aspetto... :-) > > Vabb? ma se posti un'immagine da 5 megapixel la spari sul web senza ridimensionarla? se il tuo blog ha 10 foto in homepage diventa un pachiderma da 20 mega... -------------- next part -------------- A non-text attachment was scrubbed... Name: gianiaz.vcf Type: text/x-vcard Size: 259 bytes Desc: not available Url : http://lists.ziobudda.net/pipermail/php-it/attachments/20070206/6547c7f0/gianiaz.vcf From alecosnet at inwind.it Tue Feb 6 11:08:41 2007 From: alecosnet at inwind.it (Alessandro Marinuzzi) Date: Tue Feb 6 11:29:53 2007 Subject: [Php-it] Regex condizionale... In-Reply-To: <45C851B6.9020203@vezz.it> References: <45C84DDD.1040102@inwind.it> <45C851B6.9020203@vezz.it> Message-ID: <45C853A9.4010605@inwind.it> Marcello Vezzelli ha scritto: > Alessandro Marinuzzi wrote: >> Secondo voi funziona cos?? Attenzione scritto al volo e non testato >> ;-) Se conoscete un metodo migliore che ben venga :-) Questo >> accrocchio per un semplice motivo se ho una immagine di 400X300 la >> lascio inalterata perch? tanto non altera l'impaginazione nel mio >> blog ma se ho una immagine proveniente da una macchina fotografica da >> 5,1 MP ho qualche problema a farla entrare nel mio blog perc cui devo >> ricorrere al ridimensionamento al volo (1? caso) scrivendo >> [img=400x300]http://www.miosito/img/fotografia.jpg[/img] mentre se le >> immagini sono pi? piccole di 400x400 (2? caso) le posto direttamente >> senza ridurle con la seconda regex. Ci sono idee migliori delle mie? >> Le aspetto... :-) >> > > Si ma cos? gli utenti si scaricano lo stesso 3 mega di jpeg per poi > vederla 400x300... > dovresti fare il thumbnail server side con le gd2 e tenere le due > versioni. > > Ciao > Marcello Ho appena testato questa e funge cos? penso che sia risolto il problema anche delle immagini da 3 mb ;-) if(preg_match("/\[img\=([0-9]*)x([0-9]*)\](.+?)\[\/img\]/", $body)) { $body = preg_replace("/\[img\=([0-9]*)x([0-9]*)\](.+?)\[\/img\]/", '', $body); } if(preg_match("/\[img\](.+?)\[\/img\]/", $body)) { $body = preg_replace("/\[img\](.+?)\[\/img\]/", '', $body); } Cos? funziona bene ;-) Cos? posso riutilizzare l'immagine ridotta per precaricare quella gigante :-P E poi non ho molta dimistichezza con le gd2... -- Alessandro Marinuzzi --------------------- http://www.alecos.it/ --------------------- From matteo.c at mif.it Tue Feb 6 11:17:40 2007 From: matteo.c at mif.it (Matteo C. - MIF) Date: Tue Feb 6 11:33:17 2007 Subject: [Php-it] imporre l'implementazione di un metodo In-Reply-To: <4f7364fd0702050812j298789a3w24eaa6d91f879400@mail.gmail.com> References: <4f7364fd0702050812j298789a3w24eaa6d91f879400@mail.gmail.com> Message-ID: <45C855C4.1000508@mif.it> Andrea Franceschini ha scritto: > Salve a tutti. Ho le solite due classi A e B con B che estende A. Ora > avrei bisogno di imporre che B implementi un metodo m() ma ho anche > bisogno di poter istanziare A, quindi non posso dichiarare A abstract > n? tantomento includere un metodo abstract nella definizione di A. > > C'? un altro modo con cui posso imporre questo requisito? Fai una classe intermedia "A2", che eredita da A, nella quale definisci tutti i metodi astratti che devono essere implementati da B. Poi B erediter? da A2 invece che direttamente da A, e il gioco ? fatto. Ciao Teo From marcello at vezz.it Tue Feb 6 11:12:19 2007 From: marcello at vezz.it (Marcello Vezzelli) Date: Tue Feb 6 11:33:38 2007 Subject: [Php-it] Regex condizionale... In-Reply-To: <45C853A9.4010605@inwind.it> References: <45C84DDD.1040102@inwind.it> <45C851B6.9020203@vezz.it> <45C853A9.4010605@inwind.it> Message-ID: <45C85483.9050409@vezz.it> Alessandro Marinuzzi wrote: >> Si ma cos? gli utenti si scaricano lo stesso 3 mega di jpeg per poi >> vederla 400x300... >> dovresti fare il thumbnail server side con le gd2 e tenere le due >> versioni. >> >> Ciao >> Marcello >> > Ho appena testato questa e funge cos? penso che sia risolto il problema > anche delle immagini da 3 mb ;-) > > if(preg_match("/\[img\=([0-9]*)x([0-9]*)\](.+?)\[\/img\]/", $body)) { > $body = preg_replace("/\[img\=([0-9]*)x([0-9]*)\](.+?)\[\/img\]/", '', $body); > } > if(preg_match("/\[img\](.+?)\[\/img\]/", $body)) { > $body = preg_replace("/\[img\](.+?)\[\/img\]/", '', $body); > } > > Cos? funziona bene ;-) Cos? posso riutilizzare l'immagine ridotta per precaricare quella gigante :-P > No, non funziona bene... usa un modem 56k per guardare il blog e non guardarlo in locale, poi mi dici... L'immagine ? ridotta IN VISUALIZZAZIONE ma non come dimensione fisica!!! Te la scarichi tutta lo stesso nelal sua interezza... che poi tu la faccia vedere grande o piccola cambia poco... > E poi non ho molta dimistichezza con le gd2... > Bastano veramente poche righe di codice, se guardi nell'help del php ci sono degli esempi che puoi usare rapidamente. Ciao Marcello From cverondini at deis.unibo.it Tue Feb 6 11:30:00 2007 From: cverondini at deis.unibo.it (Cristiano Verondini) Date: Tue Feb 6 11:52:24 2007 Subject: [Php-it] Ricercare "figlio" in un array References: <45C75F4A.9040706@pleiade.it><018c01c74945$0d194740$6301a8c0@IdeaFutura.local> <45C8409D.1090101@pleiade.it> Message-ID: <01a601c749d9$c4d20ea0$6301a8c0@IdeaFutura.local> >>> Ora questa ? la funzione che dovrebbe tornare il riferimento... non >>> l'ho ancora testata... voi cosa ne dite va? >> >> Io userei un po' di ricorsione :) > mah... in realt? era stato il mio primo pensiero, poi siccome il match > mi ritorna un array mi sembrava pi? semplice l'iterazione Secondo me la ricorsione ? pi? semplice per questo genere di applicazioni. > function seekArray(&$var, &$out, $niddle, $create=false){ Non ha senso passare per riferimento dei parametri che non devono essere modificati dalla funzione ($var), a meno che non siano oggetti. > #->supponiamo ciao[miao][bao] > $v=&$var; Se non vuoi modificare $var, non ha senso copiarlo per riferimento, a meno che non sia un oggetto. > $out=&$v; > return true; Non potresti restituire direttamente $v? > non mi ? chiaro cosa succede come si fa a capire a cosa puntano le > variabili?!?! Perch? mi stampa &array ??? Perch? fai le copie per riferimento. Cris -- Cristiano Verondini http://www.verondini.it --- [ICQ: 114 190] From giovanni.cappellini at gmail.com Tue Feb 6 11:31:51 2007 From: giovanni.cappellini at gmail.com (Giovanni Cappellini) Date: Tue Feb 6 11:54:20 2007 Subject: [Php-it] Regex condizionale... In-Reply-To: <45C851B6.9020203@vezz.it> References: <45C84DDD.1040102@inwind.it> <45C851B6.9020203@vezz.it> Message-ID: <45C85917.2020209@gmail.com> > Si ma cos? gli utenti si scaricano lo stesso 3 mega di jpeg per poi > vederla 400x300... > dovresti fare il thumbnail server side con le gd2 e tenere le due versioni. Questo ? uno di quei casi in cui non capisco perch? occorra usare le espressioni regolari... Ormai le vedo usare anche per fare il sugo... :D Io chiamo le mie immagini cos?: In resize.php vado a vedere se gi? esiste un thumb con quelle dimensioni in una mia cache, altrimenti me lo vado a creare. E i siti volano :D From therealmorpheu5 at gmail.com Tue Feb 6 11:41:46 2007 From: therealmorpheu5 at gmail.com (Andrea Franceschini) Date: Tue Feb 6 12:03:02 2007 Subject: [Php-it] imporre l'implementazione di un metodo In-Reply-To: <45C855C4.1000508@mif.it> References: <4f7364fd0702050812j298789a3w24eaa6d91f879400@mail.gmail.com> <45C855C4.1000508@mif.it> Message-ID: <4f7364fd0702060241o3b30514asaac963afed5a15be@mail.gmail.com> Il 06/02/07, Matteo C. - MIF ha scritto: > > C'? un altro modo con cui posso imporre questo requisito? > Fai una classe intermedia "A2", che eredita da A, nella quale definisci > tutti i metodi astratti che devono essere implementati da B. > Poi B erediter? da A2 invece che direttamente da A, e il gioco ? fatto. Contorto... magari lo provo, ma poi forse mi limiter? a tenere quello che ho gi? e scrivere nella documentazione "Voi scrittori di estensioni per A, DOVETE implementare il metodo m() pena gastriti croniche, pianoforti in testa, figli a ingegneria dei materiali e malfunzionamento del codice". :D From domenico.lorusso at pleiade.it Tue Feb 6 12:05:54 2007 From: domenico.lorusso at pleiade.it (Domenico L.) Date: Tue Feb 6 12:23:15 2007 Subject: [Php-it] Ricercare "figlio" in un array In-Reply-To: <01a601c749d9$c4d20ea0$6301a8c0@IdeaFutura.local> References: <45C75F4A.9040706@pleiade.it><018c01c74945$0d194740$6301a8c0@IdeaFutura.local> <45C8409D.1090101@pleiade.it> <01a601c749d9$c4d20ea0$6301a8c0@IdeaFutura.local> Message-ID: <45C86112.9060700@pleiade.it> Cristiano Verondini ha scritto: > function seekArray(&$var, &$out, $niddle, $create=false){ > > Non ha senso passare per riferimento dei parametri che non devono > essere modificati dalla funzione ($var), a meno che non siano oggetti. in $out io voglio avere un puntatore ad un componente di $var non ad una copia del componente di $var! > >> #->supponiamo ciao[miao][bao] >> $v=&$var; > > Se non vuoi modificare $var, non ha senso copiarlo per riferimento, > a meno che non sia un oggetto. ? la rappresentazione iterativa di una ricorsione di testa $v deve "puntare" (ma non stiamo parlando di puntatori, quindi forse mi sfugge qualcosa) alla posizione corrente e ... > >> $out=&$v; >> return true; > > Non potresti restituire direttamente $v? in $out voglio avere un riferimento (puntatore all'ultimo valore dell'array) in maniera che fuori della procedura possa, modificando $out modificare il valore contenuto nell'array. In soldoni dall'esempio, una volta richiamata la funzione facendo $out='ok' vorrei ottenere: array(1) { #->var_dump($arr); ["ciao"]=> &array(1) { ["mioa"]=> &array(1) { ["bao"]=> sting(2) "ok" } } } dove mi perdo? -- Domenico L. icq: 645 44 861 per stupire mezz'ora basta un libro di storia, io cercai di imparare la Treccani a memoria... [F.d.A.] From cverondini at deis.unibo.it Tue Feb 6 12:11:18 2007 From: cverondini at deis.unibo.it (Cristiano Verondini) Date: Tue Feb 6 12:33:45 2007 Subject: [Php-it] Ricercare "figlio" in un array References: <45C75F4A.9040706@pleiade.it><018c01c74945$0d194740$6301a8c0@IdeaFutura.local> <45C8409D.1090101@pleiade.it><01a601c749d9$c4d20ea0$6301a8c0@IdeaFutura.local> <45C86112.9060700@pleiade.it> Message-ID: <01f801c749df$89bd7ce0$6301a8c0@IdeaFutura.local> > $v deve "puntare" (ma non stiamo parlando di puntatori, quindi forse > mi sfugge qualcosa) alla posizione corrente e ... No, ero io che non avevo capito che volessi un riferimento all'elemento. >>> $out=&$v; >>> return true; >> >> Non potresti restituire direttamente $v? > in $out voglio avere un riferimento (puntatore all'ultimo valore > dell'array) in maniera che fuori della procedura possa, modificando $out > modificare il valore contenuto nell'array. Puoi fare in modo che la funzione restituisca un riferimento. > dall'esempio, > una volta richiamata la funzione facendo $out='ok' > vorrei ottenere: > > array(1) { #->var_dump($arr); > ["ciao"]=> > &array(1) { > ["mioa"]=> > &array(1) { > ["bao"]=> > sting(2) "ok" > } > } > } > > dove mi perdo? Ho perso il codice, ma il modo in cui hai scritto la funzione ? tutt'altro che chiaro. :) Cris -- Cristiano Verondini http://www.verondini.it --- [ICQ: 114 190] From domenico.lorusso at pleiade.it Tue Feb 6 12:29:02 2007 From: domenico.lorusso at pleiade.it (Domenico L.) Date: Tue Feb 6 12:46:28 2007 Subject: [Php-it] Ricercare "figlio" in un array In-Reply-To: <01f801c749df$89bd7ce0$6301a8c0@IdeaFutura.local> References: <45C75F4A.9040706@pleiade.it><018c01c74945$0d194740$6301a8c0@IdeaFutura.local> <45C8409D.1090101@pleiade.it><01a601c749d9$c4d20ea0$6301a8c0@IdeaFutura.local> <45C86112.9060700@pleiade.it> <01f801c749df$89bd7ce0$6301a8c0@IdeaFutura.local> Message-ID: <45C8667E.9050703@pleiade.it> Cristiano Verondini ha scritto: > Ho perso il codice, ma il modo in cui hai scritto la funzione ? > tutt'altro che chiaro. :) Lo rimando :-) con qualche commento in pi? ( non ? che mi viene in mente una approccio molto pi? chiaro, dovendo anche creare, vedi sotto) function seekArray(&$var, &$out, $niddle, $create=false){ #->supponiamo ciao[miao][bao] $v=&$var; $step=array(); $er='#^(\w+)((\[\w+\])*)$#sD'; #->Individuo la prima chiave che non ? tra quadre preg_match_all($er,$niddle,$m); if (empty($m[1][0]) and !$create) return false; $step[]=$m[1][0];#->ciao #->Se ci sono dati individuo le chiavi successive, che sono tra quadre if (!empty($m[2][0])){ $niddle=$m[2][0];#->[miao][bao] $er ='#\[(\w+)\]#sD'; preg_match_all($er,$niddle,$m); if (count($m[1])) $step=array_merge($step,$m[1]); } #->a questo punto $step ? un array che contiene la sequenza dei figli da cercare o (se $create ? a true) da creare $n=count($step); #->Questo ? a parte che potrei rendere ricorsiva (con l'aggiunta di una $er che mi ritorna la prima chiave) for ($i=0;$i<$n;$i++){ $niddle=$step[$i]; if (!isset($v[ $niddle ])) if (!$create) return false; else $v=array( $niddle =>$i); $v = &$v[ $niddle ]; } #->Ora mi aspetto che $out si riferisca a $var['ciao']['miao']['bao'] $out=&$v; return true; } In effetti se stampo $out questo contiene 2 che ? il valore di $var['ciao']['miao']['bao'], ma se poi assegno qualcosa a $out le modifiche non si applicano anche a $var['ciao']['miao']['bao'] Ciao P.S. provo a vedere se riesco a fare una implementazione solo ricorsiva -- Domenico L. icq: 645 44 861 per stupire mezz'ora basta un libro di storia, io cercai di imparare la Treccani a memoria... [F.d.A.] From cverondini at deis.unibo.it Tue Feb 6 12:52:50 2007 From: cverondini at deis.unibo.it (Cristiano Verondini) Date: Tue Feb 6 13:15:14 2007 Subject: [Php-it] Ricercare "figlio" in un array References: <45C75F4A.9040706@pleiade.it><018c01c74945$0d194740$6301a8c0@IdeaFutura.local> <45C8409D.1090101@pleiade.it><01a601c749d9$c4d20ea0$6301a8c0@IdeaFutura.local> <45C86112.9060700@pleiade.it><01f801c749df$89bd7ce0$6301a8c0@IdeaFutura.local> <45C8667E.9050703@pleiade.it> Message-ID: <021201c749e5$573ef270$6301a8c0@IdeaFutura.local> > Lo rimando :-) con qualche commento in pi? ( non ? che mi viene in > mente una approccio molto pi? chiaro, dovendo anche creare, vedi > sotto) Io ho trovato questa soluzione. Nota che ho separato le funzioni di decodifica del 'path' verso l'elemento e di ricerca all'interno dell'array: $var = array( 'ciao' => array( 'miao' => array( 'bao' => 'valore' ) ) ); var_dump($var); // test per la ricerca $el =& FindInArray($var, array('ciao', 'miao', 'bao')); $el = 'Nuovo Valore'; var_dump($var); // test per la creazione $el =& FindInArray($var, array('uno', 'due', 'tre'), TRUE); $el = 'Elemento creato'; var_dump($var); // test per la decodifica del path var_dump(PathDecode('root')); var_dump(PathDecode('root[l1][l2][l3]')); // decodifica un path nella forma: // root[l1][l2][l3] // restituendo: // array('root', 'l1', 'l2', 'l3') function PathDecode($path) { return preg_split('/[^\w]+/', $path, -1, PREG_SPLIT_NO_EMPTY); } function &FindInArray(&$var, $path, $create = FALSE){ $el =& $var; for ($i = 0, $m = count($path); $i < $m; $i++) { if (! isset($el[ $path[$i] ])) { if (! $create) return NULL; $el[ $path[$i] ] = ''; } $el =& $el[ $path[$i] ]; } return $el; } From domenico.lorusso at pleiade.it Tue Feb 6 13:10:27 2007 From: domenico.lorusso at pleiade.it (Domenico L.) Date: Tue Feb 6 13:27:50 2007 Subject: [Php-it] Ricercare "figlio" in un array In-Reply-To: <021201c749e5$573ef270$6301a8c0@IdeaFutura.local> References: <45C75F4A.9040706@pleiade.it><018c01c74945$0d194740$6301a8c0@IdeaFutura.local> <45C8409D.1090101@pleiade.it><01a601c749d9$c4d20ea0$6301a8c0@IdeaFutura.local> <45C86112.9060700@pleiade.it><01f801c749df$89bd7ce0$6301a8c0@IdeaFutura.local> <45C8667E.9050703@pleiade.it> <021201c749e5$573ef270$6301a8c0@IdeaFutura.local> Message-ID: <45C87033.8060301@pleiade.it> Cristiano Verondini ha scritto: >> mente una approccio molto pi? chiaro, dovendo anche creare, vedi >> sotto) > Lo rimando :-) con qualche commento in pi? ( non ? che mi viene in > > Io ho trovato questa soluzione. Nota che ho separato le funzioni di > decodifica del 'path' verso l'elemento e di ricerca all'interno > dell'array: uhm... la studio e ti dico per ora grazie -- Domenico L. icq: 645 44 861 per stupire mezz'ora basta un libro di storia, io cercai di imparare la Treccani a memoria... [F.d.A.] From domenico.lorusso at pleiade.it Tue Feb 6 14:28:18 2007 From: domenico.lorusso at pleiade.it (Domenico L.) Date: Tue Feb 6 14:59:26 2007 Subject: [Php-it] Ricercare "figlio" in un array In-Reply-To: <021201c749e5$573ef270$6301a8c0@IdeaFutura.local> References: <45C75F4A.9040706@pleiade.it><018c01c74945$0d194740$6301a8c0@IdeaFutura.local> <45C8409D.1090101@pleiade.it><01a601c749d9$c4d20ea0$6301a8c0@IdeaFutura.local> <45C86112.9060700@pleiade.it><01f801c749df$89bd7ce0$6301a8c0@IdeaFutura.local> <45C8667E.9050703@pleiade.it> <021201c749e5$573ef270$6301a8c0@IdeaFutura.local> Message-ID: <45C88272.9060000@pleiade.it> Cristiano Verondini ha scritto: > Io ho trovato questa soluzione. Nota che ho separato le funzioni di > decodifica del 'path' verso l'elemento e di ricerca all'interno > dell'array: Dunque la scelta di avere una pathDecode (come mai sintassi .net like?) potrebbe essere comoda, tuttavia la tua fa una split senza controllo sintattico cio? che effettivamente sia nella forma: _word_ ( [ _word_ ] )* ( _word_ ? l'equivalente di \w+, gli spazi *non* sono significativi ) Detto questo mi sembra che poi la FindInArray sia identica alla seconda parte della mia, la differenza ? che fai tornare il riferimento, e in effetti modificata la mia per far tornare un riferimento tutto funziona... Non capisco perch? per? .. :-( Hai scelto l'iterazione perch? ti sembrava meglio o perch? era gi? scritta? come al solito grazie mille! :-) -- Domenico L. icq: 645 44 861 per stupire mezz'ora basta un libro di storia, io cercai di imparare la Treccani a memoria... [F.d.A.] From alecosnet at inwind.it Tue Feb 6 14:45:54 2007 From: alecosnet at inwind.it (Alessandro Marinuzzi) Date: Tue Feb 6 15:14:46 2007 Subject: [Php-it] Regex condizionale... In-Reply-To: <45C85917.2020209@gmail.com> References: <45C84DDD.1040102@inwind.it> <45C851B6.9020203@vezz.it> <45C85917.2020209@gmail.com> Message-ID: <45C88692.3030807@inwind.it> Giovanni Cappellini ha scritto: >> dovresti fare il thumbnail server side con le gd2 e tenere le due >> versioni. > Si ma cos? gli utenti si scaricano lo stesso 3 mega di jpeg per poi > vederla 400x300... > > Questo ? uno di quei casi in cui non capisco perch? occorra usare le > espressioni regolari... Ormai le vedo usare anche per fare il sugo... :D > > Io chiamo le mie immagini cos?: > > > > In resize.php vado a vedere se gi? esiste un thumb con quelle > dimensioni in una mia cache, altrimenti me lo vado a creare. E i siti > volano :D Oky! fatto! ma adesso mi ritrovo con questo problema: [img]http://alecos.no-ip.org/set/thumb.php?src=http://alecos.no-ip.org/img/AmigaOS39-1280x1024.png&x=400&y=400&f=0&t=2[/img] mi piacerebbe fare come segue: if (preg_match("/\[img\](.+?)\[\/img\]/", $body)) { $body = preg_replace("/\[img\](.+?)\[\/img\]/", '', $body); } prendendo $src da qui: src=http://alecos.no-ip.org/img/AmigaOS39-1280x1024.png come posso passare "src" alla regex? -- Alessandro Marinuzzi --------------------- http://www.alecos.it/ --------------------- From cverondini at deis.unibo.it Tue Feb 6 15:11:00 2007 From: cverondini at deis.unibo.it (Cristiano Verondini) Date: Tue Feb 6 15:34:03 2007 Subject: [Php-it] Ricercare "figlio" in un array References: <45C75F4A.9040706@pleiade.it><018c01c74945$0d194740$6301a8c0@IdeaFutura.local> <45C8409D.1090101@pleiade.it><01a601c749d9$c4d20ea0$6301a8c0@IdeaFutura.local> <45C86112.9060700@pleiade.it><01f801c749df$89bd7ce0$6301a8c0@IdeaFutura.local> <45C8667E.9050703@pleiade.it><021201c749e5$573ef270$6301a8c0@IdeaFutura.local> <45C88272.9060000@pleiade.it> Message-ID: <023f01c749f8$a4efe250$6301a8c0@IdeaFutura.local> > Dunque la scelta di avere una pathDecode (come mai sintassi .net > like?) Hem, in che senso? :)) > potrebbe essere comoda, tuttavia la tua fa una split senza > controllo sintattico cio? che effettivamente sia nella forma: > _word_ ( [ _word_ ] )* > > ( _word_ ? l'equivalente di \w+, gli spazi *non* sono significativi ) No, la funzione non fa alcun controllo, ma un preg_match() ti permette di capire se ? in formato corretto (non ho considerato che quell'informazione dovesse essere validata). > Detto questo mi sembra che poi la FindInArray sia identica alla > seconda parte della mia, la differenza ? che fai tornare il > riferimento, e in effetti modificata la mia per far tornare un > riferimento tutto funziona... Non so la tua, ho riscritto da capo ... :P > Hai scelto l'iterazione perch? ti sembrava meglio o perch? era gi? > scritta? Perch? avevi parlato di soluzione iterativa, e quindi ne ho proposta una ... e tutto sommato adesso che ho capito cosa deve fare la funzione, l'approccio iterativo ? sicuramente pi? efficiente! :)) Cris -- Cristiano Verondini http://www.verondini.it --- [ICQ: 114 190] From domenico.lorusso at pleiade.it Tue Feb 6 15:29:10 2007 From: domenico.lorusso at pleiade.it (Domenico L.) Date: Tue Feb 6 15:46:44 2007 Subject: [Php-it] Ricercare "figlio" in un array In-Reply-To: <023f01c749f8$a4efe250$6301a8c0@IdeaFutura.local> References: <45C75F4A.9040706@pleiade.it><018c01c74945$0d194740$6301a8c0@IdeaFutura.local> <45C8409D.1090101@pleiade.it><01a601c749d9$c4d20ea0$6301a8c0@IdeaFutura.local> <45C86112.9060700@pleiade.it><01f801c749df$89bd7ce0$6301a8c0@IdeaFutura.local> <45C8667E.9050703@pleiade.it><021201c749e5$573ef270$6301a8c0@IdeaFutura.local> <45C88272.9060000@pleiade.it> <023f01c749f8$a4efe250$6301a8c0@IdeaFutura.local> Message-ID: <45C890B6.5060605@pleiade.it> Cristiano Verondini ha scritto: >> Dunque la scelta di avere una pathDecode (come mai sintassi .net >> like?) > Hem, in che senso? :)) beh: esempioSintassiTipoJava EsempioSintassiTipoDotNet > Hai scelto l'iterazione perch? ti sembrava meglio o perch? era gi? >> scritta? > > Perch? avevi parlato di soluzione iterativa, e quindi ne ho > proposta una ... e tutto sommato adesso che ho capito cosa deve fare > la funzione, l'approccio iterativo ? sicuramente pi? efficiente! :)) beh almeno una cosa l'avevo imbroccata :-) grazie ancora -- Domenico L. icq: 645 44 861 per stupire mezz'ora basta un libro di storia, io cercai di imparare la Treccani a memoria... [F.d.A.] From cverondini at deis.unibo.it Tue Feb 6 15:40:37 2007 From: cverondini at deis.unibo.it (Cristiano Verondini) Date: Tue Feb 6 16:03:07 2007 Subject: [Php-it] Ricercare "figlio" in un array References: <45C75F4A.9040706@pleiade.it><018c01c74945$0d194740$6301a8c0@IdeaFutura.local> <45C8409D.1090101@pleiade.it><01a601c749d9$c4d20ea0$6301a8c0@IdeaFutura.local> <45C86112.9060700@pleiade.it><01f801c749df$89bd7ce0$6301a8c0@IdeaFutura.local> <45C8667E.9050703@pleiade.it><021201c749e5$573ef270$6301a8c0@IdeaFutura.local> <45C88272.9060000@pleiade.it><023f01c749f8$a4efe250$6301a8c0@IdeaFutura.local> <45C890B6.5060605@pleiade.it> Message-ID: <025d01c749fc$c7ef3f40$6301a8c0@IdeaFutura.local> >>> Dunque la scelta di avere una pathDecode (come mai sintassi .net >>> like?) >> Hem, in che senso? :)) > esempioSintassiTipoJava > EsempioSintassiTipoDotNet E' un semplice camel case che ho sempre usato ... era una convenzione di un framework C++ per MacOS, che ho mutuato ... :P -- Cristiano Verondini http://www.verondini.it --- [ICQ: 114 190] From maudelgo at libero.it Tue Feb 6 16:14:43 2007 From: maudelgo at libero.it (mau) Date: Tue Feb 6 16:35:29 2007 Subject: [Php-it] strano problema con apache2 e mysql-RISOLTO In-Reply-To: <45C36519.7070903@libero.it> References: <45C36519.7070903@libero.it> Message-ID: <45C89B63.3030806@libero.it> mau ha scritto: > > ciao a tutti, > Sono nuovo di questa lista ed ho un problema che proprio non riesco a > risolvere > Ho creato una piccola applicazione in php4-mysql che girava > normalmente con apache 1.3 > Adesso ho installato apache 2 e le applicazioni php funzionano ma non > riconosce pi? le funzioni mysql; > infatti in phpinfo non compare pi? mysql, ho provato a editare > php.ini,il modulo auth_mysql ? abilitato. > Se invece rifaccio partire apache 1.3 tutto funziona perfettamente. > C'? qualcuno che ha un'idea su cosa non va? > Grazie > Maurizio > sono riuscito a trovare la soluzione!! forse potr? servire a qualcun'altro era mal definita la userdir in php.ini!! grazie a tutti comunque From gianluca at ihuri.it Tue Feb 6 16:37:21 2007 From: gianluca at ihuri.it (=?ISO-8859-1?Q?Gianluca_Ba=F9?=) Date: Tue Feb 6 16:58:36 2007 Subject: [Php-it] Funzione che deve ritornare molte cose Message-ID: <45C8A0B1.5000204@ihuri.it> Salve, come gestite una funzione che deve ritornare: false in caso di problemi (connessione al db fallita, errore query bla bla bla) 0 se per dire l'utente che deve cercare non esiste l'id dell'utente trovato altrimenti ? **mixed** cerca_utente ($id_utente) ? $id_utente = cerca_utente ($id_utente); if ( is_bool($id_utente) && (bool) $id_utente === false ) echo "errore"; else if ( $id_utente == 0 ) echo "utente non trovato"; else echo "id trovato: " . $id_utente; ? un modo giusto o ci sono altre tecniche ? Ha senso una programmazione a oggetti che fa uso di questa tecnica ? Le eccezioni possono gestire meglio una situazione del genere evitando di usare il MIXED e ritornando solo un int? Chiaritemi il concetto pls :) Grazie a tutti, saluti Gianluca From domenico.lorusso at pleiade.it Tue Feb 6 17:05:14 2007 From: domenico.lorusso at pleiade.it (Domenico L.) Date: Tue Feb 6 17:22:39 2007 Subject: [Php-it] Funzione che deve ritornare molte cose In-Reply-To: <45C8A0B1.5000204@ihuri.it> References: <45C8A0B1.5000204@ihuri.it> Message-ID: <45C8A73A.7000405@pleiade.it> Gianluca Ba? ha scritto: > > $id_utente = cerca_utente ($id_utente); > > if ( is_bool($id_utente) && (bool) $id_utente === false ) questa if ? un po' pesante e forse pi? problematica che vantaggiosa: if (false===$id_utente) #->c'? gi? il controllo del tipo elseif ($id_utente === 0 ) #->contrlli anche il tipo > Ha senso una programmazione a oggetti che fa uso di questa tecnica ? Beh se la funzione ? un metodo di un oggetto preferirei usare il try catch. Discorso diverso ? se deve esserci compatibilit? con php 4. Se invece la funzione ? solo una funzione, trovo migliore la soluzione del mixed, che ? in linea con tutte le altre di php... certo magari php6 cambier? le cose :-) Una riflessione che magari ti ? utile. Una funzione non deve generare errori se la sua chiamata sintattica ? corretta, cio? se passo i parametri in modo corretto ma la funzione riscontra un problema nel db non trovo corretto che la funzioni generi un errore, perch? cmq la funzione ? andata a buon fine, restituir? un valore indefinito. Se generi un eccezione e non utilizzi il costrutto try catch l'esecuzione dovrebbe bloccarsi, cosa che concettualmente non trovo giusta F: N->T T=N + {false} Cio? la funzione F ? definita dai Naturali in T dove T ? l'insieme dei Naturali (N) unito al simbolo false. Non vedo nulla di improprio in questa formulazione :-), anche se un po' atipico Discorso diverso invece se stiamo parlando di oggetti e metodi, in quel caso ? consono che un metodo che non riesca generi un eccezione che blocchi il processo (poi con try catch lo gestisci) Spero di aver comunicato correttamente il mio pensiero. -- Domenico L. icq: 645 44 861 per stupire mezz'ora basta un libro di storia, io cercai di imparare la Treccani a memoria... [F.d.A.] From domenico.lorusso at pleiade.it Tue Feb 6 17:10:39 2007 From: domenico.lorusso at pleiade.it (Domenico L.) Date: Tue Feb 6 17:28:05 2007 Subject: [Php-it] Ritorno per riferimento condizionale Message-ID: <45C8A87F.3030509@pleiade.it> Ciao ragazzi, mi trovo a dover gestire un metodo di un oggetto che nel 95% dei casi ritorna uno scalare nel 4% un array e nel 1% un oggetto function &get($key,$attr){ if (isset($this->_vars[$key][$attr])) return $this->_vars[$key][$attr] return null; #->php 4 niente exception! } Ma se sto tornando uno scalare vorrei *non* tornare un riferimento, ? possibile? ciao -- Domenico L. icq: 645 44 861 per stupire mezz'ora basta un libro di storia, io cercai di imparare la Treccani a memoria... [F.d.A.] From aldo.galimberti at txt.it Tue Feb 6 17:20:54 2007 From: aldo.galimberti at txt.it (Aldo Galimberti) Date: Tue Feb 6 17:42:09 2007 Subject: [Php-it] Funzione che deve ritornare molte cose In-Reply-To: <45C8A0B1.5000204@ihuri.it> References: <45C8A0B1.5000204@ihuri.it> Message-ID: <45C8AAE6.2060506@txt.it> Gianluca Ba? wrote: > Salve, > come gestite una funzione che deve ritornare: > > false in caso di problemi (connessione al db fallita, errore query bla > bla bla) > > 0 se per dire l'utente che deve cercare non esiste > > l'id dell'utente trovato altrimenti ? usando la forma procedurale ( senza usare oggetti) usavo questo approccio: function GetUser() { .... codice php che collega dal db return retVal; } dove retVal poteva assumere: un valore negativo : errore di db zero: utente non trovato un valore positivo: user id E dal valore di ritorno potevo gestire gli errori. Con PHP5 in su puoi usare la gestione delle eccezioni per gestire gli errori, molto comoda.... tipo: try { collego db if (retval = 0) throw new exception ("utente non trovato") }catch (exception e) { echo "errore db: "; } finally { chiudo db } - Aldo Galimberti - TXT Polymedia S.p.A. v.Frigia 27 - 20126 Milano Tel. +39 02 257711 Fax. +39 02 2578994 http://www.txt.it/ From alecosnet at inwind.it Tue Feb 6 18:07:06 2007 From: alecosnet at inwind.it (Alessandro Marinuzzi) Date: Tue Feb 6 18:28:21 2007 Subject: [Php-it] Regex condizionale... In-Reply-To: <45C88692.3030807@inwind.it> References: <45C84DDD.1040102@inwind.it> <45C851B6.9020203@vezz.it> <45C85917.2020209@gmail.com> <45C88692.3030807@inwind.it> Message-ID: <45C8B5BA.8010604@inwind.it> Alessandro Marinuzzi ha scritto: > Giovanni Cappellini ha scritto: > >>> dovresti fare il thumbnail server side con le gd2 e tenere le due >>> versioni. >>> >> Si ma cos? gli utenti si scaricano lo stesso 3 mega di jpeg per poi >> vederla 400x300... >> >> Questo ? uno di quei casi in cui non capisco perch? occorra usare le >> espressioni regolari... Ormai le vedo usare anche per fare il sugo... :D >> >> Io chiamo le mie immagini cos?: >> >> >> >> In resize.php vado a vedere se gi? esiste un thumb con quelle >> dimensioni in una mia cache, altrimenti me lo vado a creare. E i siti >> volano :D >> > Oky! fatto! ma adesso mi ritrovo con questo problema: > > [img]http://alecos.no-ip.org/set/thumb.php?src=http://alecos.no-ip.org/img/AmigaOS39-1280x1024.png&x=400&y=400&f=0&t=2[/img] > > mi piacerebbe fare come segue: > > if (preg_match("/\[img\](.+?)\[\/img\]/", $body)) { > $body = preg_replace("/\[img\](.+?)\[\/img\]/", '', $body); > } > > prendendo $src da qui: > src=http://alecos.no-ip.org/img/AmigaOS39-1280x1024.png > > come posso passare "src" alla regex? > > Forse non mi spiego con: http://www.alecos.it/set/thumb.php?src=http://www.alecos.it/img/Windows_Royale_01.png&x=300&y=300&f=0&t=2 ottengo una perfetta immagine ridimensionata che rispetta il rapporto 1:1 perch? anche se scrivo 300 e 300 lo script aggiuster? questi valori per renderli in rapporto 1:1 ma il problema non ? questo ma quello di avere sempre in una cartella l'immagine originale da dover mostrare... come posso fare a linkare l'immagine originale con quella ridotta? l'idea di base era quella di usare una regex ma posso anche adoperare una soluzione diversa se solo mi venisse prospettata: if (preg_match("/\[img\](.+?)\[\/img\]/", $body)) { $body = preg_replace("/\[img\](.+?)\[\/img\]/", '', $body); } *$src *non ? un valore valido nella regex!!! Come posso fare? -- Alessandro Marinuzzi --------------------- http://www.alecos.it/ --------------------- -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.ziobudda.net/pipermail/php-it/attachments/20070206/5c49d38e/attachment.htm From petdog at gmail.com Tue Feb 6 18:22:18 2007 From: petdog at gmail.com (petdog) Date: Tue Feb 6 18:43:36 2007 Subject: [Php-it] Regex condizionale... In-Reply-To: <45C8B5BA.8010604@inwind.it> References: <45C84DDD.1040102@inwind.it> <45C851B6.9020203@vezz.it> <45C85917.2020209@gmail.com> <45C88692.3030807@inwind.it> <45C8B5BA.8010604@inwind.it> Message-ID: <9e51316e0702060922p48c0bab3x36e59007385f62d7@mail.gmail.com> On 2/6/07, Alessandro Marinuzzi wrote: > > Forse non mi spiego con: > http://www.alecos.it/set/thumb.php?src=http://www.alecos.it/img/Windows_Royale_01.png&x=300&y=300&f=0&t=2 > ottengo una perfetta immagine ridimensionata che rispetta il rapporto 1:1 > perch? anche se scrivo 300 e 300 lo script aggiuster? questi valori per > renderli in rapporto 1:1 ma il problema non ? questo ma quello di avere > sempre in una cartella l'immagine originale da dover mostrare... > come posso fare a linkare l'immagine originale con quella ridotta? > > l'idea di base era quella di usare una regex ma posso anche adoperare una > soluzione diversa se solo mi venisse prospettata: > if (preg_match("/\[img\](.+?)\[\/img\]/", $body)) { > $body = preg_replace("/\[img\](.+?)\[\/img\]/", ' HREF="$src">', $body); > } > $src non ? un valore valido nella regex!!! Come posso fare? 1) (a costo di ripetermi) L'if non ti serve! 2) $body = preg_replace("/\[img\](.+?)\[\/img\]/", '', $body); From st.jonathan at gmail.com Tue Feb 6 18:28:48 2007 From: st.jonathan at gmail.com (Jonathan Stoppani) Date: Tue Feb 6 18:50:11 2007 Subject: [Php-it] Funzione che deve ritornare molte cose In-Reply-To: <45C8AAE6.2060506@txt.it> References: <45C8A0B1.5000204@ihuri.it> <45C8AAE6.2060506@txt.it> Message-ID: On Feb 6, 2007, at 5:20 , Aldo Galimberti wrote: > > usando la forma procedurale ( senza usare oggetti) usavo questo > approccio: > > function GetUser() { > .... codice php che collega dal db > > return retVal; > } > > > dove retVal poteva assumere: > > un valore negativo : errore di db > zero: utente non trovato > un valore positivo: user id > E dal valore di ritorno potevo gestire gli errori. > > Con PHP5 in su puoi usare la gestione delle eccezioni per gestire > gli errori, molto comoda.... > > tipo: > > try { > collego db > > if (retval = 0) throw new exception ("utente non trovato") > > }catch (exception e) { > echo "errore db: "; > } > finally { > chiudo db > } > > > - > Aldo Galimberti - TXT Polymedia S.p.A. > v.Frigia 27 - 20126 Milano > Tel. +39 02 257711 Fax. +39 02 2578994 > http://www.txt.it/ Dubito che fai il finally... :D Puoi anche estendere exception e fare dei catch diversificati: UserNotFoundException extends Exception DatabaseException extends Exception e poi try { $user = new User($id); } catch (UserNotFoundException $e) { echo "User not foud"; } catch (DatabaseException $e) { echo "Database error"; Logger::error($e->getMessage()); } Best Regards, Jonathan Stoppani --------------------------------- WWW: http://www.garetjax.info ICQ: 322754291 AIM: garetjax@mac.com MSN+GTalk: st.jonathan@gmail.com From alecosnet at inwind.it Tue Feb 6 19:01:27 2007 From: alecosnet at inwind.it (Alessandro Marinuzzi) Date: Tue Feb 6 19:22:43 2007 Subject: [Php-it] Regex condizionale... In-Reply-To: <9e51316e0702060922p48c0bab3x36e59007385f62d7@mail.gmail.com> References: <45C84DDD.1040102@inwind.it> <45C851B6.9020203@vezz.it> <45C85917.2020209@gmail.com> <45C88692.3030807@inwind.it> <45C8B5BA.8010604@inwind.it> <9e51316e0702060922p48c0bab3x36e59007385f62d7@mail.gmail.com> Message-ID: <45C8C277.8060306@inwind.it> petdog ha scritto: > On 2/6/07, Alessandro Marinuzzi wrote: >> >> Forse non mi spiego con: >> http://www.alecos.it/set/thumb.php?src=http://www.alecos.it/img/Windows_Royale_01.png&x=300&y=300&f=0&t=2 >> >> ottengo una perfetta immagine ridimensionata che rispetta il >> rapporto 1:1 >> perch? anche se scrivo 300 e 300 lo script aggiuster? questi valori per >> renderli in rapporto 1:1 ma il problema non ? questo ma quello di avere >> sempre in una cartella l'immagine originale da dover mostrare... >> come posso fare a linkare l'immagine originale con quella ridotta? >> >> l'idea di base era quella di usare una regex ma posso anche >> adoperare una >> soluzione diversa se solo mi venisse prospettata: >> if (preg_match("/\[img\](.+?)\[\/img\]/", $body)) { >> >> $body = preg_replace("/\[img\](.+?)\[\/img\]/", '', $body); >> >> } >> >> $src non ? un valore valido nella regex!!! Come posso fare? > > 1) (a costo di ripetermi) L'if non ti serve! Tolta! > > 2) $body = preg_replace("/\[img\](.+?)\[\/img\]/", '', $body); > > $body = preg_replace("/\[img\](.+?)\[\/img\]/", '', $body); si ma cos? non posso specificare di volta in volta le dimensioni scelte sono costretto a subirmi le dimensioni imposte dalla regex... mentre io avrei voluto mettere come immagine: http://www.alecos.it/set/thumb.php?src=http://www.alecos.it/img/Windows_Royale_01.png&x=200&y=200&f=0&t=2 in modo da poter scegliere di volta in volta il formato pi? consono. Cmq alla tua idea non avevo pensato ;-) -- Alessandro Marinuzzi --------------------- http://www.alecos.it/ --------------------- From alecosnet at inwind.it Tue Feb 6 19:25:22 2007 From: alecosnet at inwind.it (Alessandro Marinuzzi) Date: Tue Feb 6 19:46:52 2007 Subject: [Php-it] Regex condizionale... In-Reply-To: <9e51316e0702060922p48c0bab3x36e59007385f62d7@mail.gmail.com> References: <45C84DDD.1040102@inwind.it> <45C851B6.9020203@vezz.it> <45C85917.2020209@gmail.com> <45C88692.3030807@inwind.it> <45C8B5BA.8010604@inwind.it> <9e51316e0702060922p48c0bab3x36e59007385f62d7@mail.gmail.com> Message-ID: <45C8C812.8070309@inwind.it> petdog ha scritto: > cut... > 2) $body = preg_replace("/\[img\](.+?)\[\/img\]/", '', $body); > Ho risolto cos?: $body = preg_replace("/\[img\=([0-9]*)x([0-9]*)\](.+?)\[\/img\]/", '', $body); e la invoco cos?: [img=300x300]http://www.alecos.it/img/Windows_Royale_01.png[/img] Grazie a tutti :-) Allego il file che uso per le immagini :-) Cos? chiunque pu? trovare risposta ai suoi quesiti ;-) Vi amo ? dir poco :-P -- Alessandro Marinuzzi --------------------- http://www.alecos.it/ --------------------- -------------- next part -------------- A non-text attachment was scrubbed... Name: thumb.zip Type: application/x-zip-compressed Size: 2294 bytes Desc: not available Url : http://lists.ziobudda.net/pipermail/php-it/attachments/20070206/00b08d2b/thumb.bin From fabiogandola at tiscali.it Tue Feb 6 23:43:32 2007 From: fabiogandola at tiscali.it (Fabio) Date: Wed Feb 7 00:05:00 2007 Subject: [Php-it] Problema molto strano su $GLOBALS e $_POST References: <000301c747d4$974e04e0$0201a8c0@athlonxp1800> <45C66599.3040503@beccati.com> Message-ID: <000501c74a40$3afb2b50$0201a8c0@athlonxp1800> Ciao Grazie al tuo consiglio ho risolto il problema.. E praticamente mi son accorto che ho anche lo stesso problema se faccio setcookie("pippo", "ciao") e poi uso delle globals tipo $GLOBALS['pippo']['pluto'] = 'ciao' in pratica mi pare di aver capito che anche in questo caso se register globals ? on.. il cookie, mi danneggia il mio array.. Ora sto cercando di capire se posso usare setcookie("pippo[cookie", ...) e poi leggerlo come $_COOKIE['pippo']['cookie'] Grazie comunque perch? senza il tuo aiuto avrei perso non so quanto tempo a venirne fuori... Ciao! From aldo.galimberti at txt.it Wed Feb 7 08:28:25 2007 From: aldo.galimberti at txt.it (Aldo Galimberti) Date: Wed Feb 7 08:49:48 2007 Subject: [Php-it] Funzione che deve ritornare molte cose In-Reply-To: References: <45C8A0B1.5000204@ihuri.it> <45C8AAE6.2060506@txt.it> Message-ID: <45C97F99.4020500@txt.it> Jonathan Stoppani wrote: > Dubito che fai il finally... :D > Riguardando il pseudocodice, confermo la tua osservazione ;) L'avevo scritto di getto... :) > Puoi anche estendere exception e fare dei catch diversificati: > > UserNotFoundException extends Exception > DatabaseException extends Exception Vero. Ed e' uno dei punti che mi piace in Java /C++ > try { > $user = new User($id); > } catch (UserNotFoundException $e) { > echo "User not foud"; > } catch (DatabaseException $e) { > echo "Database error"; > Logger::error($e->getMessage()); > } Piu tempo passa piu mi rendo conto di essere indietro con PHP anche perche' finora non ho avuto progetti personali che mi interessino e che facciano uso di PHP... Ormai lavoro piu in Java ma anche seguo un progetto OpenSW scritto in C (e in fase di riscrittura in C++) -- Aldo Galimberti - TXT Polymedia S.p.A. v.Frigia 27 - 20126 Milano Tel. +39 02 257711 Fax. +39 02 2578994 http://www.txt.it/ From ubik at ubiks.it Wed Feb 7 11:08:50 2007 From: ubik at ubiks.it (ubik) Date: Wed Feb 7 11:26:51 2007 Subject: [Php-it] PHP e OGC Message-ID: <45C9A532.1010705@ubiks.it> Qualcuno conosce una libreria (free) PHP che consenta il parsing di dati OGC? Fondamentalmente, quello che mi serve e' una funzione che, ad esempio, data una stringa WKT, ne estragga tutte le informazioni (tipo di oggetto, coordinate dei punti, numero dei punti, ecc.). Grazie ubik From ubik at ubiks.it Wed Feb 7 11:45:17 2007 From: ubik at ubiks.it (ubik) Date: Wed Feb 7 12:03:17 2007 Subject: [Php-it] PHP e OGC In-Reply-To: <45C9A532.1010705@ubiks.it> References: <45C9A532.1010705@ubiks.it> Message-ID: <45C9ADBD.8050101@ubiks.it> > Qualcuno conosce una libreria (free) PHP che consenta il parsing di > dati OGC? > > Fondamentalmente, quello che mi serve e' una funzione che, ad esempio, > data una stringa WKT, ne estragga tutte le informazioni (tipo di > oggetto, coordinate dei punti, numero dei punti, ecc.). Nell'attesa di qualche prezioso suggerimento da qualche iscritto alla lista, mi son fatto due funzioncine che, per ora, sono sufficienti per i miei scopi. Le posto nel caso possano tornare utili a qualcun altro: $pointarr[0],'lon'=>$pointarr[1]); } return ($array); } function wkt_point_toarray($wktstring) { $wktstring = str_replace('POINT(','',$wktstring); $wktstring = str_replace(')','',$wktstring); $array = explode(',',trim($wktstring)); return (array('lat'=>$array[0],'lon'=>$array[1])); } // // mini-esempio // $wktpoint = 'POINT(1,2)'; $wktlinestring = 'LINESTRING(0 0, 10 10, 20 25, 50 60)'; echo '
';
echo '
'.$wktpoint.'
'; print_r(wkt_point_toarray($wktpoint)); echo '
'.$wktlinestring.'
'; print_r(wkt_linestring_toarray($wktlinestring)); echo '
'; ?> Ciao ubik From andrea.colanicchia at gmail.com Wed Feb 7 14:02:35 2007 From: andrea.colanicchia at gmail.com (Andrea Colanicchia) Date: Wed Feb 7 14:25:13 2007 Subject: [Php-it] Estendere una classe o incorporare un oggetto? In-Reply-To: <45C84937.6060907@pleiade.it> References: <45C3470E.8050106@pleiade.it> <4f7364fd0702050822t5935897et1efd22b891698329@mail.gmail.com> <45C75CD7.70402@pleiade.it> <4f7364fd0702050835t16b72e0dq4e1ba9f64f018774@mail.gmail.com> <45C84937.6060907@pleiade.it> Message-ID: <30c0ddde0702070502v2fed1501n3df3425c34838ad1@mail.gmail.com> Scusa da quello che ho capito, correggimi se sbaglio, tu devi estendere una classe A con metodi e propriet? che appartengono ad altre classi, F e V. Quindi diciamo che devi "decorare" A con le propiet? e i metodi di F e V, potendo accedere poi alle propriet? e ai metodi di tutti. Io ci vedo bene il pattern "decorator" (http://en.wikipedia.org/wiki/Decorator_pattern). In pratica invece di estendere devi comporre gli oggetti, che ? poi quello che penso tu chieda nell'oggetto. In pratica nel tuo caso dovresti fare cos?: F incorpora A (F->A) e V incorpora F (V->F->A), che contiene gi? A. Accedendo a V quindi hai la possibilit? di accedere a tutti e tre gli oggetti. Se devi aggiungere un altro oggetto O, devi fargli incorprare V (O->V->F->A) e cos? via. Non se se ? questo che ti serviva... Andrea. From domenico.lorusso at pleiade.it Wed Feb 7 14:33:27 2007 From: domenico.lorusso at pleiade.it (Domenico L.) Date: Wed Feb 7 14:50:57 2007 Subject: [Php-it] Estendere una classe o incorporare un oggetto? In-Reply-To: <30c0ddde0702070502v2fed1501n3df3425c34838ad1@mail.gmail.com> References: <45C3470E.8050106@pleiade.it> <4f7364fd0702050822t5935897et1efd22b891698329@mail.gmail.com> <45C75CD7.70402@pleiade.it> <4f7364fd0702050835t16b72e0dq4e1ba9f64f018774@mail.gmail.com> <45C84937.6060907@pleiade.it> <30c0ddde0702070502v2fed1501n3df3425c34838ad1@mail.gmail.com> Message-ID: <45C9D527.7040605@pleiade.it> Andrea Colanicchia ha scritto: > Io ci vedo bene il pattern "decorator" > (http://en.wikipedia.org/wiki/Decorator_pattern). > [..] > > Se devi aggiungere un altro oggetto O, devi fargli incorprare V > (O->V->F->A) e cos? via. > > Non se se ? questo che ti serviva... uhm... n?, nel senso che il mio problema sta nel fatto che alcune propriet? non pubbliche devono essere accedute da altre classi. Nel tuo esempio O->V->F->A Immagina che A abbia la propriet? *privata* teta e che V debba potervi accedere. Questo problema non sono riuscito a risolverlo. Altre problematiche li incontro quando necessito di gestire alcuni metodi di V che possiedono la logica di utilizzo dei dati di A ma i metodi che fanno inferenza su questi dati necessitano di un accesso diretto... alla fine ho optato per una soluzione che mette insieme MVC, factory e decoration.. (anche se non ? linearissima, ho dovuto accettare dei compromessi:-( ) Ho la classe Control (C)che fa pochissime cose ma ? di fatto il Factory Mette a disposizione i metodi per impostare e creare il VariableModel (VM), la Form (F) e il builder (B) F e B hanno il metodo link che permette di impostare le propriet? private _parent (riferiemnto a C) e _vm ( riferimento a VM ) In questo modo F, che implementa l'interfaccia di acquisizione dati, e B, che implementa la metodologia di costruzione dell'output) posso accedere direttamnte a VM VM dal canto suo mette a disposizione molti (troppi) metodi per accedere e manipolare i propri dati Volendo potrei fare in modo che F, C e B condividano con VM l'attributo teta di cui sopra, ma per ora cerco di evitarlo :-) Prima bastava istanziare una classe ora occorre istanziarne 4. Per ovviare mi occorre rendere C il componente (non concreto) dell'esempio di cui hai postato il link. Aggiungendo i metodi pi? comuni dei 4 oggetti E' corretto? ciao -- Domenico L. icq: 645 44 861 per stupire mezz'ora basta un libro di storia, io cercai di imparare la Treccani a memoria... [F.d.A.] From andrea.colanicchia at gmail.com Wed Feb 7 16:04:18 2007 From: andrea.colanicchia at gmail.com (Andrea Colanicchia) Date: Wed Feb 7 16:25:54 2007 Subject: [Php-it] Estendere una classe o incorporare un oggetto? In-Reply-To: <45C9D527.7040605@pleiade.it> References: <45C3470E.8050106@pleiade.it> <4f7364fd0702050822t5935897et1efd22b891698329@mail.gmail.com> <45C75CD7.70402@pleiade.it> <4f7364fd0702050835t16b72e0dq4e1ba9f64f018774@mail.gmail.com> <45C84937.6060907@pleiade.it> <30c0ddde0702070502v2fed1501n3df3425c34838ad1@mail.gmail.com> <45C9D527.7040605@pleiade.it> Message-ID: <30c0ddde0702070704g6fe80337j4a2f3501e955227a@mail.gmail.com> On 2/7/07, Domenico L. wrote: > Immagina che A abbia la propriet? *privata* teta e che V debba potervi > accedere. > > Questo problema non sono riuscito a risolverlo. Infatti non penso si possa risolvere, a meno che tu non controlli nei metodi setter e getter di A che chi sta accedendo alla variabile sia V, vietando l'accesso a tutti gli altri. Non so di preciso come fare questa cosa, ma penso che si possa fare... > Altre problematiche li incontro quando necessito di gestire alcuni > metodi di V che possiedono la logica di utilizzo dei dati di A ma i > metodi che fanno inferenza su questi dati necessitano di un accesso > diretto... Vedi sopra. > alla fine ho optato per una soluzione che mette insieme MVC, factory e > decoration.. (anche se non ? linearissima, ho dovuto accettare dei > compromessi:-( ) > > > Ho la classe Control (C)che fa pochissime cose ma ? di fatto il Factory > > Mette a disposizione i metodi per impostare e creare il VariableModel > (VM), la Form (F) e il builder (B) > > F e B hanno il metodo link che permette di impostare le propriet? > private _parent (riferiemnto a C) e _vm ( riferimento a VM ) > > > In questo modo F, che implementa l'interfaccia di acquisizione dati, e > B, che implementa la metodologia di costruzione dell'output) posso > accedere direttamnte a VM B dovrebbe essere il controller? Secondo me, per rispettare il modello MVC, solo B dovrebbe manipolare i dati di VM, mentre F dovrebbe solo controllare lo stato di VM, anzi dovrebbe essere notificato dello stato di VM, come in un "observer". > VM dal canto suo mette a disposizione molti (troppi) metodi per accedere > e manipolare i propri dati VM ? il model giusto? Beh il model deve esporre i propri metodi e propriet?, non ? sbagliato. > Volendo potrei fare in modo che F, C e B condividano con VM l'attributo > teta di cui sopra, ma per ora cerco di evitarlo :-) Cio?? Condividere in che senso? > Prima bastava istanziare una classe ora occorre istanziarne 4. Il prezzo della flessibilit? :) > Per ovviare mi occorre rendere C il componente (non concreto) > dell'esempio di cui hai postato il link. > > Aggiungendo i metodi pi? comuni dei 4 oggetti > > E' corretto? Beh, il problema che stai affrontando mi sembra un po' complesso e ? difficile da qui ovviamente capire bene tutto, diciamo che devi trovare un compromesso tra la teoria dei pattern di cui stiamo parlando e le esigenze concrete a cui devi rispondere. Insomma, se fa qualcosa che a te funziona bene ed ? abbastanza usabile e gestibile diciamo che ci sei. :) Andrea. From franco at inpe.unipi.it Wed Feb 7 16:39:53 2007 From: franco at inpe.unipi.it (Francesco F) Date: Wed Feb 7 17:02:50 2007 Subject: [Php-it] Mysqli function Message-ID: <45C9F2C9.9030503@inpe.unipi.it> Dopo aver abbandonato il PDO, ho pensato di far due prove con le funzioni mysqli prima di passare definitivamente ad adodb o mdb2, ma anche qui i problemi abbondano: alcune funzioni non si comportano come dovrebbero e alcune query non danno il corretto risultato; esiste un modo per fare un "debug" della query? (non vorrei ci fosse qualche problema con il bind). Premesso che utilizzo php5.1.6, passare alla 5.2 (da compilare) ? auspicabile oppure archivio definitivamente Mysqli e/o PDO? Grazie, Francesco From domenico.lorusso at pleiade.it Wed Feb 7 17:30:22 2007 From: domenico.lorusso at pleiade.it (Domenico L.) Date: Wed Feb