2016-12-25 10 views
0

MySQLi에서 사용자 정의 오류 시스템을 만들고 싶습니다. 모든 오류 코드가있는 목록과 오류 원인에 대한 설명이 필요합니다.MySQLi에서 발생할 수있는 모든 오류를 찾을 수있는 곳

$mysqli = new mysqli('invalid_host', 'root', '', 'db'); 

다음 오류 : 나는 모든 웹을 통해 검색 한하지만 호스트가 유효하지 않은 새 개체를 만드는 경우 예를 들어 php.net


에 아무것도 찾을 수 없습니다

코드는 2002이되므로 주소를 찾을 수 없습니다.

php_network_getaddresses : 실패 getaddrinfo는 :

원래 오류가 보이는 노드 이름도 servname 제공, 또는

를 알 수없는하지만 디스플레이에 원하는 것 :

연결 오류! 데이터베이스에 연결하는 중 문제가 발생했습니다. 이것은 유효하지 않은 호스트 이름 인 "invalid_host"로 인해 발생합니다. 연결이 불가능하거나 ping 할 수없는 것 같습니다! (2002)


내가 MySQLi에서 발생 시킬수 할 수있는 모든 오류를 알아야합니다 그렇게하기 위해, 난 아직 그래서 당신이 목록에 대해 알고있는 경우 여기에 요청하고 목록을 발견하지 않았습니다


당신은 내가의 포함 배열을 가질 계획입니다 그것을 할거야 궁금해하는 경우 :

$error_list = [ 
    2002 => [ 
     'category' => 'connection_errors', 
     'error_title' => 'Connection error!', 
     'error_content' => 'There was an problem connecting to the database, this is caused by your invalid hostname: "invalid_host" which seems to not be connectable or pingable!', 
     'error_code' => '2002', 
     'error_description' => 'This error is occurred by invalid hostname. Why is this error occurring? It is occurring because you have entered invalid hostname, such as: "msql. example .com"' 
    ] 

    // And so on 
]; 

누군가가 그러한 목록을 어디에서 찾을 수 있는지 알고 있으면이 프로젝트가 앞으로 공유 될 것이고, 끝나면 링크가있는 주석을 추가 할 것입니다.


프로젝트는 또한 MySQLi와 함께 MySQL 서버에 대한보다 쉽고 안전한 (준비된) 쿼리를 만들 수 있습니다.

+1

http://dev.mysql.com/doc/refman/8.0/en/error-messages-server.html – JimL

+0

및 ... https://dev.mysql.com/doc/refman/5.5/en /error-messages-client.html –

+0

PHP MySQLi @JimL을 찾고 있지 않아야하나요? –

답변

0

그러나 나는 그것을 표시 할 것 :

당신은 그것을 원하지 않습니다. 간단히 you're not the sole user of your site입니다.

사이트 사용자에게는 여전히 횡설수설입니다. 물론 정직한 사용자는 "잘못된 호스트 이름 제공"으로 고소당하는 것이 당황 스러울 것입니다!
성숙한 사이트를 가져 가면 그런 내용이 전혀 표시되지 않습니다. 일반화 된 오류 페이지에 "오류가 있습니다. 이미 처리 중입니다."

프로그래머에게 실제 오류 메시지 옆의 모든 내용은 쓸모없는 쓰레기이며 실제 유용한 정보를 담고 있습니다.쓸모없는 것들 대신에 스택 트레이스, 실제 SQL 쿼리, 몇 가지 중요한 변수를 추가하는 것이 좋습니다. 다시 큰 소년에게서 배우십시오 : 좋은 프레임 워크는 오류 메시지뿐만 아니라 오류가 발생한 코드 스 니펫까지 보여줍니다.

모든 점에 대해 저는 mysqli를 향상시키기위한 귀하의 아이디어를 이해합니다. 하지만 먼저 구내를 확인해야합니다. 은 오류보고의 진정한 목적을 이해하기 위해 잠시 동안 라이브 사이트을 실행하는 것이 매우 중요합니다.

마치면 사이트를 담당하게되며, 이런 종류의 오류가 발생합니다. 오류 메시지의 의미가 무엇인지 모를지라도 Google에 올려 놓을 수 있습니다. 원래의 오류 메시지는 나에게 1000 개의 결과를 줄 것인데 사용자 정의가 나에게 줄 것이다 아무 것도. 제발, 자신의 말로 오류 메시지를 다시 말하지 마십시오. 중요한 부분을 잃을 수도 있습니다. 또한 쓸모없는 설명으로 오류 메시지를 처리하지 않아야합니다. 그냥 혼자두고 프로그래머가 읽을 지 확인하십시오.