Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Conectarse a una base de Datos externa (de otro sitio o en otra dirección Web)

Estas en el tema de Conectarse a una base de Datos externa (de otro sitio o en otra dirección Web) en el foro de Bases de Datos General en Foros del Web. Saludos Mi probemilla es qye intento conecarme auna base de datos de otra web y no puedo el codigo es el siguiente: <?php @ $db ...
  #1 (permalink)  
Antiguo 14/09/2005, 14:39
Avatar de Fresh2000  
Fecha de Ingreso: septiembre-2004
Mensajes: 73
Antigüedad: 20 años, 2 meses
Puntos: 0
Exclamación Conectarse a una base de Datos externa (de otro sitio o en otra dirección Web)

Saludos

Mi probemilla es qye intento conecarme auna base de datos de otra web y no puedo el codigo es el siguiente:

<?php
@ $db = mysql_pconnect("http://www.pagina.com/", "gmms_mcc2005", "la150277");
// o coloco en la url "jdbc:mysql://127.0.0.1:1234/", que la ip de sitio no se //conecta
if (!$db)
{
echo "Error: No se ha podido conectar a la base de datos. Por favor, prueba de nuevo más tarde.";
exit;
}
mysql_select_db("gmms_mcc",$db);
$consulta = "select * from celular";
$resultado = mysql_query($consulta);
$num_resultados = mysql_num_rows($resultado);

echo "Número de libros encontrados: ".$num_resultados;

for ($i=0; $i <$num_resultados; $i++)
{
$row = mysql_fetch_array($resultado);
echo "<p><strong>".($i+1).". Numero: ".stripslashes($row["id"]);
echo "</strong><br>Header: ".stripslashes($row["header"]);
echo "<br>Marca: ".stripslashes($row["marca"]);
echo "<br>Modelo: ".stripslashes($row["modelo"]);
echo "</p>";
}
mysql_close($db);

?>

si alguienme puede ayudar gracias como siempre

Última edición por Fresh2000; 14/09/2005 a las 14:52
  #2 (permalink)  
Antiguo 14/09/2005, 15:44
Avatar de Vaalegk  
Fecha de Ingreso: abril-2005
Mensajes: 154
Antigüedad: 19 años, 7 meses
Puntos: 2
imprime el mysql_error te dara mas detalles que el error.
posibles causas.
la DB a la cual te quiere conectar no acepta conexiones remotas
el usuario que estas usando no tiene permiso para conectarse remotamente.
la db esta usando otro puerto, etc.. el mysql_error te dira.
  #3 (permalink)  
Antiguo 15/09/2005, 07:14
Avatar de Fresh2000  
Fecha de Ingreso: septiembre-2004
Mensajes: 73
Antigüedad: 20 años, 2 meses
Puntos: 0
De acuerdo

Gracias por la ayuda me sirvio de mucho

La solución es la siguinte:

se debe dar acceso remoto a la base de datos de la que queremos leer colocando el ip del host de donde se quiere acceder

Espero le sirva a los que como yo tiene o tendran este bug
  #4 (permalink)  
Antiguo 15/09/2005, 15:12
Dandyto
Invitado
 
Mensajes: n/a
Puntos:
Cita:
Iniciado por Fresh2000
Gracias por la ayuda me sirvio de mucho

La solución es la siguinte:

se debe dar acceso remoto a la base de datos de la que queremos leer colocando el ip del host de donde se quiere acceder

Espero le sirva a los que como yo tiene o tendran este bug

Exacto. Hay que utilizar, por ejemplo la siguiente consulta SQL:

Código:
grant all on db_name.table to [email protected] identified by 'password';
example.com es el host desde el cual se desea acceder.
Para que se pueda acceder desde todos los hosts, hay que reemplazar example.com por '%' <-- incluidas las comillas simples. (ej: username@'%')

nota: reemplazar db_name por * para dar acceso a todas las Bd del server. y/o table por * para que sean todas las tablas de esa BD.
por lo gral, se utiliza

Código:
grant all on db_name.* to username@'%' identified by 'password';
Luego:

Código:
FLUSH PRIVILEGES;
Deberían ingresar como root o admin, via shell. acceder al mysql y correr las 2 consultas.

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 14:16.