Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

problemi con dokuwiki e php 5.3

5 views
Skip to first unread message

Dingo

unread,
Dec 28, 2009, 12:11:12 PM12/28/09
to

salve amici phpisti

scusate se vengo qui a chiedere aiuto, forse potreste darmi una mano

oggi, come regalo natalizio, di punto in bianco e senza dirmi nulla , netsons
ha pensato bene di implementare php 5.3, senza nemmeno immaginare i problemi
che vrebbe dato forse confidavano nell'aiuto di ges� bambino, chiss�)

purtroppo dokuwiki (e non solo) non lo digeriscono bene

e mi d� numerosi errori, alcuni dei quali ho gi� corretto ma per altri non
so ceh fare, il sito �p questo:

http://puppylover.netsons.org/dokupuppy

e questi gli errori, posso fare qualcosa oltre naturalmente a cercarmi un hosting
serio che non mi faccia questi scherzi?

Deprecated: Function split() is deprecated in /home/puppylov/public_html/dokupuppy/inc/auth.php
on line 154

Warning: Cannot modify header information - headers already sent by (output
started at /home/puppylov/public_html/dokupuppy/inc/auth.php:154) in /home/puppylov/public_html/dokupuppy/inc/actions.php
on line 131
******************************
Deprecated: Assigning the return value of new by reference is deprecated in
/home/puppylov/public_html/dokupuppy/inc/parser/parser.php on line 66

Deprecated: Assigning the return value of new by reference is deprecated in
/home/puppylov/public_html/dokupuppy/inc/parser/lexer.php on line 292

Deprecated: Assigning the return value of new by reference is deprecated in
/home/puppylov/public_html/dokupuppy/inc/parser/handler.php on line 22

Deprecated: Assigning the return value of new by reference is deprecated in
/home/puppylov/public_html/dokupuppy/inc/parser/handler.php on line 49

Deprecated: Assigning the return value of new by reference is deprecated in
/home/puppylov/public_html/dokupuppy/inc/parser/handler.php on line 213

Deprecated: Assigning the return value of new by reference is deprecated in
/home/puppylov/public_html/dokupuppy/inc/parser/handler.php on line 241

Deprecated: Assigning the return value of new by reference is deprecated in
/home/puppylov/public_html/dokupuppy/inc/parser/handler.php on line 295

Deprecated: Assigning the return value of new by reference is deprecated in
/home/puppylov/public_html/dokupuppy/inc/parser/handler.php on line 328

Deprecated: Assigning the return value of new by reference is deprecated in
/home/puppylov/public_html/dokupuppy/inc/parser/handler.php on line 575

Alessandro Pellizzari

unread,
Dec 28, 2009, 12:55:22 PM12/28/09
to
Il Mon, 28 Dec 2009 18:11:12 +0100, Dingo ha scritto:

> e questi gli errori, posso fare qualcosa oltre naturalmente a cercarmi
> un hosting serio che non mi faccia questi scherzi?
>
> Deprecated: Function split() is deprecated in
> /home/puppylov/public_html/dokupuppy/inc/auth.php on line 154

Devi sostituirla con preg_split, ma la sintassi delle regexp e`
leggermente diversa, quindi devi capire cosa fa e tradurla.



> Deprecated: Assigning the return value of new by reference is deprecated
> in /home/puppylov/public_html/dokupuppy/inc/parser/parser.php on line 66

Questi dovrebbero essere abbastanza semplici da correggere, sperando non
abbiano fatto cose troppo sporche.

Posta la riga che ti riporta che vediamo come l'hanno scritta.

Bye.

Dingo

unread,
Dec 28, 2009, 2:35:16 PM12/28/09
to

Alessandro Pellizzari <shur...@amiran.it> wrote:
>Il Mon, 28 Dec 2009 18:11:12 +0100, Dingo ha scritto:

>> Deprecated: Function split() is deprecated in
>> /home/puppylov/public_html/dokupuppy/inc/auth.php on line 154
>
>Devi sostituirla con preg_split, ma la sintassi delle regexp e`
>leggermente diversa, quindi devi capire cosa fa e tradurla.

