2014-03-05 7 views
0

사람들이 다른 사람들에게 문제를보고 할 수있게 해주는 웹 사이트를 만들고 각 문제를 테이블에 저장하는 것이 유용 할 것이라고 생각했습니다. 그러나 코드를 실행할 때 데이터가 입력되지 않습니다. 마지막에 or die(mysql_error());을 사용하여 mysql에 대한 오류를 켰을 때 아무 것도 얻지 못했습니다. 그냥 흰색 페이지.데이터가 테이블에 저장되지 않음 (오류 없음)

다음은 전체 내 소개 문장입니다. 왜 작동하지 않는지 또는 왜 오류가 나타나지 않는지에 대한 이유가 있습니까?

$sql = "INSERT INTO reported_problems (time, Full Name, E-mail, Phone Number, House Number, First Line, City, Postcode, Problem Type, Description, Urgency) VALUES(now(),'$fullname','$tenantemail','$phonenumber','$housenumber','$streetname','$city','$postcode','$typeofproblem','$probdesc','$severity_desc')"; 
$query = mysqli_query($db_conx, $sql) or die(mysql_error()); 
+0

일부 열 이름에는 공백과 '전자 메일'에 하이픈이 포함되어 있으므로 백틱으로 묶어야합니다. 밑줄을 사용하는 것이 가장 좋습니다. –

답변

4

당신은 당신의 열 식별자에 공백이있다.

$sql = "INSERT INTO reported_problems (`time`, `Full Name`, `E-mail`, `Phone Number`, `House Number`, `First Line`, `City`, `Postcode`, `Problem Type`, `Description`, `Urgency`) VALUES(now(),'$fullname','$tenantemail','$phonenumber','$housenumber','$streetname','$city','$postcode','$typeofproblem','$probdesc','$severity_desc')"; 

FYI는 키워드/함수 이름이다 갖는 열 이름 대시를 포함하고, 공백으로 둘 낙담 : 이것은 진드기에 열 식별자를 배치함으로써 해결 될 수있다. 가능한 경우 낙타 케이스 또는 밑줄을 사용하십시오.

+0

나는 똑같은 대답을 올리려고했다. 시간은 예약어이고 열 이름 문제이다. xD – Hackerman

+0

나는 ['MySQL.com'] (http://dev.mysql.com/doc/refman/5.5/)에서 인용한다. en - reserved-words.html) * "MySQL은 이전에 많은 사람들이 사용했기 때문에 일부 키워드를 인용 부호가없는 식별자로 사용할 수 있습니다."* --- "unquoted"는 무엇을 의미합니까? –

+0

@ Fred-ii-'time'이 해당 범주에 속할 때 입력하는 것처럼 내가 그 부분을 사용했음을 알 수 있습니다. 나는 그것을 사용하는 것은 나쁜 생각이라는 메모를 남겼다. :) –

관련 문제