2010-05-19 3 views
2

나는 처음으로 PHP 클래스를 작성하려고합니다. 가 서버와 데이터베이스에 저를 연결하도록되어 있지만 난 항상이 오류 받고 있어요 :PHP 클래스 충돌 코스

<?php 
// include 'DBConnect.php'; 

class DBConnect 
{ 

function connection($hostname = "localhost", $myname = "root", $pass = ''){ 

     mysql_connect(&hostname, &myname, &pass) or die("Could not connect!"); //Connect to mysql 
     } 

function choose($dbnam){ 
     mysql_select_db(&dbnam) or die("Couldn't find database!"); //fnd specific db 
     } 

} 


$a = new DBConnect(); 


$connect = $a->connection("localhost", "root"); 

$a->choose('mydb'); 

?> 

답변

6

클래스의 모든 변수에 $가 누락되었습니다. 9 호선은 다음과 같이해야합니다 (& 기호를 사용하여) 참조하여 통과 여기에, 불필요한 보인다 이유

mysql_connect(&$hostname, &$myname, &$pass) or die("Could not connect!") 

도, 나도 몰라.

+0

확실히 불필요하며 더 이상 사용되지 않습니다. – webbiedave

+0

고마워, 나는 참조로 통과하고 싶지 않았어, 난 그냥 기호, 바보 같은 실수를 혼동 ... – rabidmachine9

1

당신이 누락 : 사전에

Parse error: syntax error, unexpected ',', expecting T_PAAMAYIM_NEKUDOTAYIM in /Applications/XAMPP/xamppfiles/htdocs/classTest/test.php on line 9

감사합니다, 여기에 코드입니다 예 : & 다음에 $&$hostname. 그런데 mysql_select_db 라인에서 같은 문제가 발생합니다.

1

'T_PAAMAYIM_NEKUDOTAYIM'오류는 "::"(이중 콜론)으로 해석됩니다. 위에서 언급 한 변수에 '$'가 누락되었습니다.

3

다른 것들에 추가하려면 PDO를 사용해보십시오. mysql_ * 함수는이 시점에서 오래된 학교입니다. 또한 연결 함수가 아무 것도 반환하지 않는 경우에도 연결 호출을 변수에 할당합니다.

+0

동의합니다. PDO로 이동하십시오. PHP 5.1 이상 버전과 함께 제공됩니다. http://www.php.net/manual/en/ref.pdo-mysql.php – subv3rsion