[...]

le regex non sono il mio forte, forse posso prendere spunto dal codice delle
ultime versioni di dokuwiki

>> Deprecated: Assigning the return value of new by reference is deprecated
>> in /home/puppylov/public_html/dokupuppy/inc/parser/parser.php on
>line 66
>
>Questi dovrebbero essere abbastanza semplici da correggere, sperando
>non abbiano fatto cose troppo sporche.

[...]
s�, ho scoperto che il carattere deprecato era l'ampersand (&) l'ho eliminato
e ora non ho pi� quel tipo di errori, rimangono quelli relativi a split e
questo altro (sempre con split) curiosamente non su tutte le pagine

Deprecated: Function split() is deprecated in /home/puppylov/public_html/dokupuppy/inc/parser/lexer.php
on line 510

almeno fino ad ora, sono alla ricerca di eventuali altri errori.

Dingo

unread,
Dec 28, 2009, 3:14:26 PM12/28/09
to

"Dingo" <ding...@fastmail.fm> wrote:
[...]

a proposito dei problemi con split() in /inc/auth.php (dokuwiki) l'ho sostituito
con

explode()

e sembra tutto risolto ora - mi riservo di controllare per scovare eventuali
altri errori, grazie per lo spunto se, socme spero, ho risolto, se avete altri
suggerimenti od osservazioni sono bene accetti naturalmente

visto che il php 5.3 mi ha causato questo fastidio (o meglio � stata netsons
che � passata al 5.3 di punto in bianco), ci sono lati positivi nell'upgrade
da php 5.2 al 5.3?

Dingo

unread,
Dec 28, 2009, 3:18:20 PM12/28/09
to
[...]
ho parlato troppo presto, non riesco pi� a fare il login dopo questa modifica
e mi compaiono questi errori

Deprecated: Function split() is deprecated in /home/puppylov/public_html/dokupuppy/inc/auth/plain.class.php
on line 281

Deprecated: Function split() is deprecated in /home/puppylov/public_html/dokupuppy/inc/auth/plain.class.php
on line 282

Deprecated: Function split() is deprecated in /home/puppylov/public_html/dokupuppy/inc/auth/plain.class.php
on line 281

Deprecated: Function split() is deprecated in /home/puppylov/public_html/dokupuppy/inc/auth/plain.class.php
on line 282

Deprecated: Function split() is deprecated in /home/puppylov/public_html/dokupuppy/inc/auth/plain.class.php
on line 281

Deprecated: Function split() is deprecated in /home/puppylov/public_html/dokupuppy/inc/auth/plain.class.php
on line 282

Deprecated: Function split() is deprecated in /home/puppylov/public_html/dokupuppy/inc/auth/plain.class.php
on line 281

Deprecated: Function split() is deprecated in /home/puppylov/public_html/dokupuppy/inc/auth/plain.class.php
on line 282

Deprecated: Function split() is deprecated in /home/puppylov/public_html/dokupuppy/inc/auth/plain.class.php
on line 281

Deprecated: Function split() is deprecated in /home/puppylov/public_html/dokupuppy/inc/auth/plain.class.php
on line 282

Deprecated: Function split() is deprecated in /home/puppylov/public_html/dokupuppy/inc/auth/plain.class.php
on line 281

Deprecated: Function split() is deprecated in /home/puppylov/public_html/dokupuppy/inc/auth/plain.class.php
on line 282

Deprecated: Function split() is deprecated in /home/puppylov/public_html/dokupuppy/inc/auth/plain.class.php
on line 281

Deprecated: Function split() is deprecated in /home/puppylov/public_html/dokupuppy/inc/auth/plain.class.php
on line 282

Warning: Cannot modify header information - headers already sent by (output

started at /home/puppylov/public_html/dokupuppy/inc/auth/plain.class.php:281)
in /home/puppylov/public_html/dokupuppy/inc/auth.php on line 135

Warning: Cannot modify header information - headers already sent by (output

started at /home/puppylov/public_html/dokupuppy/inc/auth/plain.class.php:281)
in /home/puppylov/public_html/dokupuppy/inc/actions.php on line 311

