rEd nEcK * Postado Maio 27, 2004 Denunciar Share Postado Maio 27, 2004 E ae pessoal !Eu fiquei com vontade de desenvolver um sistema de ler arquivos !So que ta com erros !Quem puder ajudarler.php<html> <head> <title>Examinando <? echo "$arquivo"; ?> !</title> <style type='text/css'> #QUOTE { font-family: Verdana, Arial; font-size: 11px; color: #465584; background-color: #FAFCFE; border: 1px solid #000; padding-top: 2px; padding-right: 2px; padding-bottom: 2px; padding-left: 2px } #CODE { font-family: Courier, Courier New, Verdana, Arial; font-size: 11px; color: #465584; background-color: #FAFCFE; border: 1px solid #000; padding-top: 2px; padding-right: 2px; padding-bottom: 2px; padding-left: 2px } </style> </head> <body> <?php if($arquivo == ""){ echo " <form method='POST' action='ler.php'> <p><input type='text' value='http://' name='arquivo'></p> <p><input type='submit' value='Enviar' name='enviar'><input type='reset' value='Apagar' name='apagar'></p> </form> "; }else{ $arquivo = file($_POST['arquivo']); $fp = fopen ("$arquivo", "w"); echo " <center><font face='Verdana' size='6'>Examinando Arquivo:</font></center> <br> <br> "; function tamanho($arquivo) { $tamanho = filesize($file); $tamanhos = Array('B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB'); $resultado = $tamanhos[0]; for ($i=1; (($i < count($tamanhos)) && ($tamanho >= 1024)); $i++) { $tamanho = $tamanho / 1024; $resultado = $tamanhos[$i]; } return round($tamanho, 2).$resultado; } function ler() { $ler = implode(" | ", $arquivo); $ler = htmlspecialchars($ler); $ler = nl2br($ler); $ler = stripslashes($ler); return $ler; } $ler = ler(); echo " <table> <tr> <td><font size=4><b>Nome:</b></font></td> <td><font size=3>$arquivo</font></td> </tr> <tr> <td><font size=4><b>Tamanho:</b></font></td> <td><font size=3>$resultado</font></td> </tr> </table>"; echo " <br> <b>codigo:</b> <table border='0' width='100%' id=CODE><tr><td>$ler</td></tr></table> "; } ?> </body> </html>Quando ele estiver pronto eu posto ele la no tópico scripts ! so para os curiosos como eu abracos Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Error404 Postado Maio 27, 2004 Denunciar Share Postado Maio 27, 2004 De novo, cara... tira o HTML antes de mandar pra cá... Pois então, cara... quando você usa o file() ele passa todo o conteúdo do arquivo para a array que você especificou...Exemplo:$conteudo = file(".\arquivo.php");foreach($conteudo as $valor)echo $vallor."<br>";Nesse exemplo que eu dei, cada linha do arquivo "arquivo.php" foi armazenada na array $conteudo, de modo que a primeira linha é $conteudo[0], a segunda $conteudo[1], a terceira $conteudo[2] e assim por diante...Entendeu? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 rEd nEcK * Postado Maio 27, 2004 Autor Denunciar Share Postado Maio 27, 2004 Poh não consegui cara Olha o que fiz:function ler() { $ler = implode(" | ", $arquivo); $ler = foreach("$arquivo as $ler"); $ler = htmlspecialchars($ler); $ler = nl2br($ler); $ler = stripslashes($ler); return $ler; Errei onde?Abracos Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Error404 Postado Maio 27, 2004 Denunciar Share Postado Maio 27, 2004 $ler = foreach("$arquivo as $ler");Cara...vai lá no php.net...Vê estruturas de controle... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 rEd nEcK * Postado Maio 27, 2004 Autor Denunciar Share Postado Maio 27, 2004 poh cara eu fui lala diz que esse comando so serve numa arraymesmo assim nada !estou comecando a achar que:readfile()seria mais facil para mim abracos Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Error404 Postado Maio 27, 2004 Denunciar Share Postado Maio 27, 2004 Olha os exemplos que tem lá, cara...Depois de olhar, me explica o que você entendeu...Não é possível que você não entenda com os exemplos lá...é muito mamão com açúcar... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 rEd nEcK * Postado Maio 27, 2004 Autor Denunciar Share Postado Maio 27, 2004 eu acho que ate entendi, mais não estou sacando a logica...como pegar linha por linha *provavelmente por loop* do arquivo !????while?desculpe mais iniciante é complicadoabracos*ps: obrigado tudo* Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ppgsalomao Postado Maio 27, 2004 Denunciar Share Postado Maio 27, 2004 Pode ser por um While sim ... olha:<?$arq = array("linha1", "linha2", "linha3");$i = 0;while($i<count($array)) { echo $array[$i] . "<br>"; $i = $i + 1;}?> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Error404 Postado Maio 27, 2004 Denunciar Share Postado Maio 27, 2004 É...nesse caso usa o for...E se for usar o for, usa o foreach...é melhor... O foreach, cara, supondo que você leu e não entendeu, ele faz o seguinte:foreach($array as $indice=>$valor){ ... }Pra cada elemento da array, ele faz um loop:Exemplo:<?php$array = array("elemento1","elemento2","c"=>"elementoC","d"=>"elementoD","elemento6","n"=>"elementoN");foreach($array as $indice=>$valor){echo '$array['.$indice.'] = '.$valor.'<br>';}?>Veja se com esse exemplo você entende... adiciona mais elementos na array, vê o que acontece, brinca um pouco com a sintaxe do foreach cara... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 rEd nEcK * Postado Maio 27, 2004 Autor Denunciar Share Postado Maio 27, 2004 Cara o problema que estou tendo é na logica...Como fazer um Array para pegar cada linha do arquivo?Porque eu não sei o tamanho do arquivo !não sei quantas linhas... Ect...tipo eu to achando ainda que tenho que usar while.to certo errado?Me ajudem ae o problema é na logica !Abracos Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Illidan Postado Maio 27, 2004 Denunciar Share Postado Maio 27, 2004 Não é nada difícil... você pode usar o while, o for, foreach... o melhor, na minha opinião, é fazer com o foreach... mas você pode conseguir o que deseja de outras formas, tb. Olha só, tente criar um laço for ou while onde a condição de existência é que haja o próximo elemento do array. E dentro do laço você manda imprimir na página o elemento atual. Tenta aí, qualquer coisa eu te ajudo...Falou! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 rEd nEcK * Postado Maio 27, 2004 Autor Denunciar Share Postado Maio 27, 2004 Deixa eu ver se entendi..Voce falou para eu por no script comandos para ler quantas linhas tem e gravar em arrays tipo elementos[0],elementos[1] ?Ta dificil de entrar como faz Abracos Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Illidan Postado Maio 27, 2004 Denunciar Share Postado Maio 27, 2004 Olha, cara... pensa assim: o array começa no índice 0 e vai aumentando, certo? Tenta criar um laço while assim:1. existe a variável $array[0] ?2. Sim, então imprime ela na página.3. Volta ao início do laço e verifica se existe a variável $array[1].4. Se sim, imprime ela na página.5. Volta ao início do laço e verifica se existe $array[2].6. Não existe, então sai do laço...Uma dica: a função que verifica se uma variável existe ou não é isset();Ela retorna TRUE se a variável existir, e FALSE se não...Tenta aí...Abraços. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Error404 Postado Maio 28, 2004 Denunciar Share Postado Maio 28, 2004 Cara... dá uma lida-> http://br.php.net/manual/pt_BR/function.file.phpO file() já faz isso de pegar cada linha e pôr em um índice da array...é automático... você dá um file() e já vem tudo pronto... sem stress Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ppgsalomao Postado Maio 28, 2004 Denunciar Share Postado Maio 28, 2004 E outra ... pra que vocês querem fazer um loop ?!porque não simplismente colocar em String com a "cola" sendo o <BR> usando o implode() ?? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Error404 Postado Maio 28, 2004 Denunciar Share Postado Maio 28, 2004 Pode ser também... o que o implode faz, internamente é um loop, então...hehe.. é loop do mesmo jeito...a diferença é que, usando o implode, você só imprime o resultado no final, sem implode vai imprimindo aos poucos... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 rEd nEcK * Postado Maio 28, 2004 Autor Denunciar Share Postado Maio 28, 2004 Deixa eu ver se entendi...Exemplo:$codigo = Array(file($arquivo));Ta certo?Abracos Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Error404 Postado Maio 28, 2004 Denunciar Share Postado Maio 28, 2004 http://br.php.net/manual/pt_BR/function.file.php Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
rEd nEcK *
E ae pessoal !
Eu fiquei com vontade de desenvolver um sistema de ler arquivos !
So que ta com erros !
Quem puder ajudar
ler.php
Quando ele estiver pronto eu posto ele la no tópico scripts ! so para os curiosos como eu
abracos
Link para o comentário
Compartilhar em outros sites
17 respostass 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.