2011-08-22 7 views
1

새로운 PDO (버전 PHP-PDO-5.3.5-1.el5) 삽입 MySQL의에 대한 PDO를 사용하려고 할 때 다음과 같은 오류로 실행하기 :PDO에 삽입 쿼리를 만들 때 구문 분석 오류를 얻기

PHP Parse error: syntax error, unexpected ';' in /var/www/appdb/test.php on line 3 

<?php 
    $DBH = new PDO("mysql:host=localhost;dbname=appdb", sqladmin, password); 
    $STH = $DBH->prepare("INSERT INTO appdb (id) values (default)"); 
    $STH->execute(); 
?> 

나는이 문제를 알아 내려고 시간 동안 구글에왔다이 오류의 원인이 될 수있는 것을 확인할 수 없었다 :

여기 내가 사용하고 코드입니다. 미리 감사드립니다. 당신이 어딘가에 define('sqladmin','something');define('password','something');

+0

정확한 코드인가요? – Phil

+0

여기서 살펴볼 코드는'/ var/www/appdb/test.php'의 전체 내용입니까? 3 행의'/ var/www/appdb/test.php'에 무엇이 있습니까? 여기에 게시 된 코드에는 구문 오류가 없기 때문에 ... – DaveRandom

+0

@phil - 대부분 파일에서 복사했지만 편집 한 것은 dbname과 2 행의 암호입니다. – somecallmemike

답변

1
$DBH = new PDO("mysql:host=localhost;dbname=appdb", sqladmin, password); 

아마 내 추측이 종결되지 않은 문자열이 될 것

$DBH = new PDO("mysql:host=localhost;dbname=appdb", $sqladmin, $password); 

을해야한다, 대부분의 아마 PDO 생성자에 자격 증명 인수 주위에 당신 ' 귀하의 질문에 편집되었습니다. 내가 당신을 추측하고있어

는 (끝에 누락 된 인용주의)이

$DBH = new PDO("mysql:host=localhost;dbname=appdb", "username", "password); 

또는 이와 유사한 같은 것을 가지고있다.

구문 강조 표시가있는 편집기를 사용하면 (메모장 ++가 떠오름) 이러한 오류가 신속하게 나타납니다.

+0

이 예제에서는 정크 데이터를 사용합니다. – somecallmemike

+0

사실 그렇지만 문법 오류가 아니라 단지'E_NOTICE' ... – DaveRandom

+6

사람들은 정크를 자신의 모범으로 사용하는 이유는 무엇입니까? 그래서 우리는 "정크 메일의 예"와 합법적 인 오류를 알 수있는 방법이 없습니다. – AlienWebguy

관련 문제