Si, tuve peleándome un rato con el php y el sql server.
Cuando hice la conexion MySql – PHP sin problemas, lo malo fue cuando lo quise pasar a SQL.
Primero obvio en el codigo PHP hay que cambiar la función mysql_connect a mssql_connect.
Configurar correctamente el archivo php.ini ( Activando la extensión php_mssql.dll y php_msql.dll )
También revisen su configuración de [SQL] en el mismo archivo… Guardamos
Abrimos el «Administrador de Configuración de SQL Server» y en «Configuración de red de SQL Server / Protocolos de MSSQLSERVER»
Habilitan TCP/IP [Configuramos:] ../Propiedades/Direcciones IP / el ultimo parametro dice IPALL ponemos el puerto /*configuramos también el firewall*/
Canalizaciones con Nombre <– Habilitarlo
Ahora en la carpeta donde están las Extensiones (ext) de PHP, asegurarnos de que tenemos los archivos php_mssql.dll y php_msql.dll
Ex:
<?php
$conect = mssql_connect(«Nombre_servidor», «jok3r», «passwd«);
echo «La conexión a SQL SERVER se realizo con éxito«;
?>
Se hace la conexión a sql y se guarda en $conect (para otras cosas podría ser útil)
Luego usamos la funcion para conectar con Sql Server y damos los Parámetros [servidor al que se conecta (puede ser localhost), usuario y contraseña]
En caso que ni así conectara .. hay que ir a la carpeta de instalación de PHP y remplazar el archivo ntwdblib.dll y copiarlo igual en C:\Windows\System32.
hola realice los pasos mencionados pero a la hora de ejecutar el codigo de conexion
me manda este mensaje
Not Found
The requested URL /APITUX/pruebaconexion.php was not found on this server.
podrias ayudarme?
pues ahí dice que el archivo no esta en esa ruta.. osea que si en tu servidor local tienes una carpeta llamada APITUX/ dentro debe estar tu archivo de conexión.
y si es así, checa que tengas permisos de escritura correctos… (en windows generalmente no hay pex con eso) …
OK en efecto, era la ruta del archivo que estaba llamando, hice el movimiento que indicas pero ahora me manda el siguiente mensaje:
Fatal error: Call to undefined function mssql_connect() in C:\AppServ\www\APITUX\pruebaconexion.php on line 3
HOLA he seguido todos los pasos y me manda este mensaje a la hora de ejecutar el
codigo de conexion Not Found
The requested URL /APITUX/pruebaconexion.php was not found on this server.
QUE TAL AMIGO EXECELENTE APORTE !! POR UN MOMENTO CREI QUE NO SALDRIA YA ME EH LLEVADO UNA SEMANA CON ESTO Y NO ME HA SALIDO SEGUI TUS PASOS Y COMO QUE ME QUITO UN ERROR AHORA TENGO ESTE DETALLE Y NO TENGO IDEA COMO SOLUCIONARLO …
Advertencia : mssql_connect () [ function.mssql-connect ]: message: Error de inicio de sesin del usuario ‘MICHELL’. (Severidad 14) en C: \ AppServ \ www \ Distribuido \ conexion.php on line 60
Warning : mssql_connect () [ function.mssql-connect ]: No se puede conectar al servidor: 192.168.13.8 en C: \ AppServ \ www \ Distribuido \ conexion.php on line 60
Warning : mssql_query (): suministra argumento no es un recurso SQL-Link válida MS en C: \ AppServ \ www \ Distribuido \ consultasql.php on line 160
Error en odbc_exec
ESPERO Y SEAS TAN AMABLE DE APOYARME ! TE AGRADECERE
amm por lo que entiendo estas usando mssql_connect() en varios archivos en varias lineas…
yo te recomiendo que crees un archivo para la conexión ejemplo:
conexion.php <- ahí dentro haz la conexión a tu base de datos y ya solo haces un require en los archivos que necesiten la conexión…
como configuro el firewall ?
T-T por mas que he intentado, no se puede, algo no me esta saliendo bien, tengo w8pro 64b, appserv 2.5.9 he reemplazado los archivos dll en ext y system32, descomente en php.ini y reiniciado el servidor y me sale aun:
Fatal error: Call to undefined function mssql_connect() in C:\AppServ\www\web\sql1.php on line 2
algo me falta si me pueden apoyar
Descargaste y Reemplazaste el php_mssql.dll y php_msql.dll ?? descargarlo porq en ocasiones la versión que trae el Sql Server no es la correcta ..
No funciona la conexión con php sql server 2008, intale el driver, habilite el ext, y aun no me funciona, que version se necesita del php para conectarse
Que onda.
He intentado pero aún no lo consigo, ¿Qué puerto debo poner en IPALL? y estoy usando SQL Server 2008 con acceso mixto y uso la autentificación de Windows, y así entro al servidor SQL Server desde el Management, entonces sino tengo contraseña en mi Servidor, ¿sería así mi $conect = mssql_connect(«NombreEquipo\SQL_FOZ”, “sac”, ““); sin password? utilizo XAMPP 😐
Gracias, espero puedas ayudarme, saludos.
Generalmente el puerto es 1433, recuerda que hay que ‘abrir’ el puerto ene el firewall si estas haciendo tu conexión en tu red local, si por ejemplo te quieres conectar al sql server d tu vecino («es un decir»), también tendras que agregar la excepción en el modem de telmex por ejemplo permitiendo el puerto 1433… espero te sea de ayuda cualquier cosa deja un comentario !!
como puedo hacer que se conecte sql server con php con xampp ya intente con appserver y no me funciono me sigue marcando que no me reconoce la cadena de conexion
un ejemplo podría ser:
$con = mssql_connect(«192.168.1.54», «sa», «contrasena»);
//Y lo Validas
if($con){
echo «EXITO AL CONECTAR»;
}else{
echo «HUBO ALGÚN ERROR»;
}
// SI TE SIGUE MARCANDO ERROR y TODO ESTA CORRECTO VERIFICA QUE ESTËN LOS ARCHIVOS QUE MENCIONO EN EL POST y no deberías tener mayor complicación.
OK ya me aparecio exito al conectar ahora como hago una consulta?
me refiero a que ps como se hizo el cambio de mysql a mssql, entonces cada que cuando yo ponia eso asta en las consultas a hora se tiende que cambiar por mssql
No entendí bien, pero si para hacer consultas ahora solo cambia
mysql_query(); por mssql_query(); y debería funcionar sin mayor problema.
gracias me sirvio de muxo lo de la instalacion de appserv 100% funcionando
Ok yo investigue e investigu e investigue, si quieren evitarse de problemas utilicen appserver es el unico que se conecta con mssql sin problemas, actualizan la ntwdblib.dll a la versión 2000.80.194.0, la copian en system 32, en las extenciones de appserver ponen php_mssql.dll y quitan el comentario en el php.ini reinician y listo esta su conexion, creanme lo intente todo con easypho,xampp, etc. tarde 3 dias y nada puse appserver y en 10 min ya tenia todo por cierto instalen la versión 2.5.10 xq la 2.6 tiene errores
Tu solución es la que me funcionó, gracias 🙂
Yo también perdí varios días peleando con Wamp y Xampp: con Appserver mssql aparece en phpinfo, usando las mismas dll y el mismo php.ini. Gracias!
Muchas Gracias, al fin pude lograr que el PHP me reconociera la funcion mssql_connect. En verdad llevo varios dias leyendo y probando. Ahora tocara continuar con la conexion 😛
Gracias tremendos tips.
que bien, pero si ya te ha reconocido el mssql_connect, la conexión sera fácil.. suerte :3
hola que tal tengo problemas para conectar php con sql server 2008… he hecho todo lo q explicas y nada q me funciona
Has puesto el archivo ntwdblib.dll en C: también en C:\Windows y en C:\Windows\System32 (copy & paste) remplaza en caso de que te diga que ya están, y asegurarte que el ntwdblib.dll sea la versión 2000.80.194.0 : D ¡Suerte!
D= windus user lo intentare cuando tenga sql server =)
hahah pero solo fue por cuestiones laborales u.U