2013-06-21 3 views
0

내 데이터베이스에 새 파일을 추가하려고합니다! mysql_query 부분에 오류가 발생했습니다! 내가이 페이지를 실행하면mysql_query : 알 수없는 오류

그는 내가

Invalid query: 

얻고 빈 이유

어떤 아이디어 코드

<?php 

$link = mysql_connect('localhost','user','pass','data'); 
if(!$link) 
    die('Could not connect: ' . mysql_error()); 
$sql = "INSERT INTO content(`id`, `writer`, `title`, `subject`) VALUES(NULL,'11','22','33')"; 
if (!mysql_query($link,$sql)) 
    { 
    die('Invalid query: ' . mysql_error()); 
    } 
echo "1 record added"; 
mysql_close($link); 
?> 

입니까?

+1

, ** ** 사용하지 마십시오'mysql_query' 쓰기 있다면. 이것은 틀린 인터페이스를 사용하여 잘못 사용되면 위험하며 PHP의 이후 버전에서 제거됩니다. [Learning PDO] (http://net.tutsplus.com/tutorials/php/why-you-should-be-using-phps-pdo-for-database-access/) 또는 다른 지원되는 인터페이스는 다음과 같은 여러 가지 이점을 제공합니다. [더 쉬운 SQL 탈출] (http://bobby-tables.com/php)과 PHP의 향후 지원 등. – tadman

답변

2

매개 변수는 mysql_query입니다.

mysql_query($sql, $link)이어야합니다.

P. $link을 전달할 필요조차 없습니다. 을 사용해도됩니다. PHP는 mysql_connect을 통해 열린 마지막 링크를 사용합니다.

+0

감사합니다. 작동했습니다. – user2509492

+0

당신을 환영합니다! :-) –

1

테이블의 정의는 무엇입니까? "id"가 기본 키 (PK)라고 생각합니다. PK는 NULL이 아니어야합니다.

는 AUTO_INCREMENT 그냥 멀리 coloum을 떠나 새로운 애플리케이션에

"INSERT INTO content(`writer`, `title`, `subject`) VALUES('11','22','33')"; 
+0

그건 내 대답이 될 것입니다. 너는 나를 때렸다. – Tom

+0

'PK'를'NULL'으로 설정하면 자동으로 다음'AUTO_INCREMENT' 값으로 설정됩니다. –