Hallo,
bij het proberen van een connectie te maken met onze sqlserver via php krijg ik volgende foutmelding:
Fatal error: Call to undefined function sqlsrv_connect() in C:\wamp\www\mssql\connectie.php
Zoekwerk op google zei met dat ik de mssql drivers moest installeren. Deze plaatste ik in de map php/ext waarin ook de andere extensies staan.
In mijn php.ini plaatste ik volgende twee regels:
extension=php_sqlsrv_54_ts.dll
extension=php_pdo_sqlsrv_54_ts.dll
Mijn php versie is 5.4 en trust safety saat enabeld in de php info.
Dus lijkt me de dll correct te zijn.
Kan iemand helpen?
Dank bij voorbaat!
Als ik php.net mag geloven is sqlsrv_connect() geen (althans, niet per definitie, een) standaard php-functie, dus je zult waarschijnlijk wat meer stappen moeten doorlopen. Als je niets over sqlsrv kunt vinden middels phpinfo() dan is dit een indicatie dat er iets ontbreekt.
De voorgestelde stappen heb ik nog eens doorlopen. Ik krijg nog steeds dezelfde foutmelding. Wanneer ik via het iccoon van de wamp -> php -> extensies ga zie ik die sql_srv extensies zowel pdo als gewoon staan en deze zijn aangevinkt.
Dit lijkt dus in orde, maar bij het laden van de pagina krijg ik wel de genoemde foutmelding.
Verder zag ik ook dat er in de map php ook nog 2 andere php.ini staan voor productie en ontwikkeling. Moet ik deze misschien ook aanpassen?
Iemand enig idee?
Daarin staat de php.ini op de plaats waar ik het ook wijzigde. Ook kan ik de extensie via de wampicoon zien staan en aangevinkt. Nog steeds onbekende functie.
Invoer: Call to undefined function sqlsrv_connect()
Eerste resultaat: klik
Mogelijke oorzaak: verkeerde php.ini ge-edit
EDIT: in andere zoekresultaten staat onder andere de volgende behulpzame hint: middels phpinfo() kun je via het onderdeel "Loaded Configuration File" controleren welke .ini file (uiteindelijk, zie hieronder) wordt gebruikt, daar zal je waarschijnlijk het een en ander moeten instellen.
Mogelijk genereert WAMP dit bestand uit een andere bron. Een herstart overschrijft dus mogelijk het eerder genoemde .ini bestand. In dat geval moet je de bron zien te achterhalen die WAMP gebruikt om de .ini file te genereren die uiteindelijk voor PHP wordt gebruikt.
Link gelezen en nagekeken maar de directory waarvan sprake (deze in apache) is diegene met de ini die ik heb aangepast.
Hierbij printscreen van het betreffende stukje via php info
Ja, de gegevens die ik moet ophalen bevinden zich op een mqsql server. Die database wordt constant bijgehouden door derden. Mijn gebruikers moeten uiteindelijk de ingave van die derden consulteren en goedkeuren of aanpassen indien nodig.
Vandaar dat ik met mssql moet werken.