2011-04-09 4 views
-1

가능한 중복 :은 $ GUconnection 자원 쿼리에서 작동하지 않는 이유는 전역 변수로 설정하기 때문에 나도 몰라
Warning: mysql_query(): 3 is not a valid MySQL-Link resourcemysql_query() : 3은 유효한 MySQL-Link 리소스가 아닙니다.

. 내가 어디

Warning: mysql_query(): 3 is not a valid MySQL-Link resource in /home/ on line 49 

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/ on line 50 
있어

global $GUconnection;  
$GUresult = mysql_query("SELECT field FROM `tablename` WHERE field = 'hey' LIMIT 1", $GUconnection);    
       if(mysql_num_rows($GUresult)) { 
        $GUfile = mysql_fetch_assoc($GUresult); 

       } 

오류 : DB를 연결 위의 MySQL의 연결을 포함하는 파일에 포함 된 다음 쿼리가 포함 파일에 있습니다

$GUconnection = mysql_connect(serverip, username, password); 
@mysql_select_db(dbname, $GUconnection) or die('Cannot connect to the database.'); 

입니다

include가없고 연결 바로 아래에 쿼리를 붙여 넣으면 작동합니다. 무슨 문제가있는 것 같습니까?

+0

연결 매개 변수는 선택 사항입니다. 일시적으로 제거하고 쿼리가 작동하는지 확인하십시오. – Headshota

+0

또 다른 연결이 있으므로 계속 사용하는 것이 현명하다고 생각하십니까? –

+5

mysql 확장이 너무 오래 되었기 때문에이 코드를 수정하지 않아도됩니다. [PDO] (http://php.net/PDO)는 더 간단하고 확장 가능하며 더 나은 기능을 제공합니다. 또한 [전역은 좋지 않습니다] (http://c2.com/cgi/wiki?GlobalVariablesAreBad). DB 연결을 단독으로 관리하는 클래스를 만들거나 [dependency injection] (http://martinfowler.com/articles/injection.html)을 사용하는 것이 더 좋습니다. – outis

답변

1

Google의 힘을 느껴보십시오.

귀하의 질문을 쓰는 동안 아무런 도움이 필요 없지만 Google 검색 상자에 붙여 넣기 만하면 정확한 오류 메시지가 나타납니다. 훨씬 적은 시간에.

+0

나는 구글에서 찾은 어떤 문제도 없었다. 다른 연결로 인한 간섭이라고 밝혀졌습니다. 어쨌든, 나는 이것을 PDO를 사용하여 구현했고 지금은 작동한다. –

+0

야, 위의 게시 된 구글에서 첫 번째 링크 야. 이 특정 문제를 찾았나요? –

0

연결이 실패 할 수 있으므로 연결 오류가 있는지 확인해야합니다.

+0

연결이 작동합니다. 나는 다른 곳에 그것을 접근 할 수 없다. –

관련 문제