Buenas,
Aqui publico las Funciones para exportar e importar una base de datos:
Es solo los DATOS DE LAS TABLAS
Código PHP:
function ExportarDB()
{
$con_base = mysql_connect("localhost", "root", "rodno123");
$base = "personal";
$tablas = mysql_query("show tables from $base; ", $con_base);
$cant_tablas=0;
$cant_tablas_recorridas=0;
$contador=0;
if ($tablas) {
while ($tabla = mysql_fetch_array($tablas))
{
$mitabla = $tabla[0];
$cant_tablas++;
$datos = mysql_query("select * from $base.$mitabla;", $con_base);
if ($datos)
{
$cant_tablas_recorridas++;
$campos = mysql_num_fields($datos);
$regs = mysql_num_rows($datos);
for ($i = 0; $i < $regs; $i++) {
$inserta = "insert into $mitabla(";
for ($j = 0; $j < $campos; $j++) {
$nombre = mysql_field_name($datos, $j);
$inserta .= "$nombre,";
}
$inserta = substr($inserta, 0, strlen($inserta) - 1) . ") values(";
for ($j = 0; $j < $campos; $j++) {
$tipo = mysql_field_type($datos, $j);
$valor = mysql_result($datos, $i, $j);
switch ($tipo) {
case "string":
case "date":
case "time":
$valor = "'$valor'";
break;
}
$inserta .= "$valor,";
}
$inserta = substr($inserta, 0, strlen($inserta) - 1) . ");*/*";
$texto .= $inserta;
$contador++;
}
} else
return false;
}
$texto.=strlen($texto);
if ($cant_tablas==$cant_tablas_recorridas)
return base64_encode($texto);
else
return false;
}
return false;
}
function ImportarBaseD($file)
{
$conexion = mysql_connect("localhost", "root", "rodno123");
mysql_select_db("personal",$conexion);
$sql="TRUNCATE tabla1;
TRUNCATE tabla2;";// Estas son las Consultas para limpiar todas las tablas donde se van a insertar los datos
if ($conexion)
{
$file_content = file($file);
foreach($file_content as $sql_line => $sql_lines )
{
$sql_text=base64_decode($sql_lines);
}
$Array_SQL=explode(";*/*",$sql_text);
$cantsql=count($Array_SQL)-1;
$cant_char=strlen($sql_text)-strlen($Array_SQL[$cantsql]);
if ($cant_char==$Array_SQL[$cantsql])
{
$sqlvaciar=explode(";",$sql);
for ($i=0; $i<count($sqlvaciar);$i++)
{
if(!mysql_query($sqlvaciar[$i],$conexion))
{
break;
mysql_close($conexion);
return false;
}
}
for ($i=0; $i<$cantsql ;$i++)
if (!mysql_query($Array_SQL[$i],$conexion))
{
break;
mysql_close($conexion);
return false;
}
}
else
return false;
}
else
return false;
mysql_close($conexion);
return true;
}
Ejemplo para exportar:
Código PHP:
$texto_cod=ExportarDB();
if ($texto_cod)
{
$fecha = date("dmY_His");
$archivo = "Salva_" . $fecha . ".dsql";
$file_exportar = fopen("temp/" . $archivo, "w+");
//$texto_cod=base64_encode($texto);
if (fwrite($file_exportar, $texto_cod))
{
fclose($file_exportar);
echo "<center>Se leyeron los Datos correctamente y estan listos para:<br><br></center> ";
echo '<center><a href="file.php?filename='.$archivo.'">Exportar y Guardar</a></center>';
}
else echo "Error, contacte con el Administrador del Software";
}
else
echo "Error, contacte con el Administrador del Software";
Ejemplo para importar:
Código PHP:
if (ImportarBaseD($_FILES['filesalva']['tmp_name']))
echo "<br><center>Se ha completado la Carga de los datos correctamente.</center>";
else
echo "<br><center>Error.</center>";
este scripts debera llamarse file.php:
Código PHP:
$archivo=$_GET['filename'];
if (file_exists("temp/".$archivo.""))
{
$file=fopen("temp/".$archivo."","r");
header("Content-disposition: attachment;filename=".$archivo."");
header("Content-Type: application/force-download");
while (!feof($file))
{
$texto = fgetss($file, 1024);
echo $texto;
}
fclose($file);
unlink("temp/".$archivo."");
}
else
echo "Error al Cargar Datos";
Saludos y Disculpen la Demora, y si les hace falta exportar e importar todo, estructura y todo me postean