downgrade a php 4

Postate qui se avete consigli per migliorare i pacchetti disponibili in questo sito o se avete problemi con installazione, funzionamento o altro.

Moderatore: Staff

Regole del forum
1) Citare in modo preciso il nome del pacchetto.
2) Specificare se discussione/suggerimento o richiesta d'aiuto.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
Avatar utente
tojo72
Linux 2.x
Linux 2.x
Messaggi: 210
Iscritto il: dom 4 gen 2004, 0:00
Kernel: 2.6.32-22
Desktop: LXDE
Distribuzione: Lubuntu
Contatta:

downgrade a php 4

Messaggio da tojo72 »

volevo chiedere un consiglio...
siccome le stragrande maggioranza dei webserver utilizza ancora php 4, fare dei test in locale con php 5 di slack 12 non sempre e' utile.
per cui vorrei tornare alla versione 4 di slack 11

cosa e' meglio fare?

1) rimuovere php 5 e installare il pkg di php 4
2) rimuovere php 4, apache, mysql di slack 12 e installare quelli di slack 11
3) rimuovere php 5 e compilare php4
4) ditemi voi ;)

volevo inoltre sapere se e' possibile avere contemporaneamente php 4 e 5 (se si in che modo e come devo agire con apache)

Avatar utente
aschenaz
Staff
Staff
Messaggi: 4623
Iscritto il: mer 28 lug 2004, 0:00
Nome Cognome: Nino
Slackware: current
Kernel: 5.4.x
Desktop: KDE
Località: Reggio Calabria
Contatta:

Messaggio da aschenaz »

Ma secondo me non è strettamente necessario downgradare. Basta non usare funzioni specifiche del php5, no?

In ogni caso, se hai a disposizione una seconda macchina, faresti meglio a testare con entrambi...

Avatar utente
tojo72
Linux 2.x
Linux 2.x
Messaggi: 210
Iscritto il: dom 4 gen 2004, 0:00
Kernel: 2.6.32-22
Desktop: LXDE
Distribuzione: Lubuntu
Contatta:

Messaggio da tojo72 »

uno script semplice semplice come questo con php 5 non va

html:

Codice: Seleziona tutto

<HTML>
<HEAD>
<TITLE>Semplice modulo di feedback</TITLE>
</HEAD>
<BODY>

<FORM METHOD="post" ACTION="invia_semplicemodulo.php">


<P><strong>Il tuo nome:</strong><br>
<INPUT type="text" NAME="nome_mittente" SIZE=30></P>

<P><strong>Il tuo indirizzo e-mail:</strong><br>
<INPUT type="text" NAME="email_mittente" SIZE=30></P>

<P><strong>Messaggio:</strong><br>
<TEXTAREA NAME="messaggio" COLS=30 ROWS=5 WRAP=virtual></TEXTAREA></P>

<P><INPUT TYPE="submit" NAME="invio" VALUE="Invia il modulo!"></P>

</FORM>

</BODY>
</HTML>
php a cui punta la pagina precedente:

Codice: Seleziona tutto

<?

if (($nome_mittente == "") || ($email_mittente == "") || ($messaggio == "")) {
        header("Location: http://localhost/semplice_modulo.html");
        exit;
}


$messaggio = "E-MAIL INVIATA DAL SITO WEB\n";
$messaggio .= "Nome del mittente:  $nome_mittente\n";
$messaggio .= "Indirizzo e-mail del mittente:    $email_mittente\n";
$messaggio .= "Messaggio:          $messaggio\n\n";

$destinatario = "tu@iltuoemail.it";
$oggetto = "Modulo di feedback completo del sito web";
$intestazionimail = "From: Il mio sito web<> \n";
$intestazionimail .= "Reply-To: $email_mittente\n\n";

mail($destinatario, $oggetto, $messaggio, $intestazionimail);

?>

<HTML>
<HEAD>
<TITLE>Il feedback è stato inviato</TITLE>
</HEAD>
<BODY>

<H1>L'e-mail seguente è stata inviata con successo:</H1>

<P><strong>Il tuo nome:</strong><br>
<? echo "$nome_mittente"; ?>

<P><strong>Il tuo indirizzo e-mail:</strong><br>
<? echo "$email_mittente"; ?>

<P><strong>Messaggio:</strong><br>
<? echo "$messaggio"; ?>

</BODY>
</HTML>
:roll: piu' semplice di cosi... si muore... MA NON VA
in pratica "post" non passa le stringhe al file in "action"

su slack 11 questo script funzionava

Avatar utente
aschenaz
Staff
Staff
Messaggi: 4623
Iscritto il: mer 28 lug 2004, 0:00
Nome Cognome: Nino
Slackware: current
Kernel: 5.4.x
Desktop: KDE
Località: Reggio Calabria
Contatta:

Messaggio da aschenaz »

In questo caso non si tratta di php4 o php5: è una questione di register_globals.
Per motivi di sicurezza, da una certa versione in poi del php4, il register_globals (che trovi in php.ini) è settato di default a 'off' e questo comporta che le variabili che passi con un form non diventano automaticamente globali e non le puoi semplicemente richiamare col nome della variabile.

Per richiamare le variabili passate da un form, devi usare $_POST["nome_variablie"] (con il metodo 'post') e $_GET["nome_variabile"] (con 'get' o con le variabili comunque passate con una query-string); oppure puoi usare $_REQUEST["nome_variabile"] che vale per entrambi i metodi.

Settare a 'on' il register_globals è assolutamente sconsigliabile: un sito, in quelle condizioni, diventa un vero colabrodo. IMHO è anche opportuno non abusare di $_REQUEST: usare $_POST o $_GET, in base alle esigenze, ti limita il campo di eventuali attacchi...

Ciao,
nino

Avatar utente
tojo72
Linux 2.x
Linux 2.x
Messaggi: 210
Iscritto il: dom 4 gen 2004, 0:00
Kernel: 2.6.32-22
Desktop: LXDE
Distribuzione: Lubuntu
Contatta:

Messaggio da tojo72 »

questa si che e' una risposta!!!

adesso devo uscire, ma domani ci do un occhiata meglio!

grazie 8)

Avatar utente
tojo72
Linux 2.x
Linux 2.x
Messaggi: 210
Iscritto il: dom 4 gen 2004, 0:00
Kernel: 2.6.32-22
Desktop: LXDE
Distribuzione: Lubuntu
Contatta:

Messaggio da tojo72 »

nino for president

la tua risposta e' stata davvero illuminante!
e' bastato settare register_globals = On per far funzionare vecchi script (e io che credevo che il problema stesse "solo" nella versione di php")
Settare a 'on' il register_globals è assolutamente sconsigliabile
ne ho bisogno solo per i test in locale, quindi il problema non si pone ;)

ciao & grazie

Avatar utente
aschenaz
Staff
Staff
Messaggi: 4623
Iscritto il: mer 28 lug 2004, 0:00
Nome Cognome: Nino
Slackware: current
Kernel: 5.4.x
Desktop: KDE
Località: Reggio Calabria
Contatta:

Messaggio da aschenaz »

Anche se si tratta di semplici test, sarebbe comunque meglio abituarsi al register_globals disattivato. Poi, nel caso tu debba mettere tutto on-line, che fai, modifichi tutto il codice?
Considera che ormai tutti gli hosting hanno quel flag a 'off'...

Rispondi