Foros del Web » Programando para Internet » PHP »

conexión con MSSQL

Estas en el tema de conexión con MSSQL en el foro de PHP en Foros del Web. Hola buenas, tengo un problema he empezado a conectar mi primer web con base de datos utilizando PHP SQL Server y tengo el siguiente codigo ...
  #1 (permalink)  
Antiguo 18/03/2008, 03:28
Avatar de codeman1234  
Fecha de Ingreso: marzo-2008
Mensajes: 545
Antigüedad: 16 años, 1 mes
Puntos: 2
Exclamación conexión con MSSQL

Hola buenas,

tengo un problema he empezado a conectar mi primer web con base de datos utilizando PHP SQL Server y tengo el siguiente codigo probando las conexiones


<html>
<head>
<title></title>
</head>
<?php
$conectID = mssql_connect ("192.168.1.15","php","php");
mssql_select_db("Northwind","php");
$result=mssql_query("select * from dbo_Customers");
mssql_close($conectID);
?>
<body>
</body>
</html>

mi usuario y pasword del ODBC se llama php como pongo en la primer linea en el connect esta creada en la BD Northwind cierro la conexion al final.

Ejecuto en el explorador y me dice que la funcion mssql_connect no esta definida este es el error que me sale

Fatal error: Call to undefined function mssql_connect() in E:\Inetpub\wwwroot\php\prueba\index.php on line 6

alguien sabe como la defino??

Un saludo y gracias

pd sino me equivoque segui las instrucciones para las DLL y el php.ini como dice este tutorial

Editar el PHP.ini

Ahora hay que decirle al PHP que tiene una librería nueva y que la debe usar. Así que editaremos el PHP.ini con el Notepad, normalmente el PHP.ini está en el directorio C:\WINNT.

Busca la línea en la que pone "extension_dir = " y modifícala para que apunte al directorio donde hemos copiado la DLL. Con esto le indicamos al PHP donde están las DLL de extensión.

Ahora busca la línea ";extension=php_mssql.dll" y modifícala quitándole el ";" del principio.

Graba el fichero PHP.ini y ya está.

Alguna idea?
  #2 (permalink)  
Antiguo 18/03/2008, 03:35
 
Fecha de Ingreso: octubre-2004
Mensajes: 2.627
Antigüedad: 19 años, 5 meses
Puntos: 48
Re: ayuda porfa

Reiniciar el servidor web.
  #3 (permalink)  
Antiguo 18/03/2008, 03:41
Avatar de codeman1234  
Fecha de Ingreso: marzo-2008
Mensajes: 545
Antigüedad: 16 años, 1 mes
Puntos: 2
Re: ayuda porfa

Cita:
Iniciado por DarkJ Ver Mensaje
Reiniciar el servidor web.
Tu crees q ese seria el problema? Pero en parte tienes razon porque creo q al instalarlo no se ha reiniciado ya que es de empresa y ta siempre encendido. Que hara al reiniciarlo cargar lo archivos instalados?

saludo y gracias
  #4 (permalink)  
Antiguo 18/03/2008, 03:55
Avatar de codeman1234  
Fecha de Ingreso: marzo-2008
Mensajes: 545
Antigüedad: 16 años, 1 mes
Puntos: 2
Re: ayuda porfa

Acabo de reiniciarlo y sigue igual. Otra sugerencia?

Salu2
  #5 (permalink)  
Antiguo 18/03/2008, 04:08
 
Fecha de Ingreso: octubre-2004
Mensajes: 2.627
Antigüedad: 19 años, 5 meses
Puntos: 48
Re: ayuda porfa

Segun http://es.php.net/manual/en/ref.mssql.php
Cita:
To get these functions to work, you have to compile PHP with --with-mssql[=DIR], where DIR is the FreeTDS install prefix. And FreeTDS should be compiled using --enable-msdblib.
Asi que tiene que estar PHP compilado con esa libreria. Comprueba con el phpinfo() si tu version de php esta compilada con esa libreria (al comienzo te pone la lista de parametros usados para la compilacion).
  #6 (permalink)  
Antiguo 18/03/2008, 04:23
Avatar de codeman1234  
Fecha de Ingreso: marzo-2008
Mensajes: 545
Antigüedad: 16 años, 1 mes
Puntos: 2
Re: ayuda porfa

puede que me equivoque pero creo que el problema es el siguiente en el php.ini he puesto el php info como me comentaste y en odbc me sale lo siguiente:


odbc
ODBC Support enabled
Active Persistent Links 0
Active Links 0
ODBC library Win32

Directive Local Value Master Value
odbc.allow_persistent On On
odbc.check_persistent On On
odbc.default_db no value no value
odbc.default_pw no value no value
odbc.default_user no value no value
odbc.defaultbinmode return as is return as is
odbc.defaultlrl return up to 4096 bytes return up to 4096 bytes
odbc.max_links Unlimited Unlimited
odbc.max_persistent Unlimited Unlimited

lo que esta en negrita me da ami que es el problema que no tiene un valor por defecto en la based de datos que utilizo, me he metido en php.ini e intentado cambiarlo con lo siguiente:

odbc.default_db = Northwind (BD que utilizo)
odbc.default_user = php (usuario)
odbc.default_pw = php (password)

antes tenian los valores "Not yet implemented" pero pongo el php info otra vez y me sale como antes "no value". Como hago para cambiarlo entonces? Crees q ese es el problema ?
Y como arreglo lo de "msdblib" donde esta eso que no lo encuentro ni en phpinfo ni php.ini.

