2011-01-10 2 views
0

my_sql 데이터베이스에 연결하는 동안 문제가 발생했습니다. PHP를 처음 접했을 때 매우 간단합니다.php my_sql 연결 문제가

try 
    { 
     echo 'here 1'; 
     $db=mysql_connect('localhost', 'root', 'password') or die(mysql_error()); 
     echo 'here 2'; 
     if(!$db) 
     { 
     echo 'here 3'; 
     } 
     $db_selected=mysql_select_db("alphaes", $db); 
     echo 'here 4'; 

     if (!$db_selected) { 
     die ('Can\'t use foo : ' . mysql_error()); 
     } 
     echo 'here 5'; 
    } 
    catch (Exception $e) 
    { 
     echo 'Caught exception: ', $e->getMessage(), "\n"; 
    } 

문제는 페이지에서 유일한 출력은 '여기 1'이다 : 내 index.php를 상단 나는 다음과 같은 코드가 있습니다. 페이지가로드 될 때 모든 데이터베이스 코드를 주석 처리하면됩니다. 연결 코드에 문제가 있지만 브라우저에 mysql_error 또는 예외가 기록되지 않습니다. 이것들은 어딘가에 파일에 기록됩니까? 누구든지 코드 문제를 볼 수 있습니까?

사용자 이름과 암호가 정확합니다. 나는 그것 때문에 mysql_error 필요하다고 생각

$db=mysql_connect('localhost', 'root', 'password') or die(mysql_error());

: 그것은 단지 "여기 1"로 출력하는 경우

어떤 도움이 많이 감사합니다

,

마크는

+0

예외가 발생하지 않습니다. mysql 드라이버는 지원하지 않지만 나머지는 이상합니다. 그 어리석은 다이를 좀 더 똑똑한 것으로 바꿀 것을 제안합니다. if (! $ db) 예를 들어 뭔가를 던져 –

+7

'ini_set ('display_errors', 'On'); error_reporting (E_ALL);'--- 스크립트 시작 부분에 이것을 넣으십시오. – zerkms

+0

@Col. Shrapnel : 나는 그가 플러그인되지 않은 mysql 확장을 가지고 있다고 확신한다. – zerkms

답변

0

감사합니다 - 그것은 매우 것을 밝혀 '초보자'오류 - PHP 구성 파일에서 mysql을 사용할 수 없습니다.

-1

는 코드가 정차 의미 mysql_connect에서 마지막 연결을 얻으려면 연결이 실패한다.

docs :

MySQL 연결. 링크 식별자가 지정되지 않으면, mysql_connect()에 의해 열린 마지막 링크가 가정된다. 그런 링크가 발견되지 않으면, mysql_connect()가 아무런 인자없이 호출 되어진 것처럼을 생성하려고합니다. 연결이 없거나 설정되지 않으면 E_WARNING 수준의 오류가 생성됩니다.

(강조 광산)

http://php.net/manual/en/function.mysql-error.php

일부 문자열 출력 mysql_error을 변경 시도하고 작동되는지 확인합니다. 작동하면 오류가 데이터베이스 연결에 있습니다. 암호가없는

+0

여기에있는 것처럼 간단한 코드를 따르는 것이 좋습니다. '티 –

-1

시도 : 여기 $db=mysql_connect('localhost', 'root', '') or die(mysql_error());

2

예외 처리와 함께 새로운 mysqli 확장을 사용하는 매우 간단한 예제 : 대답 모든 사람에게

<?php 

ob_start(); 

try 
{ 
    $db = new mysqli("localhost", "foo_dbo", "pass", "foo_db", 3306); 

    if ($db->connect_errno) 
     throw new exception(sprintf("Could not connect: %s", $db->connect_error)); 

    $sqlCmd = "select * from users order by username"; 
    $result = $db->query($sqlCmd); 

    if(!$result) throw new exception(sprintf("Invalid query : %s", $sqlCmd)); 

    if($db->affected_rows <= 0){ 
     echo "no users found !"; 
    } 
    else{ 
     $users = $result->fetch_all(MYSQLI_ASSOC); 
     foreach($users as $u) echo $u["username"], "<br/>"; 
    } 
    $result->close(); 
} 
catch(exception $ex) 
{ 
    ob_clean(); 
    echo sprintf("zomg borked - %s", $ex->getMessage()); 
} 

if(!$db->connect_errno) $db->close(); 
ob_end_flush(); 
?>