SAP SQL Anywhere Daten Aufruf in PHP

anleitung als pdf

Sie können mit PHP, Daten aus der SQL Anywhere Datenbank aufrufen und anzeigen lassen. Sie werden dazu einen lokalen Webserver benötigen, der in der Lage ist PHP-Code lesen und ausführen zu können. Im Beispiel wird XAMPP mit der PHP-Version 5.6.4 verwendet. Damit die PHP-Datei auf dem Server funktioniert brauchen Sie zuerst eine PHP-Extension. Diese finden Sie auf der Seite: https://wiki.scn.sap.com/wiki/display/SQLANY/The+SAP+SQL+Anywhere+PHP+Module.

Kontrollieren Sie welche PHP-Version der Webserver hat und laden Sie dafür die entsprechende PHP-Extension herunter. Der XAMPP, der im Beispiel benutzt wird hat die PHP-Version 5.6.4. Laden Sie deshalb Paket 5.6 herunter.

Nachdem Sie die ZIP-Datei heruntergeladen haben, extrahieren Sie diese. In dem extrahierten Ordner sollten sich zwei “bin“ Ordner befinden. Verwenden Sie “bin32“ zuerst. In diesem Ordner werden Sie zwei DLL-Dateien finden. Kopieren Sie beide DLL-Dateien und fügen Sie diese in den “ext“-Ordner ein, der sich, wie im Bild zu sehen ist, beim XAMPP im PHP-Ordner befindet.

Anschließend suchen Sie die “php.ini“, die der Server verwendet. Diese können Sie auf dem Webserver finden indem Sie eine PHP-Datei in den Ordner “htdocs“ mit dem folgenden Inhalt ablegen:

< ?php 
phpinfo();
?>

Sie können die “php.ini“ in der Reihe “Loaded Configuration File“ finden.

Navigieren Sie zur “php.ini“ und bearbeiten Sie die Datei in einen Texteditor. Suchen Sie den Abschnitt “Dynamic Extension“. Im unteren des ersten Abschnittes fügen Sie zwei Zeilen ein:

extension=php-5.6.0_sqlanywhere.dll
extension=php-5.6.0_sqlanywhere_nts.dll

Anschließend speichern Sie die Datei und starten den Webserver neu. Nach dem Neustarten des Servers können Sie folgenden Code verwenden:

< ?php 
$connect = sasql_connect("uid=< Username >;pwd=< Passwort >");
if ( ! $connect)
{
    echo "connection failed\n";
}
else 
{
    echo "connection succesfully";
}
$sqlquery = sasql_query($connect,"SELECT * FROM < tabelle >"); 
if( ! $sqlquery)
{
   echo "statement failed";
}
else
{
   echo "statement success";
   sasql_result_all($sqlquery);
   sasql_free_result($sqlquery);
}
sasql_close($connect)
?>

Bevor Sie die PHP-Datei auf dem Server ausführen, sollten Sie zuerst die SQL Anywhere Datenbank hochfahren. Gehen Sie dafür in die Kommandozeile und geben folgenden Befehl ein: “dbeng17 < Datenbanknamen >.db“. Darauffolgend führen Sie die PHP-Datei auf dem Server aus. Dabei sollte Folgendes angezeigt werden: