Jump to content

Paulo Oliveira Albuquerque

Members
  • Content count

    35
  • Joined

  • Last visited

Community Reputation

0 Comum

About Paulo Oliveira Albuquerque

  • Birthday 04/14/1989

Informações Pessoais

  • Sexo
    Masculino

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Ola galera Preciso de ajuda se puderem me ajudar ai Eu tenho o código de fazer EXPORTAÇÃO da database ela faz tudo certo e salva em uma pasta porém quero que quando ela for baixado que tenha uma listagem dos que foi baixando sem precisar eu ter que abrir o cpanel e ir ate a pasta onde esta Código do form <?php if(isset($_SESSION['msg'])){ echo "<p>".$_SESSION['msg']."</p>"; unset($_SESSION['msg']); } ?> <form method="POST" action="processar.php" enctype="multipart/form-data"> <div class="col-md-6"> <div class="form-group"> <label>Servidor:</label> <input class="form-control" name="servidor" value="localhost" required> </div> </div> <div class="col-md-6"> <div class="form-group"> <label>Usuario:</label> <input class="form-control" name="usuario" value="jnnews_99999" required> </div> </div> <div class="col-md-6"> <div class="form-group"> <label>Senha:</label> <input class="form-control" type="password" name="senha" value="###9898-676#fvf#" required> </div> </div> <div class="col-md-6"> <div class="form-group"> <label>Banco de Dados:</label> <input class="form-control" name="dbname" value="jnnews_99999" required> </div> </div> <center><hr> <button type="submit" class="btn btn-primary">Exportar</button> <br><br> </center> </form> Aqui é o processar.php <?php session_start(); ob_start(); //Receber os dados do formulário $servidor = $_POST['servidor']; $usuario = $_POST['usuario']; $senha = $_POST['senha']; $dbname = $_POST['dbname']; //Criar a conexao com BD $conn = mysqli_connect($servidor, $usuario, $senha, $dbname); //Incluir o arquivo que gerar o backup include_once("gerar_dados.php"); header("Location: listar_database.php"); Este é o gerar_dados.php <?php //Ler as tabelas $result_tabela = "SHOW TABLES"; $resultado_tabela = mysqli_query($conn, $result_tabela); while($row_tabela = mysqli_fetch_row($resultado_tabela)){ $tabelas[] = $row_tabela[0]; } //var_dump($tabelas); $result = ""; foreach($tabelas as $tabela){ //Pesquisar o nome das colunas $result_colunas = "SELECT * FROM " . $tabela; $resultado_colunas = mysqli_query($conn, $result_colunas); $num_colunas = mysqli_num_fields($resultado_colunas); //echo "Quantidade de colunas na tabela: ". $tabela. " - " . $num_colunas . "<br>"; //Criar a intrução para apagar a tabela caso a mesma exista no BD $result .= 'DROP TABLE IF EXISTS '.$tabela.';'; //Pesquisar como a coluna é criada $result_cr_col = "SHOW CREATE TABLE " . $tabela; $resultado_cr_col = mysqli_query($conn, $result_cr_col); $row_cr_col = mysqli_fetch_row($resultado_cr_col); //var_dump($row_cr_col); $result .= "\n\n" . $row_cr_col[1] . ";\n\n"; //echo $result; //Percorrer o array de colunas for($i = 0; $i < $num_colunas; $i++){ //Ler o valor de cada coluna no bando de dados while($row_tp_col = mysqli_fetch_row($resultado_colunas)){ //var_dump($row_tp_col); //Criar a intrução da Query para inserir os dados $result .= 'INSERT INTO ' . $tabela . ' VALUES('; //Ler os dados da tabela for($j = 0; $j < $num_colunas; $j++){ //addslashes — Adiciona barras invertidas a uma string $row_tp_col[$j] = addslashes($row_tp_col[$j]); //str_replace — Substitui todas as ocorrências da string \n pela \\n $row_tp_col[$j] = str_replace("\n", "\\n", $row_tp_col[$j]); if(isset($row_tp_col[$j])){ if(!empty($row_tp_col[$j])){ $result .= '"' . $row_tp_col[$j].'"'; }else{ $result .= 'NULL'; } }else{ $result .= 'NULL'; } if($j < ($num_colunas - 1)){ $result .=','; } } $result .= ");\n"; } } $result .= "\n\n"; //echo $result; } //Criar o diretório de backup $diretorio = 'backup/'; if(!is_dir($diretorio)){ mkdir($diretorio, 0777, true); chmod($diretorio, 0777); } //Nome do arquivo de backup $data = date('d-m-Y'); $tempo= date('h-i-s'); $nome_arquivo = $diretorio . "jnnews_".$data_.$tempo; //echo $nome_arquivo; $handle = fopen($nome_arquivo . '.sql', 'w+'); fwrite($handle, $result); fclose($handle); //Montagem do link do arquivo $download = $nome_arquivo . ".sql"; //Adicionar o header para download if(file_exists($download)){ header("Pragma: public"); header("Expires: 0"); header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header("Cache-Control: private", false); header("Content-Type: application/force-download"); header("Content-Disposition: attachment; filename=\"" . basename($download) . "\";"); header("Content-Transfer-Encoding: binary"); header("Content-Length: " . filesize($download)); readfile($download); $_SESSION['msg'] = "<span style='color: green;'>Exportado BD com sucesso</span>"; }else{ $_SESSION['msg'] = "<span style='color: red;'>Erro ao exportar o BD</span>"; } Aqui seria a listagem da database que eu queria que ela aparece <div class="table-responsive"> <table id="DataTable" class="table table-bordered table-striped"> <thead> <tr> <th width="10px">ID</th> <th>Database</th> <th>Data</th> <th>Hora</th> <th idth="53px">Baixar</th> </tr> </thead> <tbody> <?php $Query = DBRead('database','*'); if (is_array($Query)) { foreach ($Query as $database) { ?> <tr> <td><?php echo $database['id']; ?></td> <td><?php echo $database['dbname']; ?></td> <td><?php echo $database['data']; ?></td> <td><?php echo $database['hora']; ?></td> <td><?php echo $database['nome_arquivo']; ?></td> Tipo ai esta tipo uma tabela sql o que eu preciso na verdade é que todos banco de dados baixado ele seja listado ai pra mim baixar Se puderem me ajudar ai fico grato
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.