sorocabaunderground Postado Setembro 6, 2006 Denunciar Share Postado Setembro 6, 2006 eu montei um script que ele pega um TXT lê e dependento do flag que tem no txt ele altera,deleta ou incluiex:. a| casa teste | i | casa teste2 |d| casa teste 3 |as seções do site que utilizam esse esquema de TXT são imoveis,fotos,bairros e cidadesaté aqui está tudo normal tinha terminado o projeto eu já tinha feito 1 pra cada seção+ agora o cliente quer fazer tudo em um unico script.aí entro no meu problema ele esta mandando assim o txt[imoveis]a| casa teste | i | casa teste2 |d| casa teste 3 |[bairros]a| casa teste | i | casa teste2 |d| casa teste 3 |[cidades]a| casa teste | i | casa teste2 |d| casa teste 3 |[fotos]i | casa teste2 |d| casa teste 3 | so que não estou conseguindo dizer ao script aqui acaba os imoveis e agora começa os bairros e assim por diantecomo posso fazer isso?o meu script $file = "c:/arquivos de programas/easyphp1-7/www/intermedial/site/adm/txt/".$arquivo.""; $v_key="nL9qL8ZLc3"; $erro = ""; $sucesso = ""; $errors = ""; $v_id=""; $conta=0; if ($key<>$v_key){ $erro= $erro."Chave inválida!<br>"; } if ($erro==""){ $txt_exists="c:/arquivos de programas/easyphp1-7/www/intermedial/site/adm/txt/".$arquivo.""; if (file_exists($txt_exists)){ $txt=file($txt_exists); for ($i=1;$i<sizeof($txt);$i++){ $v_line=explode("|", $txt[$i]); //echo $v_line[14]."<br>"; //classifica tipo if ((strtolower($v_line[14])==strtolower("L"))AND($v_line[14]<>"")){ $tipo="locacao"; }elseif ((strtolower($v_line[14])==strtolower("V"))AND($v_line[14]<>"")){ $tipo="venda"; }elseif ((strtolower($v_line[14])==strtolower("A"))AND($v_line[14]<>"")){ $tipo="ambos"; } // fim do tipo if ($v_line[0]=="I"){ $sql_i="INSERT INTO tbimovel(ref_imovel, tipo_imovel, vr_loc, vr_vda, cat_imovel, cat2_imovel, complemento, obs_imovel, "; $sql_i=$sql_i." nr_dormitorios, cod_cidade, cod_bairro, suites, vagas_garagem, area_const, area_terr, area_util) VALUES("; $sql_i=$sql_i." '$v_line[1]', '$tipo', '$v_line[2]', '$v_line[3]', '$v_line[4]', '$v_line[15]', '$v_line[16]', '$v_line[10]', "; $sql_i=$sql_i." '$v_line[7]', '$v_line[5]', '$v_line[6]', '$v_line[8]', '$v_line[9]', '$v_line[11]', '$v_line[12]', '$v_line[13]')"; $insert=mysql_query($sql_i, $conexao); for ($x=17;$x<22;$x++){ //$arquivo="c:/arquivos de programas/easyphp1-7/www/emaximovel/sistema/pictures/$v_line[$x].jpg"; //if (file_exists($arquivo)){ if ($v_line[$x]<>""){ $sql_pic="INSERT INTO tbimagem(ref_imovel, tipo_imovel, path_imovel) VALUES('$v_line[1]','$tipo',"; $sql_pic=$sql_pic." '/pictures/$v_line[$x].jpg')"; $inserir=mysql_query($sql_pic,$conexao); } /*}else{ $erro = $erro."O arquivo <strong>$v_line[$x].jpg</strong>, referência <strong>$v_line[1]</strong> não existe, verifique se o nem foi digitado corretamente.<br>"; }*/ } //echo $sql_i."<br><br>"; //echo "incluir<br>"; $sucesso=$sucesso."Imóvel <strong>$v_line[1]</strong> incluído com sucesso!<br>"; }elseif($v_line[0]=="A"){ $sql_a="UPDATE tbimovel SET ref_imovel='$v_line[1]', tipo_imovel='$tipo', vr_loc='$v_line[2]', vr_vda='$v_line[3]', "; $sql_a=$sql_a." cat1_imovel='$v_line[4]', cat2_imovel='$v_line[15]', complemento='$v_line[16]', obs_imovel='$v_line[10]', "; $sql_a=$sql_a." nr_dormitorios='$v_line[7]', cod_cidade='$v_line[5]', cod_bairro='$v_line[6]', suites='$v_line[8]', "; $sql_a=$sql_a." vagas_garagem='$v_line[9]', area_const='$v_line[11]', area_terr='$v_line[12]', area_util='$v_line[13]' "; $sql_a=$sql_a." WHERE ref_imovel='$v_line[1]'"; $alterar=mysql_query($sql_a, $conexao); for ($x=17;$x<22;$x++){ if ($v_line[$x]<>""){ //$arquivo="c:/arquivos de programas/easyphp1-7/www/emaximovel/sistema/pictures/$v_line[$x].jpg"; //if (file_exists($arquivo)){ $s_vpic="SELECT * FROM tbimagem WHERE ref_imovel='$v_line[1]'"; $b_pic=mysql_query($s_vpic,$conexao); $row_pic=mysql_num_rows($b_pic); //armazenar id em array while ($ver=mysql_fetch_array($b_pic)){ $v_id=$v_id.$ver["id"].","; } //fim array if ($row_pic==0){ //echo $vier."INCLUIR - "; $sql_pic="INSERT INTO tbimagem(ref_imovel, tipo_imovel, path_imovel) VALUES('$v_line[1]','$tipo', "; $sql_pic=$sql_pic." '/pictures/$v_line[$x].jpg')"; $inserir=mysql_query($sql_pic,$conexao); }elseif(($row_pic==$conta)OR($row_pic<$conta)){ //echo "inclui + 1 - "; $sql_pic="INSERT INTO tbimagem(ref_imovel, tipo_imovel, path_imovel) VALUES('$v_line[1]','$tipo', "; $sql_pic=$sql_pic." '/pictures/$v_line[$x].jpg')"; $inserir=mysql_query($sql_pic,$conexao); }else{ //echo "ALTERAR - "; $id=explode(",",$v_id); $sql_alt_p="UPDATE tbimagem SET ref_imovel='$v_line[1]', tipo_imovel='$tipo', path_imovel='/pictures/$v_line[$x].jpg'"; $sql_alt_p=$sql_alt_p." WHERE ref_imovel='$v_line[1]' AND id='$id[$conta]'"; $alt=mysql_query($sql_alt_p,$conexao); } //contador $conta=$conta+1; /*}else{ $erro = $erro."O arquivo <strong>$v_line[$x].jpg</strong>, referência <strong>$v_line[1]</strong> não existe, verifique se o nem foi digitado corretamente.<br>"; //echo "erro de caminho_".$v_line[$x].".jpg - "; } }else{ echo "<strong>sem foto - </strong>";*/ } } //zerar contador e array $conta=0; $v_id=""; //fim zerar //echo "<strong>alterar</strong><br><br>"; $sucesso=$sucesso."Imóvel <strong>$v_line[1]</strong> Alterado com sucesso!<br>"; }elseif($v_line[0]=="E"){ $sql_imovel="SELECT ref_imovel, tipo_imovel FROM tbimovel WHERE ref_imovel='$v_line[1]'"; $busca_imovel=mysql_query($sql_imovel,$conexao); $v_imovel=mysql_num_rows($busca_imovel); if ($v_imovel==0){ $erro = $erro."<br>Imovel Inexistente! Refefência <strong>$v_line[1]</strong><br>"; }else{ $sql_exc = "SELECT path_imovel FROM tbimagem WHERE ref_imovel='$v_line[1]'"; $busca=mysql_query($sql_exc, $conexao); $num=mysql_num_rows($busca); if ($num<>0){ while($ver=mysql_fetch_array($busca)){ $path=$ver["path_imovel"]; unlink("c:/arquivos de programas/easyphp1-7/www/emaximovel/sistema$path"); //unlink("/opt/apache/htdocs/emaximovel/www/sistema$path"); } } $sql_d="DELETE FROM tbimovel WHERE ref_imovel='$v_line[1]' AND tipo_imovel='$tipo'"; $delete=mysql_query($sql_d, $conexao); echo "excluir<br>"; $sql_b = "DELETE FROM tbimagem WHERE ref_imovel='$v_line[1]' AND tipo_imovel='$tipo'"; $exc_img=mysql_query($sql_b,$conexao); $sql_d = "UPDATE tbdestaques SET imovel = '0', tipo = '0' WHERE imovel='$v_line[1]' AND tipo='$tipo'"; $exc_dest=mysql_query($sql_d,$conexao); $sucesso=$sucesso."Imóvel <strong>$v_line[1]</strong> excluído com sucesso!<br>"; } } } mysql_close($conexao); }else{ $erro = $erro."Arquivo $file Inexistente"; //echo "arquivo inexistente"; } } vlw ;) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 maikel Postado Setembro 6, 2006 Denunciar Share Postado Setembro 6, 2006 eu usaria array...leria todo o arquivo e colocaria em uma variavel.. uma string.. depois separaria essa sting em um array, pela funcao explode() - de uma olhada no manual -ai eu teria em cada item do arrai uma sessao do site...experimenta isso... ou então tenta com strrpos... acharia a posicao onde comeca e termina uma parte do site.. e ai com substr pegaria a string entre meio a isso.http://www.php.net/manual/pt_BR/function.strrpos.phphttp://www.php.net/manual/pt_BR/function.substr.phphttp://www.php.net/manual/pt_BR/function.explode.php Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
sorocabaunderground
eu montei um script que ele pega um TXT lê e dependento do flag que tem no txt ele altera,deleta ou inclui
ex:.
a| casa teste |
i | casa teste2 |
d| casa teste 3 |
as seções do site que utilizam esse esquema de TXT são imoveis,fotos,bairros e cidades
até aqui está tudo normal tinha terminado o projeto eu já tinha feito 1 pra cada seção
+ agora o cliente quer fazer tudo em um unico script.
aí entro no meu problema
ele esta mandando assim o txt
so que não estou conseguindo dizer ao script aqui acaba os imoveis e agora começa os bairros e assim por diante
como posso fazer isso?
o meu script
vlw
;)
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.