Foros del Web » Programando para Internet » PHP »

listas de bases de datos

Estas en el tema de listas de bases de datos en el foro de PHP en Foros del Web. Hola, estoy siguiendo un tutorial de mysql, y estoy con lo de las listas de basses de datos. He hecho el siguiente código que se ...
  #1 (permalink)  
Antiguo 31/07/2009, 11:00
Avatar de PacoRuiz  
Fecha de Ingreso: abril-2009
Mensajes: 254
Antigüedad: 15 años
Puntos: 3
listas de bases de datos

Hola, estoy siguiendo un tutorial de mysql, y estoy con lo de las listas de basses de datos. He hecho el siguiente código que se supone que me lista las bases de datos del servidor con sus nombres:

<?php
$c=mysql_connect("localhost","root","");
$p=mysql_list_dbs ($c);
echo "El número de basese es $p<br>";
$n=mysql_num_rows($p);
echo "número de bases en el servidor $n <br>";
echo "estos son los nombres de las bases<br>";
for ($i=0;i<=6;$i++)
{
echo mysql_db_name($p, $i),"<br>";
}
?>

Lo he ejecutado y me ha dado este resultado:

El número de basese es Resource id #3
número de bases en el servidor 7
estos son los nombres de las bases
information_schema
basededatos
cdcol
mysql
phpmyadmin
test
webauth

Warning: mysql_db_name() [function.mysql-db-name]: Unable to jump to row 7 on MySQL result index 3 in C:\xampp\htdocs\xampp\listabases.php on line 10

Luego sigue el mismo warning, pero en lugar de line 10, va aumentando hasta más de mil y al ordenador se le va la pinza.

No sé por qué hace eso
  #2 (permalink)  
Antiguo 31/07/2009, 11:26
 
Fecha de Ingreso: enero-2009
Mensajes: 408
Antigüedad: 15 años, 3 meses
Puntos: 14
Respuesta: listas de bases de datos

Hola , lo que puedes hacer es una consulta sql con SHOW DATABASES y luego procesas dicho resultado , de ese modo te evitaras entrar en un consumo excesivo de recursos :).

Saludos
  #3 (permalink)  
Antiguo 31/07/2009, 11:29
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: listas de bases de datos

Hay un codigo mas facil para poder visualizar las base de datos. Mira este codigo sacado de php.net y modificado conforme a tu codigo

Código PHP:
Ver original
  1. <?php
  2. $c = mysql_connect('localhost', 'mysql_user', 'mysql_password');
  3. $p = mysql_list_dbs($c);
  4. echo "número de bases en el servidor $n <br>";
  5. echo "estos son los nombres de las bases<br>";
  6.  
  7. while ($row = mysql_fetch_object($p)) {
  8.      echo $row->Database . "<br />";
  9. }
  10. ?>

No he hecho la prueba de tu codigo para poder decirte exactamente como arreglar el error. Pero de la forma como te indique es como puedes visualizar las base de datos. Si estas haciendo prueba para aprender lo que te esta indicando el error es que no pudo continuar con la linea 7 en MySQL.
  #4 (permalink)  
Antiguo 31/07/2009, 11:36
 
Fecha de Ingreso: mayo-2006
Ubicación: Bogotá
Mensajes: 2.061
Antigüedad: 18 años
Puntos: 50
Respuesta: listas de bases de datos

corrigiendo el codigo que puso el primer echo esta mal porque la variable $p debe ser un array y no puede imrimirse asi.


En el for la variable i le falta el signo pesos.


Saludos,
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




La zona horaria es GMT -6. Ahora son las 07:29.