Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

visitante_php

[Resolvido] erro ao inserir multiplas querys com mysql_query()

Recommended Posts

nao eh bem isso, o q eu quero eh pegar o arquivo q foi geroad o no backup do mysql por php, e reinseri-lo la...

ehh...

 

isso muda todo o contexto do tópico

 

que arquivo é esse que é gerado ??

Compartilhar este post


Link para o post
Compartilhar em outros sites

o lance eh o seguinte...eu copiei um script q faz o backup do db...ae eu fiz ele criar um arquivo... so q eu kero reinserir os dados do arquivo d novo no db, tipo fazer bacukp e "reinstalar" as informacoes...so encontrei script e faz o backup, q reinsere nao encontrei nada... =/

Compartilhar este post


Link para o post
Compartilhar em outros sites

o PHP executa linha de comando

 

http://php.net/shell_exec

http://php.net/passthru

http://php.net/exec

http://php.net/system

 

obviamente que precisa ter permissão para execução

 

mas se você quer mesmo criar algo sem que dependa das configurações do servidor, sugiro que utilize o PHPMyAdmin pois contém scripts adequados para fazer isso sem corrompimento de dados.

 

na teoria é muito simples, basta abrir o banco de dados gravar todos os dados num arquivo .sql ou .txt

e pra restaurar basta ler os arquivos e executar todas as instruções

 

mas não é somente isso

 

no caminho você encontrará diversos problemas como

- tabelas com chaves estrangeiras

- codificações de dados

- esse simples problema que você está tendo em remontar a tabela, etc..

 

no final, o script se tornará bastante complexo.

 

por isso aconselho uso de uma ferramenta como PHPMyAdmin, cujo desenvolvimento possui quase 10 anos de know how

 

http://www.phpmyadmin.net

Compartilhar este post


Link para o post
Compartilhar em outros sites

abre o arquivo sql com o php

da um explode no arquivo em ");"(final de query);

ai da um foreach no array gerado

dentro do foreach usa o mysql_query para executar aos pedaços.

 

abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

O que foi feito?

Compartilhar este post


Link para o post
Compartilhar em outros sites

li o arquivo sql com file_get_contents, dei um explode em ";" e usei um for para inserir os elementos do array com mysql_query:

<?php

$database = "testes2";
set_time_limit(0);
$con = @mysql_connect("localhost", "root", "beethoven") or die("Erro ao conectar: ".mysql_error());
mysql_query("CREATE DATABASE IF NOT EXISTS ".$database) or die("Erro ao selecionar o db: ".mysql_error());
mysql_select_db($database) or die("Erro ao selecionar o db: ".mysql_error());
$backup = "testes.sql";
$conteudo = file_get_contents($backup);
$linhas = explode(";", $conteudo);
for($i = 0; $i <= count($linhas); $i++){
mysql_query($linhas[$i]);
//echo $linhas[$i];
}


?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.