User Tag List

Resultados 1 al 9 de 9

Tema: Gurús de las BBDD yo os invoco! Conexión a SQL Server desde php

  1. #1

    Fecha de ingreso
    Jan 2010
    Ubicación
    Valencia
    Mensajes
    480
    Mencionado
    7 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    41
    Agradecer Thanks Received 
    19
    Thanked in
    Agradecido 9 veces en [ARG:2 UNDEFINED] posts

    Gurús de las BBDD yo os invoco! Conexión a SQL Server desde php

    Tengo que acceder a una bbdd de SQL Server y he pensado hacerlo desde PHP en una Raspberry Pi.
    Simplemente es leer unos valores de tabla y subirlos a MySQL en la nube.

    He configurado lo siguiente donde esta el SQL Server:

    1.- Administrador de orígenes de datos ODBC, DSN de sistema, Agregar SQL Server.
    2.- He configurado el DSN como: Nombre: servidorsql Servidor: SQL_SERVER\SQLEXPRESS
    3.- He creado un usuario en SQL Server, configurado para acceder a la bbdd en cuestión.

    En PHP estoy utilizando el siguiente código:

    $connection = odbc_connect("Driver={SQL Server};Server=192.168.1.53;Database=bbddprueba;", "usuario1", "123456");

    Es correcta la String de conexión?
    Que valor tengo que poner en Driver y Server?
    En Driver va esto o hay que poner el nombre que le hemos dado al crear el DSN de sistema?
    En Server hay que poner la IP o el nombre del servidor?

    Desde la Raspberry hago ping a la IP del SQL Server y obtengo respuesta, puedo probar conexión al SQL Server de otra forma?

    El error que me da es este:

    [unixODBC][Driver Manager]Data source name not found, and no default driver specified

    Espero que me podais tirar un cable, no me deja dormir por las noches
    Caminos fáciles no llevan lejos

  2. #2

    Fecha de ingreso
    Apr 2006
    Mensajes
    10,700
    Mencionado
    146 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    2,055
    Agradecer Thanks Received 
    3,004
    Thanked in
    Agradecido 1,407 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    15
    Pq tiras desde odbc si php tiene soporte propio para sql server? De hecho el error que te devuelve es que en el odbc que tiene tu php parece que no hay soporte sql server. Yo tiraria por aqui:

    http://php.net/manual/es/function.mssql-connect.php

    Tambien que muchas veces tiramos del php base que viene en las distros y a veces no traen todo lo que necesitamos, si no, compilatelo tu, es muy sencillo.


  3. El siguiente usuario agradece a JoJo_ReloadeD este mensaje:

    faraday (22/01/2016)

  4. #3

    Fecha de ingreso
    Sep 2001
    Mensajes
    23,103
    Mencionado
    375 Post(s)
    Tagged
    1 Tema(s)
    Agradecer Thanks Given 
    97
    Agradecer Thanks Received 
    1,180
    Thanked in
    Agradecido 499 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    9
    **** PHP 7 y funciones obsoletas. Me voy a tener que poner otra vez al día con PHP.

  5. #4

    Fecha de ingreso
    Jan 2010
    Ubicación
    Valencia
    Mensajes
    480
    Mencionado
    7 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    41
    Agradecer Thanks Received 
    19
    Thanked in
    Agradecido 9 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por JoJo_ReloadeD Ver mensaje
    Pq tiras desde odbc si php tiene soporte propio para sql server? De hecho el error que te devuelve es que en el odbc que tiene tu php parece que no hay soporte sql server. Yo tiraria por aqui:

    http://php.net/manual/es/function.mssql-connect.php

    Tambien que muchas veces tiramos del php base que viene en las distros y a veces no traen todo lo que necesitamos, si no, compilatelo tu, es muy sencillo.
    Tengo que tener una configuración previa del SQL Server?

    Estoy probando desde mssql_connect pero me devuelve error: "mssql_connect(): Unable to connect to server"
    La cadena de conexión que he utilizado:

    $ip = "SQL_SERVER\SQLEXPRESS";

    // Connect to MSSQL
    $link = mssql_connect($ip, "usuario1", "123456");

    if ( !$link ) {

    if ( function_exists('error_get_last') ) {
    var_dump(error_get_last());
    }

    die('connection failed');
    }

    Disculparme si digo alguna barbaridad, pero en esto voy muy perdido
    Caminos fáciles no llevan lejos

  6. #5

    Fecha de ingreso
    Apr 2006
    Mensajes
    10,700
    Mencionado
    146 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    2,055
    Agradecer Thanks Received 
    3,004
    Thanked in
    Agradecido 1,407 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    15
    Mira que tengas el paquete de sql server para php instalado, en debians suele ser php-mssql, mira que las credenciales sean correctas, mira que el puerto de sql server este abierto (nmap ip_servidor -p puerto_sql_server)...


  7. El siguiente usuario agradece a JoJo_ReloadeD este mensaje:

    faraday (22/01/2016)

  8. #6

    Fecha de ingreso
    Jan 2010
    Ubicación
    Valencia
    Mensajes
    480
    Mencionado
    7 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    41
    Agradecer Thanks Received 
    19
    Thanked in
    Agradecido 9 veces en [ARG:2 UNDEFINED] posts
    Ok, adjunto capturas de lo que me dices.
    Credenciales son correctas, puedo conectarme con el SQL Management
    El puerto ni idea de cual es.
    He utilizado "nmap ip_servidor"

    Nombre:  Captura de pantalla 2016-01-22 a las 11.33.40.png
Visitas: 111
Tamaño: 17.0 KB
    Nombre:  Captura de pantalla 2016-01-22 a las 11.37.04.png
Visitas: 112
Tamaño: 9.2 KB
    Caminos fáciles no llevan lejos

  9. #7

    Fecha de ingreso
    Apr 2006
    Mensajes
    10,700
    Mencionado
    146 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    2,055
    Agradecer Thanks Received 
    3,004
    Thanked in
    Agradecido 1,407 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    15
    El sql server usa el 1433 por default, mira que este abierto.


  10. El siguiente usuario agradece a JoJo_ReloadeD este mensaje:

    faraday (22/01/2016)

  11. #8

    Fecha de ingreso
    Aug 2003
    Ubicación
    Madrid (Getafe)
    Mensajes
    13,932
    Mencionado
    48 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    5
    Agradecer Thanks Received 
    221
    Thanked in
    Agradecido 164 veces en [ARG:2 UNDEFINED] posts
    Entradas de blog
    2
    Cita Iniciado por faraday Ver mensaje
    $ip = "SQL_SERVER\SQLEXPRESS";
    prueba con la ip directamente por eliminar posibles problemas
    $ip="192.168.1.53";

  12. El siguiente usuario agradece a Aiken este mensaje:

    faraday (22/01/2016)

  13. #9

    Fecha de ingreso
    Jan 2010
    Ubicación
    Valencia
    Mensajes
    480
    Mencionado
    7 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    41
    Agradecer Thanks Received 
    19
    Thanked in
    Agradecido 9 veces en [ARG:2 UNDEFINED] posts
    Muchas gracias @JoJo_ReloadeD y @Aiken, he podido solucionar el problema de conexión.

    He configurado en el SQL Server Configuration Manager, SQL Server Network Configuration, TCP/IP, IP Adresses, IP y puerto.

    Siguiendo el string de ejemplo $link = mssql_connect('ip_server' 'user', 'password');

    Todo correcto, conectando a SQL Server 2005 desde PHP en Raspberry pi
    Caminos fáciles no llevan lejos

Etiquetas para este tema

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •