테이블이 "AllParties"인 MySQL 데이터베이스가 있습니다. 내가 (아래) PHP를 사용하여 해당 테이블에 데이터를 삽입 할 때 오류가 발생하지 않지만 데이터가 테이블에 삽입되지 않습니다. 나는 MySQL 서버로부터 에러 보고서를 얻으려고 애썼고, 다소 모호하게, MySQL 구문에 오류가 있다고 말했다. Mac CodeRunner에서 코드를 실행 중입니다. 이것이 문제 일 수 있습니까? 또한 $ con은 성공적인 연결입니다.PHP를 통해 MySQL 테이블에 데이터를 삽입하는 중 오류가 발생했습니다
INSERT INTO AllParties (`Party Name`, ...)
역 따옴표가 아닌 일반 인용이다를 :
<?php
$con=mysqli_connect("sql3.freemysqlhosting.net","*********","********","*********");
$name = "Will's Party";
$date = 'October 1st, 2013';
$housenum = '333 East Street';
$city = "Golden Gate";
$state = "California";
$time = "7:00";
$tag = "Serra";
mysqli_select_db('AllParties', $con);
$alpha = mysqli_query($con, 'INSERT INTO AllParties(Party Name, Date, House number and street name, City, State, Time, Tag) VALUES("$name","$date","$housenum","$city","$state","$time","$tag")');
?>
는'당신이 고려해야합니까 하우스 번호 (거리)는 x 문자열을 평가 후면 것은 적절한 열 이름을 name''? –
'and'와 'street name'사이에 7 개의 공백이 있습니다. 이것은 열 이름에 반영됩니까? –
** ** 더 많은 SQL 인터페이스 코드를 작성하기 전에 심각한 [SQL 주입 버그]가 발생하지 않도록 [올바른 SQL 이스케이프] (http://bobby-tables.com/php)를 읽어야합니다 (http : //bobby-tables.com/). mysqli를 사용하는 경우 매개 변수화 된 쿼리와 ['bind_param'] (http://php.net/manual/en/mysqli-stmt.bind-param.php)을 사용하여 쿼리에 사용자 데이터를 추가해야합니다. **이를 수행하기 위해 문자열 보간법을 사용하지 마십시오. – tadman