Descargar archivo XML de una BD Mysql
¿Cómo descargar el archivo XML alojado en una base de datos?
1 respuesta
------------------------------------------------------------------------------------
lista.php
-------------------------------------------------------------------------------------
</style>
</head>
<body>
<div class="alert alert-info">
<h2 Style="text-align:center">Pendiente(Datos del cliente importados por la bd) </h2>
</div>
<div class="container">
<table class="table table-hover">
<thead>
<tr>
<th>Id</th>
<th>Folio</th>
<th>Fecha</th>
<th>Monto</th>
<th>Factura</th>
</tr>
</thead>
<?php
include 'config.inc.php';
$db=new Conect_MySql();
$sql = "select*from tbl_documentos3";
$query = $db->execute($sql);
while($datos=$db->fetch_row($query)){?>
<tbody>
<tr>
<td><?php echo $datos['id']; ?></td>
<td><?php echo $datos['folio']; ?></td>
<td><?php echo $datos['fecha']; ?></td>
<td><?php echo $datos['monto']; ?></td>
<td><a href="archivo.php?id=<?php echo $datos['id_documento']?>" target="_blank">xml</a></td>
</tr>
<?php } ?>
</tbody>
</table>
</div>
</html>
-------------------------
archivo.php
-------------------------
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<?php
include 'config.inc.php';
$db=new Conect_MySql();
$sql = "select*from tbl_documentos3 where id_documento=".$_GET['id'];
$query = $db->execute($sql);
if($datos=$db->fetch_row($query)){
if($datos['nombre_archivo']==""){?>
<p>NO tiene archivos</p>
<?php }else{
header('content-type: application/xml');
readfile('archivos/'.$datos['nombre_archivo']);
}
}
?>
</body>
</html>
--------------------------
index.php
--------------------------
<?php
include_once 'config.inc.php';
if (isset($_POST['subir'])) {
$nombre = $_FILES['archivo']['name'];
$tipo = $_FILES['archivo']['type'];
$tamanio = $_FILES['archivo']['size'];
$ruta = $_FILES['archivo']['tmp_name'];
$destino = "archivos/" . $nombre;
if ($nombre != "") {
if (copy($ruta, $destino)) {
$titulo= $_POST['titulo'];
$descri= $_POST['descripcion'];
$db=new Conect_MySql();
$sql = "INSERT INTO tbl_documentos3(titulo,descripcion,tamanio,tipo,nombre_archivo2) VALUES('$titulo','$descri','$tamanio','$tipo','$nombre')";
$query = $db->execute($sql);
if($query){
echo "Se guardo correctamente";
}
} else {
echo "Error";
}
}
}
?>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<div style="width: 500px;margin: auto;border: 1px solid blue;padding: 30px;">
<h4>Subir PDF</h4>
<form method="post" action="" enctype="multipart/form-data">
<table>
<tr>
<td><label>Titulo</label></td>
<td><input type="text" name="titulo"></td>
</tr>
<tr>
<td><label>Descripcion</label></td>
<td><textarea name="descripcion"></textarea></td>
</tr>
<tr>
<td colspan="2"><input type="file" name="archivo"></td>
<tr>
<td><input type="submit" value="subir" name="subir"></td>
<td><a href="lista.php">lista</a></td>
</tr>
</table>
</form>
</div>
</body>
</html>
----------------
config.inc.php
-----------------
<?php
class Conect_MySql {
var $obj = array ( "dbname" => "test",
"dbuser" => "root" ,
"dbpwd" => "" ,
"dbhost" => "localhost" );
var $q_id ="";
var $ExeBit ="";
var $db_connect_id = "";
var $query_count = 0;
private function connect(){
$this->db_connect_id = mysqli_connect($this->obj['dbhost'],$this->obj['dbuser'],$this->obj['dbpwd'],$this->obj['dbname']);
if (!$this->db_connect_id)
{
echo (" Error no se puede conectar al servidor:".mysqli_connect_error());
}
}
function execute($query) {
$this->q_id = mysqli_query($this->db_connect_id,$query);
if(!$this->q_id ) {
$error1 = mysqli_error($this->db_connect_id);
die ("ERROR: error DB.<br> No Se Puede Ejecutar La Consulta:<br> $query <br>MySql Tipo De Error: $error1");
exit;
}
$this->query_count++;
return $this->q_id;
}
public function fetch_row($q_id = "") {
if ($q_id == "") {
$q_id = $this->q_id;
}
$result = mysqli_fetch_array($q_id);
return $result;
}
public function get_num_rows() {
return mysqli_num_rows($this->q_id);
}
public function get_row_affected(){
return mysqli_affected_rows($this->db_connect_id);
}
public function get_insert_id() {
return mysqli_insert_id($this->db_connect_id);
}
public function free_result($q_id) {
if($q_id == ""){
$q_id = $this->q_id;
}
mysqli_free_result($q_id);
}
public function close_db(){
return mysqli_close($this->db_connect_id);
}
public function more_result() {
return mysqli_more_results($this->db_connect_id);
}
public function next_result() {
return mysqli_next_result($this->db_connect_id);
}
public function __construct(){
$this->connect();
}
}
?>
- Compartir respuesta