2013-08-02 2 views
0

향상된 보안을 위해 코드를 PDO로 전환합니다. 필자는 공간 데이터를 생성하는 특수 열을 추가 할 때까지 삽입 작업을 수행합니다. 작동하는 표준 인서트는 아래를 참조하십시오. 작동하지 않는 인서트는 아래를 참조하십시오.삽입 및 thegeom에 PDO 사용

$sql = "INSERT INTO sites_tbl (sitename, the_geom) VALUES ('$_POST[sitename]', st_geomfromtext('POINT($geomstring)',27700))"; 

geomstring은 = 숫자가 같은 삽입 난 그냥 사이트 이름을 삽입 할 경우이 작품 (아래)과 같은 형태 PDO를 사용 000000

000000 포맷,하지만 난 the_geom을 할 때. 값 325123 215432는 결국 변수가되지만 지금은 목록을 테스트하고 있습니다. 당신이
바인드
임의의
SQL 부분

를 사용하지 않을 수

$stmt5 = $conn ->prepare(
"INSERT INTO sites_tbl (sitename, river_id, group_id, accepted_site, the_geom, bmwp_threshold) VALUES (?, ?, ?, ?, ?, ?)"); 

$stmt5->bindParam(1, $sitename); 
$stmt5->bindParam(2, $river_id); 
$stmt5->bindParam(3, $group_id); 
$stmt5->bindParam(4, $accepted_site); 
$stmt5->bindParam(5, $geomstring3); 
$stmt5->bindParam(6, $bmwp_threshold); 

$geomstring2 = "'POINT(635230 352120)'"; 
$geomstring3 = st_geomfromtext($geomstring2, 27700); 

답변

1


하지만 문자열
또는 유일한
문자
숫자를 준비했다.

$geomstring4 = "'POINT(325123 215432)'"; 

$stmt5 = $conn ->prepare(
    "INSERT INTO sites_tbl (sitename, the_geom) VALUES (?, st_geomfromtext(?,27700)))"); 
$stmt5->bindParam(1, $sitename); 

$stmt5->bindParam(2, $geomstring4); 
+0

아 나는 st_geomfromtext 뒤에 오타가 너무 많았습니까? 아직도 그것은 삽입되지 않습니다. 나는 내가하고있는 모든 인서트를 갖기 위해 질문을 편집했다. – Tom