Categorías > Lenguajes > PHP > ver que bases de datos estan disponibles con PHP¿? [SOLUCIONADO]...
Nuevo Mensaje | Responder
mandrake


134 envíos
Desconectado
1466 lecturas
0 respuestas
ver que bases de datos estan disponibles con PHP¿? [SOLUCIONADO]18-06-2010 a las 20:15:39

Hola a todos, que tal; espero estén bien!
Hoy me aqueja un pequeño problema...

Estoy creando una aplicación web (html+PHP+(algo de javascritp)+base de datos); y deseo saber como puedo hacer para que con ayuda de PHP, saber que bases de datos, están disponibles en el server(mismo server en donde estará mi aplicación).

Como ejemplo...

Drupal, los que han usado esta herramienta; saben que en su "instalación" uno tiene la oportunidad de escoger que base de datos usar (obviamente debe estar disponible), llamese: MySql, PostgreSql, Oracle, etc...

Mi meta, es hacer una aplicación web para gestionar firmas de abogados; y deseo hacer la lo más configurable posible. Para ello, me gustaría que pudiera trabajar con  varios tipos de base de datos. Por el momento, solo manejo Mysql y algo de PostgreSql. Pero me gustaría que desde ya mi sistema pudiera detectar que base de datos; se encuentran disponibles.

Un saludo a todos, y MUCHAS gracias de antemano.

pd---> Chuloyo, sigue así con el curso de php! ¿Harás algún proyecto en grupo; como en su momento hizo Sanguinario_Joe...? Sería estupendo!




Gente, he solucionado mi inconveniente. Les dejo el code en caso alguna vez necesiten hacer algo parecido....

Código Fuente:

<?php
        // put your code here
        for($i=1;$i<=50590;$i++) {
    $conn = @fsockopen("localhost", $i);
    if ($conn) {
        switch ($i)
        {
            case 3306:
                echo "\nPort $i: MySql.\n";
                fclose($conn);
                break;
            case 2483:
                echo "\nPort $i: Oracle.\n";
                fclose($conn);
                break;
            case 5432:
                echo "\nPort $i: PostgreSql.\n";
                fclose($conn);
                break;
            Default:
                //echo "\nPort $i is open.\n";
                fclose($conn);     
        }
    }
}
        ?>


En sí la solución es ir escaneando puertos...y utilizar un switch; para que cuando sea en un puerto de alguna base de datos...PLOP mostrar el mensaje:

Port 3306: MySql. Port 5432: PostgreSql.

Espero les sea de alguna utilidad...

pd--> Sí descomentan  el echo del default... se le avisará que otros puertos aparte de los utilizados en MySql, PostgreSql y Oracle.

Saludos!!!

"Cuando estás en un atasco de tráfico con un Porsche, todo lo que puedes hacer es consumir más combustible que el resto estando parado. La escalabilidad va de construir carreteras más anchas, no coches más rápidos"
Responder | Citar | Moderar | Mensaje Privado
Training Channel
Este mensaje no tiene respuestas