Fiz uma funcao simples que abre o banco de dados no mysql
<?php
function AbreConexao()
{
//***** Abre Conexão com o MYSQL
$conn = mysql_connect("127.0.0.1", "root", "jff6299")
or die("Não foi possível conectar-se ao Servidor");
//***** Abre Conexão com Banco de Dados Miniautoweb
mysql_select_db("miniautoweb")
or die("Não foi possível abrir o Banco de Dados solicitado");
}
a chamei de conexaodb.php e a chamei no inquire();
Porem gostaria de sber como faco para que os erros que poderiam ocoorer ecoem na pagina em que a funcao e chamda.
Quando nao tinha funca, poderia ocorrer os dois erros, erro de conexao e erro de abertura do db.
Fiz os teste, fechando o mysql e simplesmente aparece a tela de rro do windows.
Como ecoar os erro para fora da funcao ??????
Publicidade
|
|
Page 1 of 1
Como ecoar erro de uma funcao que abre db
#2
Posted 02 September 2006 - 01:52 AM
Acho que normalmente o php já ecoa as exceções que ocorrem.
tente tirar o "die".
Isso já deve ser suficiente pra que os erros sejam ecoados na tela.
Você ainda pode iniciar seu script redefinindo o nível de erros que faz o php "parar a execução", utilizando a função error_reporting.
tente tirar o "die".
CODE
//***** Abre Conexão com Banco de Dados Miniautoweb
mysql_select_db("miniautoweb");
mysql_select_db("miniautoweb");
Isso já deve ser suficiente pra que os erros sejam ecoados na tela.
Você ainda pode iniciar seu script redefinindo o nível de erros que faz o php "parar a execução", utilizando a função error_reporting.
#3
Posted 02 September 2006 - 03:27 PM
Fabiano, é exatamento o contrário do que você falou.
Ele deve manter o "die" pois ele é quem imprime na tela a mensagem de erro caso não consiga conectar-se no DB.
Agora o problema de não aparecer a msg de erro pode ser por alguns motivos:
1) O seu php está setado para não mostrar erros
2) Tente abrir no firefox a aplicação, pois já vi algumas vezes que em mensagens de erro muito pequenas o IE coloca a página padrão de erros dele.
Ele deve manter o "die" pois ele é quem imprime na tela a mensagem de erro caso não consiga conectar-se no DB.
Agora o problema de não aparecer a msg de erro pode ser por alguns motivos:
1) O seu php está setado para não mostrar erros
2) Tente abrir no firefox a aplicação, pois já vi algumas vezes que em mensagens de erro muito pequenas o IE coloca a página padrão de erros dele.
#4
Posted 02 September 2006 - 03:37 PM
Eu não conheço esse método que você falou de "inquire()" mas segue abaixo a diferença entre require() e include():
Fonte: http://br2.php.net/manual/pt_BR/function.require.php
QUOTE
require() e include() são idênticos em todas as formas exceto pela manipulação de erros. include() produz um Warning enquanto require() produzirá um Fatal Error. Em outras palavras, não hesite em utilizar require() se na falta de um arquivo quiser parar o processamento da página. include() não se comporta da mesma maneira, e o script poderá continuar nessa situação. Em todo caso, vale a pena confirmar a configuração da diretiva include_path.
Fonte: http://br2.php.net/manual/pt_BR/function.require.php
#5
Posted 06 September 2006 - 01:42 PM
O erro é exibido como padrão quando da qualquer erro de "compilação" no servidor.
se você por um or die() alí, na verdade ele vai verificar se a função foi corretamente executada, se não ele vai para o die().
Esse método é uma maneira mais elegante de mostrar um erro, mas não seria muito legal ficar exibindo esse tipo de erro. Seria mais conveniente você tratar o erro e exibir uma mensagem ou redirecinar para uma página de erro.
Para tirar a mensagem de erro que vem por padrão no php você pode colocar uma arroba (@) antes da função. Como por exemplo:
se você por um or die() alí, na verdade ele vai verificar se a função foi corretamente executada, se não ele vai para o die().
Esse método é uma maneira mais elegante de mostrar um erro, mas não seria muito legal ficar exibindo esse tipo de erro. Seria mais conveniente você tratar o erro e exibir uma mensagem ou redirecinar para uma página de erro.
Para tirar a mensagem de erro que vem por padrão no php você pode colocar uma arroba (@) antes da função. Como por exemplo:
PHP
<?
$db = @mysql_select_db("z");
if (!$db)
header("location: erro.html");
?>
$db = @mysql_select_db("z");
if (!$db)
header("location: erro.html");
?>
#6
Posted 08 September 2006 - 10:55 AM
Resolvi o problema, configurando a opcao de mostrar erros diretamente no php.ini.
Agora todos os erros que ocorrem no script sao mostrados juntamente com a linha correspondente. Assim nao preciso ficar procurando linha por linha.
Grato pela ajuda.
Agora todos os erros que ocorrem no script sao mostrados juntamente com a linha correspondente. Assim nao preciso ficar procurando linha por linha.
Grato pela ajuda.
Share this topic:
Page 1 of 1
Similar Topics
| Topic | Forum | Started By | Stats | Last Post Info | |
|---|---|---|---|---|---|
|
É simples mas não sei como fazer me ajudem !!
Banner expansível, ou fica na frente das layers ou atras ? |
Flash & ActionScript |
Matheus Augusto
|
|
|
|
Autoridades fecham site que distribuía álbuns inéditos ilegalmente
|
Notícias |
Notícias
|
|
|
|
Erro de javascript no flash utilizando o comando <cfform format="flash
Erro de javascript no flash utilizando o comando <cfform format= |
ColdFusion |
Pepitafc
|
|
|
|
link dinâmico
como trocar o link no flash dinamicament |
Flash & ActionScript |
sevilla
|
|
|
|
tirando manchas de foto pelo fw
como tirar manchas de fotos pelo fw |
Fireworks |
cesarvenice
|
|
|
|
Camiseta claro
o que fazer |
Dúvidas Gerais |
joce.nunes
|
|
|
|
Como se faz isso ?
Esse menu é maravilhoso |
Fireworks |
Matheus Augusto
|
|
|
|
Atriz que reclama de marido no YouTube é condenada a sair de casa em NY
|
Notícias |
Notícias
|
|
Publicidade
|
|

Help













