2010-11-25 2 views
7

이 오류가 나타납니다위의 폴더에 .php 파일을 포함 시키십시오.

Warning: include(../config.php) [function.include]: failed to open stream: No such file or directory in /home/soizastu/public_html/cms/happy-api/retrieve.php on line 2 

Warning: include() [function.include]: Failed opening '../config.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/soizastu/public_html/cms/happy-api/retrieve.php on line 2 

Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'soizastu'@'localhost' (using password: NO) in /home/soizastu/public_html/cms/happy-api/retrieve.php on line 6 
Error connecting to database. 
기본적으로 CMS 폴더에있는 config.php include "../config.php"; 트릭을 할 것이라고 생각하지만 dosent 나타납니다.

+2

내가 당신의 config.php 파일이 필요한 가정 --dbconfig.php

add_dbconfig.php | --add_dbconfig.php | --includes 데이터베이스에 연결할 수 있습니다. 이 경우'include()'대신'require()'를 사용하는 것을 고려해야합니다. 이것은 include와 같은 일을하지만 실패 할 경우 치명적인 오류로 스크립트를 중지시킵니다. – greg0ire

답변

25

절대 경로를 계산하고 그 시도를 포함하여 동작한다.

include(dirname(__FILE__)."/../config.php"); 

여러 레벨의 포함을 처리 할 때 가장 안전한 방법이라고 생각합니다.

+1

나는 그것이 올바른 접근이라고 생각한다. 또한 포함 할 수 있습니다 (dirname (dirname (\ __ FILE \ __)). '/ config.php'); – Ben

+0

@Ben 아마'dirname (__ FILE __)./../');'을 의미했을 것입니다. –

+0

나는 그것을 포함하고 있다고 믿지만 그 안에 문자열을 접근 할 수 없다 : S – user393273

0

include('../config.php');

+0

죄송합니다. – user393273

+0

도 나를 위해 작동하지 않았습니다 .i는 dirname (__ FILE__)을 넣어야했습니다. 절대 경로를 검색합니다. –

1

웹 서버를 실행하는 데 사용중인 사용자가 파일을 읽을 수 있는지 확인하십시오. 온 전성 검사를 위해 파일을 665로 chmod하십시오. Windows 시스템이라면 Everyone이 파일을 읽을 수 있도록하십시오.

+0

이미 완료되었으므로 차이가 없습니다. – user393273

0

이 경우에는 호출자 스크립트 (config.php 포함) /home/soizastu/public_html/cms/happy-api/retrieve.php을 포함하면 cms 폴더의 절대 경로를 정의하십시오. 쓰기로 config.php

define('ABSPATH',dirname(dirname(__FILE__)) . '/');

과 같습니다 : 다음 retrieve.php의 맨 윗줄에 쓰기

require(ABSPATH . 'config.php');

관련 문제