2016-07-20 2 views
0

나는 connect.php 파일을 가지고있다.PHP에서 공용 함수를 실행하는 방법은 무엇입니까?

public static function connect() { 
    $file= file('data.txt'); 
     $hostname = rtrim($file[1]); 
     $dbname = rtrim($file[4]); 
     $username = rtrim($file[7]); 
     $password = rtrim($file[10]); 
     mysql_connect($hostname, $username, $password) or DIE('Connection to host isailed, perhaps the service is down!'); 
     mysql_select_db($dbname) or DIE('Database name is not available!'); 
}; 

다른 .php 파일에서이 기능에 액세스하려면 어떻게해야합니까?

connect(); 

이 작동하지 않습니다.

+1

1. 변수 범위 (함수에서 반환해야 함)에 대해 알아보십시오. 2. 실제로'connect.php'를 포함 시켰는지 확인하고 만약 그 함수가 객체의 일부라면 먼저 생성하십시오. 3 ..'mysql_ *'함수는 PHP 5.5 이후에 더 이상 사용되지 않으며 ** PHP 7에서는 완전히 ** 제거되었습니다. 가능한 경우 사용을 중지해야합니다 (http://stackoverflow.com/q/12859942). mysqli_ * 또는 PDO와 같은 준비된 명령문을 사용할 수있는 다른 API를 선택해야한다. ([* API] 선택하기 (http://php.net/manual/en/mysqlinfo) 참조) .api.choosing.php). – Qirel

+0

다른 사람들과 마찬가지로, include(), require() 또는 유사 코드를 사용하여 실행중인 파일 이외의 파일에서 코드를로드해야합니다. 일반적인 장애물은 파일 경로/인수 포함권을 얻는 것입니다. _echo ini_get ('include_path') _를 실행하면 상대 경로를 사용할 때 PHP가 기본 폴더로 사용할 폴더를 볼 수 있습니다. 물론 절대 경로를 사용할 수도 있습니다. –

+0

이것이 전체 connect.php 인 경우 코드 주위에 '' 태그가 누락되었습니다. – bytesized

답변

0

. 코드가 작동하려면 코드에 액세스해야합니다. 이 기능을 다른 페이지에서 사용 가능하게하려면 다음을 수행하십시오.

<?php include 'connect.php' ?> 

이렇게하면 해당 페이지에서 함수 호출을 수행 할 수 있습니다.

꽤 많이 있습니다.

+0

코드는 사이트에만 인쇄됩니다. 그리고 그것은 작동하지 않습니다. Error : 정의되지 않은 함수를 호출하십시오. connect() – 12Hannibal12

+1

@ 12Hannibal12 이것이 public static이라고 생각하면, 저는 이것이 클래스의 일부라고 생각합니다. 클래스에 파일을 포함하고 ClassName :: connect();와 같은 정적 메서드와 같은 함수에 액세스해야합니다. 코드가 사이트에만 인쇄되는 경우 클래스 파일에도 php 태그를 추가해야 할 가능성이 높습니다. –

+0

@JonathanKuhn 수업이 없습니다. 위의 코드는 전체 connect.php 파일입니다. – 12Hannibal12

0

PHP 파일이 함수에 액세스 할 수 있도록 파일을 포함해야합니다. 이것을 수행하려면 require을 사용할 수 있습니다. 그것이 불가능하기 때문이다

require('path/to/connect.php');

+0

다른 대답과 동일 : 코드는 사이트에만 인쇄됩니다. – 12Hannibal12

관련 문제