Originariamente inviato da raven74
posta codice e attento pure agli spazi e a lle righe vuote
il codice tra tag [p h p], grazie
Scusa il ritardo, alcune considerazioni prima di postare il codice:settando la cartella dove inserisci lo script con permessi CHMODE 777 tutto lo script funziona correttamente.
Non potendo cambiare io personalmente i permessi dal Cpannel o dall' ftp contatto i gestori del server ed ecco la loro risposta:
il problema è naturato dal fatto che il server Aries, usa Apache 2.* con supporto dei permessi.
Questo significa che non dovrà mai più impostare una cartella su 777, poichè PHP gira con i permessi utenti e i privilegi corretti per poter leggere/scrivere/eseguire senza problemi le cartelle del suo utente FTP.
Se una cartella viene trovata con il codice CHMODE 777 verrà anzi interpretato come possibile attacco ai permessi di scrittura del cliente restituendo l'errore che lei sta visualizzando.
Ripristini pure i permessi e provi ad eseguire il file di login, potrà constatare che non è necessario alterare il CHMODE delle cartelle.
Tale modifica al server rende tutta la struttura delle directory molto più sicura, poichè PHP verrà eseguito dall'utente del cliente e non sarà possibile a nessun utente esterno lanciare script sui file del cliente.
Tutti i file devono avere permessi 644.
Tutte le cartelle devono avere permessi 755.
Alla mia risposta lo script funziona correttamente su altro server senza alcun errore con permessi 777 e indicando il link per verifica ecco la contro risposta:
Se ha escluso tutto l'HTML forse non ha altri caratteri.
Lo script deve iniziare con direttamente il codice PHP di apertura e null'altro <?php
Le assicuro che è impossibile che lo script che mi ha inviato funzioni correttamente su un altro server, semplicemente avrà un comportamento differente che forse vi sta ugualmente bene, ma di certo non potrà avere il comportamento corretto desiderato dal programmatore.
ecco il codice
Codice PHP:
<?
include("config.php");
$nick=$_GET['nick'];
$password=$_GET['password'];
$messaggio=$_GET['messaggio'];
$messaggio=stripslashes($messaggio);
$messaggio=str_replace("\n"," ",$messaggio);
$commento=$nick."|".$messaggio."\n";
$url="chat.php"."?nick=".$nick."&password=".$password;
$cercamsg = strstr($messaggio,"<");
$cercamsg2 = strstr($messaggio,">");
if (empty($messaggio))
{
Header("Location: $url");
}
elseif ($cercamsg & $cercamsg2)
{
Header("Location: $url");
}
else
{
$apri_file=fopen($file_mess,"a+");
fputs($apri_file,$commento);
fclose($apri_file);
Header("Location: $url");
}
?>
ecco l'errore
Warning: Cannot modify header information - headers already sent by (output started at /home/....../...../chat/config.php:8) in /home/........../......../chat/insert.php on line 28
grazie in anticipo per qualsiasi aiuto.