2014-01-07 4 views
0

준비 PDO 명령문을 사용하여 삽입하려하지만 어떻게 작동하고있는 것처럼 보이지 않습니다. Heres는 내 코드 :PDO 삽입 삽입하지 않음

$conn = new PDO('mysql:host=localhost;dbname=myDB', $username, $password); 

$sql = "INSERT INTO posts (`text`,`name`) VALUES (:text,:username)"; 
$q = $conn->prepare($sql); 
$q->bindParam(':text', $_GET['textField'], PDO::PARAM_STR); 
$q->bindParam(':username', $_SESSION['myusername'], PDO::PARAM_STR); 
$q->execute(); 
print_r($q->errorInfo()); 

문제이 아무것도하지 않고, 내가 here 나 그것을 할 수 있도록 지침에 따라 사용하고 왜 확실하지 오전입니다.

편집 : 구문이 잘못이기 때문에, 텍스트의 MySQL의 유형 (here)을 보면입니다

Array ([0] => 42000 [1] => 1064 [2] => You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''text','name') VALUES ('a','user')' at line 1) 
+1

'TEXT'는 MySQL의 데이터 유형입니다. 진드기에 넣어보십시오. –

+1

어떤 종류의'ERRMODE_SILENT'를 활성화 할 때 (어떤 문제를 푸는데 도움이 될지도 모르는) 어떤 오류 메시지가 나타날 것으로 예상합니까? 프로덕션 환경에서도이 작업을 수행하지 마십시오. 항상 적절한 예외 처리를 구현하십시오. – DanFromGermany

+0

@JohnConde 지금 막 슬프게도 작동하지 않았다. – user3144542

답변

1

때문에 쿼리가 실패 : 나는 인 print_r 사용할 때 나는 다음과 같은 MySQL의 오류가 발생합니다.

텍스트 이름 주위에 진드기를 추가하고 다시 시도하십시오.

$sql = "INSERT INTO posts (text,name) VALUES (:text,:username)"; 
          ---- 
        This is the error. 
+0

그래도 오류가 발생합니다 위를 참조하십시오. – user3144542

관련 문제