2012-03-21 2 views
0

Windows 7입니다. WAMPServer를 설치했습니다. 이제 spatialite 라이브러리를로드 할 수 없습니다. 그것은 ..공간 효과를 위해 wampserver를 구성하는 방법

경고 경고를 보여주고있다 : sqlite3를 :: loadExtension를() [sqlite3.loadextension] :

여기

내 전체 구성 절차는, 내가했던 어떤 멀티 스레드 웹 서버에서 지원되지 ...

이 링크에서 spatialite lib가 있습니다. "libspatialite-1.dll"을 복사하여 PHP 확장 DLL이 들어있는 "D : \ wamp \ bin \ php \ php5.3.8 \ ext"에 붙여 넣습니다.

http://www.gaia-gis.it/spatialite-2.3.1/libspatialite-win-x86-2.3.1.zip

은 그럼 php.ini 파일을 편집했다. 다음 구성을 변경했습니다.

. 
sqlite3.extension_dir = C:\libspatialite-win-x86-2.3.1\bin 
. 
extension=libspatialite-1.dll 
. 
enable_dl = On 

그리고 마지막으로, 나는 복사 내 프로젝트 폴더 (libspatialite.a, libspatialite.dll.a, libspatialite.la) 내 다운로드 libspatialite - 윈 - x86-2.3.1의 모든 라이브러리를 붙여 내 다음과 같이 내가 스크립트를 작성 PHP 코드 ... 내가 잘못했을 또는 방법이 문제를 해결 해야할지 모르겠어

<?php 

$db = new SQLite3('sixcommunes.sqlite'); 

$db->loadExtension('libspatialite.a'); 

$rs = $db->query('SELECT spatialite_version()'); 
while($row = $rs->fetchArray()){ 
    print "<h3>SQLite version: $row[0]</h3>"; 
} 

?> 

?

답변

0

내 답변을 보지 못했습니다. 나는 C#에서 spatialite를 사용했다. Spatialite Extensions를 사용하기 위해서는 일반적인 PHP 확장과 같이 libspatialite를로드 할 필요가 없다. 대신 이와 비슷한 것이 수행되어야한다. Spatialite를 사용하는 sqlite가에 당신은 ("libspatialite-2.dll")를 선택 load_extension을 실행해야

SQLiteCommand sqliteCommand = new SQLiteCommand(String.Format("SELECT 
load_extension('{0}');", "libspatialite-2.dll"), connection); 
sqliteCommand.ExecuteNonQuery(); 

(이것은 단지 당신에게 아이디어를 제공하기 위해 노력하고, C# 코드입니다). 희망이 있습니다.

관련 문제