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 | |
|---|---|---|---|---|---|
|
Como Acionar máscara(mc) ao apertão botão
|
Flash & ActionScript |
raffademello
|
|
|
|
Apple permite que Verizon venda iPads nos EUA
|
Notícias |
Notícias
|
|
|
|
FORM + VALIDAÇÃO | SUBMIT = POPUP
Como enviar Submit para popup? |
Web Standards |
tiagoborges.net
|
|
|
|
Hospedagem virtual
gmail como hospedagem |
ASP |
fdoped
|
|
|
|
DÚVIDAS SOBRE SQLSERVER
Como acesso o SQLSERVER ? |
ColdFusion |
claudio.ant.oliv
|
|
|
|
Busca que leva um determinado frame! [RESOLVIDO]
Quando escrever uma palavra na busca ele levara a ao frame corresponde |
Flash & ActionScript |
walter2161
|
|
|
|
EUA afirmam que Rio teme ser alvo de terrorismo em 2016; leia em português
|
Notícias |
Notícias
|
|
|
|
iPhone desenvolve-se como plataforma para jogos
|
Notícias |
Notícias
|
|
Publicidade
|
|

Help













