Foros del Web » Programando para Internet » PHP »

cargar archivo.sql a la base de datos con php?

Estas en el tema de cargar archivo.sql a la base de datos con php? en el foro de PHP en Foros del Web. Hola, lo que estoy intentando es cargar un archivo.sql a la base de datos, para que este cree las tablas que tenga que crear en ...
  #1 (permalink)  
Antiguo 29/08/2009, 03:31
 
Fecha de Ingreso: noviembre-2007
Mensajes: 504
Antigüedad: 16 años, 4 meses
Puntos: 2
cargar archivo.sql a la base de datos con php?

Hola, lo que estoy intentando es cargar un archivo.sql a la base de datos, para que este cree las tablas que tenga que crear en la base de datos y mas que nada para subir respaldos ya que no tengo acceso a shell en un hosting y el phpmyadmin me da error, mi script me imprime "no se puedo" es decir q no puedo cargar el archivo pero si lo hago desde la linea de comando exactamente igual como lo estoy poniendo el script. si funciona, mas sinembargo con mi script de php no funciona :(.
Espero puedan ayudarme. Saludos.

Código PHP:
<?PHP
    $hs
="localhost";
    
$us="root";
    
$ps="123456";
    
$db="pruebas";
    
$conexion=mysql_connect("$hs","$us","$ps") or //conectamos con la base de datos
    
die ("no se pudo conectar");
    echo 
"conectado";
    echo 
"<br>";
                    {
                
//seleccionamos la base de datos
                    
mysql_select_db("$db")or die
                        (
"no se pudo seleccionar");
                        echo
"seleccionado";
                        echo 
"<br>";
                        }
                    
                        {
                            
//cargamos el archivo .sql
                        
$consulta="source /home/th3r0rn/www/ls.sql";
                        
mysql_query($consulta) or die ("no se puedo");
                        echo 
"se pudo";
                        
                            
                            }
?>

Última edición por th3r0rn; 29/08/2009 a las 03:41
  #2 (permalink)  
Antiguo 29/08/2009, 09:03
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 1 mes
Puntos: 360
Respuesta: cargar archivo.sql a la base de datos con php?

Cita:
cargar archivo.sql a la base de datos con php?
Con el solo titulo, te puedo decir que estas en el foro equivocado.
Pregunta en el foro de php.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 29/08/2009, 11:23
 
Fecha de Ingreso: noviembre-2007
Mensajes: 504
Antigüedad: 16 años, 4 meses
Puntos: 2
Respuesta: cargar archivo.sql a la base de datos con php?

perdon, juraria que lo puse en el foro de php, esq lo postie en la madrugada ya muy cansado :P
nose como lo miuevo al foro de php?
  #4 (permalink)  
Antiguo 29/08/2009, 16:21
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 10 meses
Puntos: 1517
Respuesta: cargar archivo.sql a la base de datos con php?

En primero lugar eso no es una consulta. Estas escribiendo una direccion. Para hacer una consulta tienes que leer el archivo. Necesitas aprender sobre filesystem. Si quieres mas ejemplos visita este lugar http://www.w3schools.com/PHP/php_ref_filesystem.asp.

Te sugiero que leas sobre fopen, fread, fgets y file
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #5 (permalink)  
Antiguo 29/08/2009, 21:41
 
Fecha de Ingreso: agosto-2009
Mensajes: 9
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: cargar archivo.sql a la base de datos con php?

Hola,

Como bien lo dicen no es una consulta, para correrlo desde PHP con mysql_query podrias hacer lo siguiente

<?php
$sql=file_get_contents("/archivo/sql/script.sql");
foreach(explode(";",$sq)l as $sql_index=>$query){
mysql_query($query);
}
?>
esto por que el mysql_query solo acepta un solo query por llamada

Ojo tendrian que ser puros querys, o inserts... nada de comandos de la consola de mysql, que es lo que pretendias hacer con "source"
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 01:52.