Jump to content


Photo

Erro Em Dump Mysql Interrompe O Script


  • Faça o login para participar
4 replies to this topic

#1 Almagus

Almagus

    Novato no fórum

  • Usuários
  • 6 posts
  • Sexo:Masculino
  • Localidade:Rio Grande do Sul

Posted 26/07/2010, 11:36

Pessoal utilizo o código abaixo mas quando dá um erro em uma das SQLS ele trava todo o script.
Gostaria de ignorar o erro, porque é um erro bobo no exemplo abaixo se o usuário não possui na tabela
os campos valor_condominio e valor_iptu da um erro e o while não executa o que deve fazer nos demais
usuarios:

// pega o endereço do diretório
$diretorio = "../users"; 
// abre o diretório
$ponteiro  = opendir($diretorio);
// monta os vetores com os itens encontrados na pasta
while ($nome_itens = readdir($ponteiro)) {
    if(($nome_itens!=".")and($nome_itens!="..")){
		$itens[$i] = $nome_itens;
		//pegando arquivos de configuração
		echo "Atualizando a pasta $itens[$i]<br>";
		include("../users/".$itens[$i]."/configuracoes_usuario.php");
		if($i<=0){//includa a função apenas uma vez
			include("../funcoes.php");
		}
		
		$consulta = "ALTER TABLE `aio_imoveis`
  DROP `valor_condominio`,
  DROP `valor_iptu`;
";
		mysql_query($consulta);
		$i ++;
	}
}

Avalie meu trabalho neste fórum maravilhoso aqui!
http://forum.wmonlin...de-imobiliaria/

#2 LeoB

LeoB

    Super Veterano

  • Usuários
  • 1876 posts
  • Sexo:Masculino
  • Interesses:Programação

Posted 26/07/2010, 12:47

Não deve ser isso não. mysql_query() não trava execução de código. Como você chegou nessa conclusão?

Pra incluir um arquivo apenas uma vez, pode usar include_once também.

http://www.php.net/m...nclude-once.php

#3 Almagus

Almagus

    Novato no fórum

  • Usuários
  • 6 posts
  • Sexo:Masculino
  • Localidade:Rio Grande do Sul

Posted 26/07/2010, 13:10

Não deve ser isso não. mysql_query() não trava execução de código. Como você chegou nessa conclusão?

Pra incluir um arquivo apenas uma vez, pode usar include_once também.

http://www.php.net/m...nclude-once.php


Cheguei a conclusão porque todos os usuários antes de dar o erro receberam as alterações. Os demais não. E continua assim, não
importa o quanto eu mude a query, quando dá erro os demais não recebem a execução.

Obrigado pela dica do include_once()
Avalie meu trabalho neste fórum maravilhoso aqui!
http://forum.wmonlin...de-imobiliaria/

#4 LeoB

LeoB

    Super Veterano

  • Usuários
  • 1876 posts
  • Sexo:Masculino
  • Interesses:Programação

Posted 26/07/2010, 13:19

Pelo visto você está fazendo essa alteração em vários bancos. Quem muda a conexão é quem? É o configuracoes_usuario.php? O que tem nele?

#5 Almagus

Almagus

    Novato no fórum

  • Usuários
  • 6 posts
  • Sexo:Masculino
  • Localidade:Rio Grande do Sul

Posted 26/07/2010, 14:20

Oi, respondendo, sim existe um arquivo com as configurações do banco de dados e outro que tem as funções, que automaticamente
conecta os bancos de dados...

Peraí...

Você acabou de ajudar a descobrir o problema...uma vez includado o funcoes.php, ele só conecta uma vez no banco de dados...

Vou mudar o codigo e tentar novamente.

Editando --------------------------------

Não estava sendo feito uma nova conexão a cada usuário, corrigi o código ficou assim:

// pega o endereço do diretório
$diretorio = "../users"; 
// abre o diretório
$ponteiro  = opendir($diretorio);
// monta os vetores com os itens encontrados na pasta
while ($nome_itens = readdir($ponteiro)) {
    if(($nome_itens!=".")and($nome_itens!="..")){
		$itens[$i] = $nome_itens;
		//pegando arquivos de configuração
		echo "Atualizando a pasta $itens[$i]<br>";
		include("../users/".$itens[$i]."/configuracoes_usuario.php");
		include_once("../funcoes.php");
		if($i>0){
			$conectar = conexao_bd($config["bdname"],$config["bdlocal"],$config["bduser"],$config["bdpass"]);
		}
		
		$consulta = "ALTER TABLE `aio_imoveis`
  DROP `valor_condominio`,
  DROP `valor_iptu`;
";
		@mysql_query($consulta);
		$i ++;
	}
}

Obrigado!

Edição feita por: Almagus, 26/07/2010, 14:27.

Avalie meu trabalho neste fórum maravilhoso aqui!
http://forum.wmonlin...de-imobiliaria/




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq