PDA

Ver la Versión Completa : importar base de datos con form


jaerazo
01-07-2006, 02:11:36
Hola, me he enterado de su sitio gracias al problema que enfrento, me ha parecido muy bueno ingresar:o . Bueno, resulta que investigando, en un foro puesto en el sitio alguien pedia ayuda para subir(upload)una base de datos por medio de un form en donde el usuario pudiera buscar el archivo(en mi caso SQL) con solo dando click, el script o scripts crearan la base de datos con el archivo proporcionado. Antes de colgar este foro, busque si le habian solucionado el problema a la otra persona pero no lo encontre. Exactamente en la parte en que tengo problemas es en el cómo puedo ejecutar el archivo sql que tengo, aunque no se si lo he leido de la forma correcta. Por esto, y debido a la necesidad y urgencia de desarollarlo luego de gastar mucho tiempo tratando de hacerlo:( , me comunico con ustedes y espero sea de gran ayuda. Agradeciendo su tiempo y cordialidad. si quieren pueden enviarme la respuesta a mi correo jae831214@yahoo.es con el tema indicado. Por cierto el motor de base de datos es Mysql 5 y el php es 4.3, gracias.
ATT: jose erazo

D-MO
02-07-2006, 01:20:47
Que Tal jaerazo, bienvenido al foro, en primer lugar quiero recomendarte que te leas la guia de estilo (http://www.clubdelphi.com/foros/guiaestilo.php) para que conozcas las "reglas" del foro. Con respecto a tu problema, ¿te has planteado el poder usar phpMyAdmin?, aunque no se si en realidad la forma que propones es la que "obligatoriamente" debes usar, de ser así, lo que puedo recomendarte es lo siguiente:


Teniendo tu archivo ya subido, lo lees tu archivo con la funcion file_get_contents()
Toma este valor y conviertelo en un arreglo dividido por cada ";" (Punto y Coma) que representarán el final de cada consulta.
Mediante un ciclo recorre todo el arreglo anterior y en cada ocasión ejecuta la consulta que corresponde.Son simples 3 pasos que harán esta tarea.


Saludos.

D-MO
02-07-2006, 01:27:09
Aprovechando que tengo un poquito de tiempo libre aquí el ejemplo:

$archivo = file_get_contents("ruta/archivo.sql");

$arreglo = explode(";",$archivo);

for ($i=0;$i<count($arreglo);$i++){
my_sql_query($arreglo[$i],$enlaceSQL);
}


Como lo vez no es nada grande, pero asi mismo no es tan funcional ya que si el archivo tiene comentario los agregaría en la consulta o si se encuentra algún ";" (Punto y Coma) dentro de una cadena en la consulta tambien daría algun problema, pero eso corre por tu cuenta :p

saludos.