Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
ola a todos.
eu fiz um script de chat e eu queria q vcs avaliassem ele.
eu ainda tenho q fazer um monte de coisas ainda mas do jeito que esta.
aceesem ele num host gratis q eu hospedei por isso fico meio lagado ....
Link : Chat mk
qual quer aviso ou dica por favor me falem ai
ou sujestoes tambem serao bem vindas
q estranho pq antes msm eu me registrei e n tinha dado esse erro ai mas valeu . isso deve ser por causa do host pq eh free
ta ocultei esse erro ai agora. era do log mas vlw pelo aviso
isso deve ser por causa do host pq eh free
Eu duvido, tem cara de falha humana (escrita das pastas).
Use sempre:
clearstatcache, file_exists, is_writable devem resolver (e ainda ajudar a encontrar seu problema)
Não use @ (nunca)!
Recomendo ao desenvolver um código sempre usar:
error_reporting(E_ALL|E_STRICT);
Não me leve a mal, mas é certo que há algumas falhas no seu código que você mesmo desconhece error_reporting vai lhe ajudar.
eu testei antes e nao tinha erro
HOST FREE eles bloqueiam tudo ate e-mail
e eu nunca uso @
o host acho q n permite q eu rescreva os arquivos. pq bloqueia varias coisas pra tu ter uma ideia pra conecta o mysql
n eh localhost
eh db.host.sk
e sobre o
error_reporting(E_ALL|E_STRICT);
eu n uso isso quando estou desenvolvendo pois ele ja mostra sozinho eu nunca oculto os erros.
Isso de não ser localhost não é bloqueio, é que o servidor mysql esta em outra estação ou maquina.
Amanha lhe passo umas duas dicas para você entender o que eu lhe disse no poste anterior
ta
Sempre que for abrir um arquivo use file_exists, is_readable, is_writable e clearstatcache.
Sempre use forks para evitar funções tentarem executar após algum erro.
Por exemplo para gravar:
clearstatcache();
$arq = 'log.txt';
if(file_exists($arq) && is_writable($arq)){
if($id = fopen($arq,'a+')){//a+, w+ , w , etc
fwrite($id,'dados');
fclose($id);
}
}
Para leitura:
clearstatcache();
$arq = 'log.txt';
if(file_exists($arq) && is_readable($arq)){
if($data= file_get_contents($arq)){
echo $data;
}
}
Trabalhar com Erros:
E_ALL = obviamente que você já sabe, mas só para confirmar, exibe todos os erros.
E_STRICT = deixa o código em modo strict, ou seja pega até aqueles erros que o PHP geralmente ignora (como variáveis não setadas).
Usando assim você aplica ambos, use somente para desenvolvimento:
error_reporting(E_ALL|E_STRICT);
Quando disponibilizar para uso use set_error_handler e register_shutdown_function (está combinada com error_get_last()) e desligue os erros para o cliente assim:
error_reporting(0);
o file_exist eu uso quase sempre mas ali eu nem de deparei pq eu peguei o sistema de login de um script
antigo meu q n funcionava direito.
ali eu n botei o error_reporting(0); pq eu disse q eu n tinha testado muito ele no host gratis.
e eu queria q vcs q fossem mais detalhistas observasem ele.
eu n tinha visto esse erro ali mas se você olhar ele eh de log.
mas valeu ai pela dica.
vou começar a usar ela
Falha grave!!!
Warning: fopen(logs/cadastro.txt): failed to open stream: Permission denied in /mnt/host-users/m/k/p/mkpro/Cadastrar.php on line 160 Warning: fwrite() expects parameter 1 to be resource, boolean given in /mnt/host-users/m/k/p/mkpro/Cadastrar.php on line 162 Warning: fclose() expects parameter 1 to be resource, boolean given in /mnt/host-users/m/k/p/mkpro/Cadastrar.php on line 163