2012-10-13 4 views
0

나는이 작은 글을 쓰고있다. SQL INSERT INTO - 나는 당황 스럽다

내 (로컬 서버) 연결

$c2d = mysqli_connect("localhost","root","","database name here")or die("connection not set" . mysqli_error); 

이 내 삽입 문이며 어떻게 보통 그것을 할 것입니다. 내가 위에서 이것을 사용하면

$insertUsrAccDetQS = "INSERT INTO user-tbl-here (usern, usrp, usere) VALUES ('x','y','z');" or die('no good on 001' . mysqli_error); 

, 나는

Notice: Use of undefined constant mysqli_error - assumed 'mysqli_error' 

상관없이 내가 (약 한 시간 동안 그것을 있었다) 그것을 할 어떤 변화, 그것은 항상 ... 이런 종류의 오류가 나에게 어떤 종류의 오류를 준다. 그래서 나는 스스로에게 말했다. "phpMyadmin 응용 프로그램에 수동 삽입을 할 수있게하여 SQL INSERT 코드를 작성하는 방법을 볼 수 있고, SQL을 복사하여 내 응용 프로그램에 붙여 넣을 수 있습니다. "

내가 그랬을 때 반환 된 INSERT 코드 인 phpM yadmin 나는 내 PHP의 문서에 붙여 넣기/복사를 실행하고이 값이 데이터베이스에 입력 된, 일, 내가 충분히

$insertUsrAccDetQS = "INSERT INTO `database name here`.`user-tbl-here` (`usern`, `usrp`, `usere`) VALUES ('$x','$y','$z');" or die('no good on 001' . mysqli_error); 

은 확신했다 다시 던졌다. phpMyAdmin에 쿼리 문자열

2의 나머지 앞에 데이터베이스 이름을 넣어 - - 내가 볼 수

유일한 차이점은

1 것입니다 그것을 넣어 해당 문자열의 모든 이름/값에 대한 인용 부호.

하지만 연결 이름에 데이터베이스 이름을 지정했는데 위의 원본과 같은 insert 문을 사용했는데 항상 작동했습니다.

그래서 질문은 무엇입니까? 나는 또한 다른 사람들이 INSERT 성명서/양식을보기 위해 몹시 온라인으로 보았습니다. 예를 들어, 여기에이 wiki에 들어 있는데, 나는 그것을 해왔다.

나는 혼란 스럽다.

or die('no good on 001' . mysqli_error()); 
             ^----- HERE 
+1

팁. 오류를보십시오. 어디에서 발생하고 있습니까? 'OR'부분에. 오류가있는 단서가 있어야합니다. 그런 다음 두 단어가옵니다. mysqli_error. 당신은 그들에 대해 아무것도 알 필요가 없습니다! 유형 및 Google. 두통을 피할 수 있었고 문제가 발생한 곳을 즉시 볼 수있었습니다. 디버깅이 그렇게 어렵지는 않습니다. 그것을 만든 – itachi

답변

5

이 mysqli_error의 끝 부분에 괄호를 추가 감사하겠습니다? 그렇다면 괄호가 필요합니다. mysqli_error()

+0

. 많이 고마워! – somdow

+0

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

2

함수가 mysqli_error이다 : 나는 기꺼이이 같은 함수가 아니라 변수이기 때문에, 어떤 설명/링크/팁 등