Saludos y gracias por tu paciencia conmigo
  #7 (permalink)  
Antiguo 18/03/2008, 05:14
Avatar de codeman1234  
Fecha de Ingreso: marzo-2008
Mensajes: 545
Antigüedad: 16 años, 1 mes
Puntos: 2
Re: ayuda porfa

Como veo si la libreria php_mssql.dll esta permitida? en php.ini le he sacado el ; y supongo que sigue sin furular ya que me sigue saliendo el mismo error

Fatal error: Call to undefined function mssql_pconnect() in E:\Inetpub\wwwroot\php\prueba\index.php on line 8

Eso es que la libreria php_mssql.dll no la reconoce he intentado poner lo siguiente la ruta dnd esta la libreria en el servidor

extension="Z:\Archivos de programa\PHP\ext\php_mssql.dll" pero tampoco me lo coje.

Alguien tiene alguna idea de como puedo solucionar esto?

Salu2 y gracias
  #8 (permalink)  
Antiguo 18/03/2008, 09:32
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Re: conexión con MSSQL

Hola codeman1234,

No debes de especificar la ruta completa en la linea de extensión, para eso tienes la directiva extension_dir mas arriba, para especificar la ruta a las extensiones.

Saludos.
  #9 (permalink)  
Antiguo 19/03/2008, 03:23
Avatar de codeman1234  
Fecha de Ingreso: marzo-2008
Mensajes: 545
Antigüedad: 16 años, 1 mes
Puntos: 2
Re: conexión con MSSQL

Hola GatorV,

Me he estado informando del tema y he mirado por internet y he hecho todas las sugerencias que me han comentado que son las siguientes:

- He desinstalado e instalado el php
- En el php.ini tengo puesto en extension_dir = E:\PHP\ext que es dnd tengo las librarias
- Le he quitado el ; (el comentario) a extension=php_mssql.dll en php.ini
- He ejecutado php.exe y no me falla
- Tengo las librerias php5activescript, php_adt, php_apd, php_bcompiler, php_mssql, php_sockets, php_mysql, php_pdf.
- He reiniciado el servidor web, el servidor en si y mi pc.

Que otra cosa puede ser para que el PHP me reconozca las funciones de MS SQL SERVER y me permita utilizarlo como BD?? Ya que me sigue dando el mismo error:

Fatal error: Call to undefined function mssql_connect() in E:\Inetpub\wwwroot\php\index.php on line 6

y el codigo que tengo es el siguiente:

<html>
<head>
<title></title>
</head>
<?php
$conectID = mssql_connect("192.168.1.15","php","php") or die ("No conecta con SQLSERVER");
mssql_close($conectID);
echo ("HOLA");
?>
<body>
</body>
</html>

Lo que falla es lo que esta en negrita. Que es cuando utilizo en el codigo mssql_connect que php no lo reconoce como una funcion definida. Alguien tiene alguna idea de porque podria ser esto? Porque se me acaban las ideas y nose donde mas buscar y desgraciadamente problema de permisos tampoco es.

Alguien tiene alguna sugerencia?

Gracias y saludos a tod@s !!

Última edición por codeman1234; 19/03/2008 a las 04:36
  #10 (permalink)  
Antiguo 01/04/2008, 15:04
 
Fecha de Ingreso: febrero-2008
Mensajes: 133
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: conexión con MSSQL

codeman que servidor estas usando?
  #11 (permalink)  
Antiguo 18/06/2008, 17:06
 
Fecha de Ingreso: junio-2008
Mensajes: 1
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Re: conexión con MSSQL

Cita:
Iniciado por codeman1234 Ver Mensaje
Hola GatorV,

Me he estado informando del tema y he mirado por internet y he hecho todas las sugerencias que me han comentado que son las siguientes:

- He desinstalado e instalado el php
- En el php.ini tengo puesto en extension_dir = E:\PHP\ext que es dnd tengo las librarias
- Le he quitado el ; (el comentario) a extension=php_mssql.dll en php.ini
- He ejecutado php.exe y no me falla
- Tengo las librerias php5activescript, php_adt, php_apd, php_bcompiler, php_mssql, php_sockets, php_mysql, php_pdf.
- He reiniciado el servidor web, el servidor en si y mi pc.

Que otra cosa puede ser para que el PHP me reconozca las funciones de MS SQL SERVER y me permita utilizarlo como BD?? Ya que me sigue dando el mismo error:

Fatal error: Call to undefined function mssql_connect() in E:\Inetpub\wwwroot\php\index.php on line 6

y el codigo que tengo es el siguiente:

<html>
<head>
<title></title>
</head>
<?php
$conectID = mssql_connect("192.168.1.15","php","php") or die ("No conecta con SQLSERVER");
mssql_close($conectID);
echo ("HOLA");
?>
<body>
</body>
</html>

Lo que falla es lo que esta en negrita. Que es cuando utilizo en el codigo mssql_connect que php no lo reconoce como una funcion definida. Alguien tiene alguna idea de porque podria ser esto? Porque se me acaban las ideas y nose donde mas buscar y desgraciadamente problema de permisos tampoco es.

Alguien tiene alguna sugerencia?

Gracias y saludos a tod@s !!

Hola.... soy nueva trabajando en PHP y tengo el mismo problema que describes ya he provado de todo... no se que haces... me gustaria saber como resolvio el problema.... gracias de antemano
mi correo es [email protected]
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 06:08.