Alessandro Pellizzari

unread,
Dec 29, 2009, 1:58:23 AM12/29/09
to
Il Mon, 28 Dec 2009 21:14:26 +0100, Dingo ha scritto:

> a proposito dei problemi con split() in /inc/auth.php (dokuwiki) l'ho
> sostituito con
>
> explode()
>
> e sembra tutto risolto ora

Questo funziona se split era stato usato in modo semplice, senza regexp
ma con solo caratteri di "esplosione".
Se dentro c'e` una regexp devi sostituirlo con preg_split, come ho detto.

> visto che il php 5.3 mi ha causato questo fastidio (o meglio è stata
> netsons che è passata al 5.3 di punto in bianco), ci sono lati positivi


> nell'upgrade da php 5.2 al 5.3?

A parte tutte le nuove funzionalita` (namespace in primis) che pero`
sfrutti solo se scrivi codice apposta per la 5.3, dovrebbe essere piu`
veloce nel garbage collection e in alcune altre funzioni.

Ma visto che hai preso pezzi di codice dalla nuova versione di docuwiki,
non e` che magari quella e` compatibile con la 5.3 di PHP?

Inoltre, se e` una cosa urgentissima, puoi farti disabilitare i warning
sul server, visto che per ora quello di split e` solo un deprecation
warning, e verra` effettivamente rimosso solo dalla 6.0 di PHP?

Forse puoi farlo anche da solo con ini_set, magari in un file che viene
incluso da tutte le pagine.

Poi con calma, in locale, ti installi PHP 5.3 e inizi a sistemare il
codice, o segnali i bug a quelli di docuwiki.

Bye.

Dingo

unread,
Dec 29, 2009, 5:51:13 AM12/29/09
to

Alessandro Pellizzari <shur...@amiran.it> wrote:

>Ma visto che hai preso pezzi di codice dalla nuova versione di docuwiki,
>non e` che magari quella e` compatibile con la 5.3 di PHP?
>Inoltre, se e` una cosa urgentissima, puoi farti disabilitare i warning
>sul server

[...]
alla fine ho fatto cos�, avevo, in public_html

la cartella

dokupuppy

ho creato

dokupuppy2

e ci ho installato l'ultima versione di dokuwiki (che aveva corretto questi
problemi) ho importato le pagine del wiki, aggiunto i plugin e tutto il resto
ed ho attivato la riscrittura url nel file .htaccess

#############
RewriteEngine on

RewriteBase /dokupuppy2
###############

a questo punto, poich� l'installazione funzionava ho pensato di

rinominare la cartella dokupuppy2 in dokupuppy
e la cartella dokupuppy (contenente la vecchia installazione che dava problemi
con il php 5.3) in dokupuppy 1

quando ho rinominato la cartella dokupuppy2 in dokupuppy (l'url del sito �

http://puppylover.netsons.org/dokupuppy/)

ho modificato il file .htaccess in modo da riflettere il cambiamento

#############
RewriteEngine on

RewriteBase /dokupuppy
###############

e la home si vedeva bene, ma cliccando sui coillegamenti, usciva una scritta
del tipo: impossibile trovare il percorso /lib/.exe ecc...

allora ho fatto cos�:

in dokupuppy il file .htaccess :

#############
RewriteEngine on

RewriteBase /dokupuppy2
###############

e in dokupuppy2

#############
RewriteEngine on

RewriteBase /dokupuppy2
###############

in questo modo, digitando l'indirizzo:

http://puppylover.netsons.org/dokupuppy/programs:genealogy

la pagina effettiva che viene visualizzata � in realt� quella corrispondente
alla nuova installazione funzionante:

http://puppylover.netsons.org/dokupuppy2/programs:genealogy

con questo stratagemma il contenuto del sito � di nuovo accessibile, ma mi
chiedo perch� dopo aver rinominato dokupuppy2 in dokupuppy e aver cambiato
la riscrittura url, mi desse quell'errore. forse dokuwiki memorizza qualcosa
riguardo al percorso in cui viene installato? O forse sono io che ho fatto
un gran casino con le regole di riscrittura url?

0 new messages