View previous topic :: View next topic |
Author |
Message |
xavierLoS n00b
Joined: 02 Apr 2008 Posts: 23
|
Posted: Sat Dec 04, 2010 12:01 am Post subject: [RISOLTO] Html + Php .. variabile $_POST non valorizzata |
|
|
Buon giorno a tutti,
ho aggiornato il sistema con il profilo hardened il mio server web e da quel momento i miei vari siti che si basavano lo scambio dei dati tra le pagine tramite post non funzionano più..
se uso il metodo get nelle form tutto va bene.. se uso il metodo post vedo una pagina bianca , sembra quasi che il mio server non accetti più la variabile globale $_POST.
ho controllato il file php.ini apache disabilitando moduli che potevano esserne la causa ma nulla. . la variabile $_POST continua a non vunzionare . qualcuno di voi sa per caso la soluzione a questo enigma..
dalla lettura dei log di apache non vedo nulla di anomalo
i pacchetti installati sono
apache 2.2.16
php 5.3.3-r1
spero in un vostro aiuto perchè non so proprio dove sbattere la testa..
grazie mille a tutti
alessandro
Last edited by xavierLoS on Sun Dec 05, 2010 1:19 pm; edited 1 time in total |
|
Back to top |
|
|
pierino_89 Guru
Joined: 03 Oct 2009 Posts: 522
|
Posted: Sat Dec 04, 2010 2:10 am Post subject: |
|
|
Beh, in base a che parametri hai deciso che $_POST non funziona?
Hai provato a fare un var_dump() di $_POST e $_REQUEST? _________________ Linux registered user 461710 |
|
Back to top |
|
|
cloc3 Advocate
Joined: 13 Jan 2004 Posts: 4788 Location: http://www.gentoo-users.org/user/cloc3/
|
Posted: Sat Dec 04, 2010 10:18 am Post subject: |
|
|
anche a me, con il 5.3.3, è capitato qualcosa di analogo.
ma, siccome uso php per cose estremente semplici, non so dirti nulla sulla variabile _POST.
per esempio, mi sono accorto che i marcatori php devono riportare esplicitamente il nome del linguaggio, dopo il punto di domanda.
taggare con un semplice <?.... non basta più, ma è necessario scrivere: <?php ....
in pratica, bisogna fare molta attenzione ai gettagli della sintassi, perchè non sono accettate cose che, in precedenza, eravamo abituati a trascurare. _________________ vu vu vu
gentù
mi piaci tu |
|
Back to top |
|
|
pierino_89 Guru
Joined: 03 Oct 2009 Posts: 522
|
Posted: Sat Dec 04, 2010 12:18 pm Post subject: |
|
|
Le short tags sono deprecate da secoli, perché se scrivi un documento xml la prima riga è sempre tipo:
<?xml version="1.0" encoding="UTF-8"?>
e poi l'interprete va in errore se non si fa attenzione a metterla sempre come stringa. _________________ Linux registered user 461710 |
|
Back to top |
|
|
xavierLoS n00b
Joined: 02 Apr 2008 Posts: 23
|
Posted: Sat Dec 04, 2010 1:03 pm Post subject: |
|
|
Il $_POST mi da errore in quanto se lo uso mi compare una pagina bianca oppure tramite iexplorer o altro browser mi da proprio pagina non trovata.
Se invece ricarico la pagina me la carica ma mi da errore variabile non trovata.
E per fare il test ho creato una form stupidissima che mi invia i dati di un input text tramite metodo post ad un'altra pagine e provo a stampare il valore dell'input tramite
echo $_POST["prova"] ;
oppure
$prova = $_POST["prova"];
echo $prova;
ed in più o provato ad usare anche altri programmi php che facciano uso del $_POST e mi da lo stesso errore.
Non vorrei fosse un problema di criteri di sicurezza impostati tramite il profilo hardened o tramite il mod_security attivo, ma non ho toccato nulla e precedentemente tutto funzionava..
forse non è neanche la variabile $_POST a dare problemi ma il metodo utilizzato nella form.
Avete idee di cosa può essere.
grazie per la disponibilità
alessandro |
|
Back to top |
|
|
pierino_89 Guru
Joined: 03 Oct 2009 Posts: 522
|
Posted: Sat Dec 04, 2010 1:41 pm Post subject: |
|
|
usa var_dump. Almeno capiamo se popola la variabile o se ci sono problemi di configurazione. _________________ Linux registered user 461710 |
|
Back to top |
|
|
xavierLoS n00b
Joined: 02 Apr 2008 Posts: 23
|
Posted: Sat Dec 04, 2010 2:17 pm Post subject: |
|
|
Niente da fare.. sembra proprio che non venga popolato nulla.. sembra quasi che non riceva nulla.
Eseguendo la form, viene eseguito l'action ossia mi porta sulla pagina che esegue poi l'output, ma questa non mostra nulla se non pagina bianca, questo con altri browser non avviene ma avviene un errore di pagina non trovata.
Se invece eseguo la pagina di output senza passare dalla form, viene mostrato array(0) { }
io ho settato var_dump( $_POST ); |
|
Back to top |
|
|
pierino_89 Guru
Joined: 03 Oct 2009 Posts: 522
|
Posted: Sat Dec 04, 2010 2:21 pm Post subject: |
|
|
Quote: | Eseguendo la form, viene eseguito l'action ossia mi porta sulla pagina che esegue poi l'output, ma questa non mostra nulla se non pagina bianca, questo con altri browser non avviene ma avviene un errore di pagina non trovata.
|
Puzza di errore di apache. O di errore nella form.
Quote: |
Se invece eseguo la pagina di output senza passare dalla form, viene mostrato array(0) { }
|
Questo direi che è normale... Hai provato a tirargli qualcosa via post tipo con la hackbar di firefox? _________________ Linux registered user 461710 |
|
Back to top |
|
|
xavierLoS n00b
Joined: 02 Apr 2008 Posts: 23
|
Posted: Sat Dec 04, 2010 2:29 pm Post subject: |
|
|
Questa è il codice della pgaina_0.html
Code: |
<html>
<body>
<form action="prova_1.php" method="post" name="form" >
<input type="input" name="nick" >
<input type="submit" value="send" name="send" >
</form>
</body>
</html>
|
Questo il codice della pagina prova_1.php
Code: |
<?php
print $_POST["nick"];
?>
|
Ora provo la hack bar di firefox e poi ti faccio sapere ma credo che ci sia qualche cosa in apache che blocca la risposta alla richiesta fatta dalla form.. ma non ho idea di dove ..
il php.ini mi sembra ok, httpd.conf anche ..
e il kernel hardened non lo ho toccato .. proprio non capisco cosa sia successo.. i log non spiegano nulla.. |
|
Back to top |
|
|
cloc3 Advocate
Joined: 13 Jan 2004 Posts: 4788 Location: http://www.gentoo-users.org/user/cloc3/
|
Posted: Sat Dec 04, 2010 5:12 pm Post subject: |
|
|
qui da me il tuo codice funziona. _________________ vu vu vu
gentù
mi piaci tu |
|
Back to top |
|
|
xavierLoS n00b
Joined: 02 Apr 2008 Posts: 23
|
Posted: Sat Dec 04, 2010 6:19 pm Post subject: |
|
|
Lo so che il mio codice funziona.. il problema mio è capire cosa può essere successo..
ossia è:
1. un problema di php
2. un problema di apache
3. un problema del mio sistema
o che altro .. |
|
Back to top |
|
|
pierino_89 Guru
Joined: 03 Oct 2009 Posts: 522
|
Posted: Sun Dec 05, 2010 12:55 am Post subject: |
|
|
Nell'access.log di apache quando fai il submit la pagina viene richiesta correttamente? Non so, magari hai mod_rewrite o quelle robe lì che fanno casino... _________________ Linux registered user 461710 |
|
Back to top |
|
|
xavierLoS n00b
Joined: 02 Apr 2008 Posts: 23
|
Posted: Sun Dec 05, 2010 1:19 pm Post subject: |
|
|
Buon giorno, questa notte con l'aiuto di elbryan abbiamo trovato una soluzione, il problema era del sistema compilato utilizzando una versione di gcc mascherata.
Ci siamo accorti di questo problema andando a leggere i log dopo aver installato la versione ultima di apache in /var/log/apache/error_log
il messaggio era:
Code: | child pid 18798 exit signal Segmentation fault (11) |
la risoluzione è stata eseguita seguendo questi passaggi:
1. Rimozione versione mascherata di gcc e ricompilazione della versione stable di gcc
2. Rimozione dal sistema di apache e diphp, togliendo anche la voce APACHE_MODULES dal make.conf
3. emerge --depclean && revdep-rebuild
4. Installazione a nuovo di apache e php
5. Start del servizio web /etc/init.d/apache start
Grazie comunque a tutti quanti.
Alessandro |
|
Back to top |
|
|
|