Gans 0 Denunciar post Postado Julho 3, 2007 Pessoal to com um probleminha com fopen e explode eu preciso que meu script abra uma pagina de um site que é +/- assim: 200300100-1-1-1-1-1-1 ai preciso obter os valores como variaveis tipo $var1 = "200";$var2 = "300";$var3 = "100";só os três primeiros e o resto não preciso esse valor vou usar em outro lugar... meu script ta assim <?php$url = "http://www.site.com/file.asp";$handle = fopen ($url, "r");while (!feof ($handle)) { $buffer = fgets($handle, 4096);}fclose ($handle);?> tentei por um codigo assim: $arr = explode(" ", $buffer);$var1 = "$arr[0]";$var2 = "$arr[1]";$var3 = "$arr[2]";so q num deu certo eu acho q como ta dividido por linhas e não espaço ele num pega a var alguem tem uma solução ? e uma outra duvida dpois de conseguir as variaveis eu gostaria q a variavel com o numero mais ficace na cor verde eu penso em fazer +/- assim mas acho q tem jeito mais facil... if ($var1 > $var2 AND $var1 > $var3) {$var1 = "<font color\'green\'>200</font>";}if ($var2 > $var1 AND $var2 > $var3) {$var2 = "<font color\'green\'>200</font>";}if ($var3 > $var2 AND $var3 > $var1) {$var3 = "<font color\'green\'>200</font>";}obrigado Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Julho 3, 2007 gans, se a sequencia da página que você quer abrir for sempre a mesma 200300100-1-1-1-1 somente isso aqui resolveria: <?php$url = "http://www.site.com/file.asp";$handle = fopen ($url, "r");$limite = 3;$ini = 1;while (!feof ($handle)) { if( $i <= $limite ){ $n[$i] = fgets($handle, 4096); $i++; }else{ break; }}fclose ($handle);// os dados estão no array n[]?> Compartilhar este post Link para o post Compartilhar em outros sites
Gans 0 Denunciar post Postado Julho 3, 2007 tipo soh os 3 numeros de cima q mudam.. 345511587-1-1-1-1ele atualiza por segundos e eu preciso ter a variavel dele pra mostrar esses numeros separados na minha pagina tipo $var1 = "345"; $var2 = "511"; $var3 = "587"; echo "Nº 1: $var1"; echo "Nº 2: $var2"; echo "Nº 3: $var3"; vlw.. Compartilhar este post Link para o post Compartilhar em outros sites
jpbraga 0 Denunciar post Postado Julho 3, 2007 ja tentou por pra explodir em vez de " "(espaço), "\n" ou "<br>"?não sei como resolver, mas a primeira coisa que eu tentaria seria isso.. Compartilhar este post Link para o post Compartilhar em outros sites
Gans 0 Denunciar post Postado Julho 4, 2007 \n ja tentei e <br> eh impossivel...mas tentei tb ^^vlw. Compartilhar este post Link para o post Compartilhar em outros sites
Mario Helme 0 Denunciar post Postado Julho 4, 2007 O arquivo que você quer abrir é um arquivo local ou uma url externa? O problema pode estar ai. Olha só (exatamente como está no help do PHP): resource fopen (string filename, string mode [, int use_include_path [, resource zcontext]])fopen() conecta um recurso nomeado, especificado em filename para um stream. Se filename está na forma "protocolo://...", é assumido que seja uma URL e o PHP irá procurar por um manipulador de protocolo (também conhecido como wrapper) conforme o prefixo. Se nenhum wrapper para o protocolo estiver registrado, o PHP irá emitir um alerta para ajudá-lo a rastrear problemas potenciais em seu script, presumindo que filename é um nome de arquivo comum. Se o PHP decidir que filename se refere a um arquivo local, então ele tentará abrir o stream para aquele arquivo. Esse arquivo precisa ser acessível pelo PHP, então você precisa certificar-se que as permissões de acesso que garantam esse acesso. Se você está com safe mode ativado ou open_basedir, essas restrições serão aplicadas. Se o PHP decidir que filename se refere a um protocolo registrado, e que o protocolo está registrado como um URL de rede, o PHP irá verificar se allow_url_fopen está ativado. Se ele estiver desligado, o PHP irá emitir um alerta e a chamada a fopen irá falhar. Compartilhar este post Link para o post Compartilhar em outros sites
Gans 0 Denunciar post Postado Julho 4, 2007 externa... =X Compartilhar este post Link para o post Compartilhar em outros sites
Anderson Mello 3 Denunciar post Postado Julho 4, 2007 Se é externo e você tem acesso a este servidor, verifique se a diretiva allow_url_fopen está On. Se não tiver acesso, faz um teste apenas lendo o arquivo e exibindo o conteúdo retornado, apenas para atestar se é possível mesmo fazer a leitura a partir desse servidor ;)[]sAnderson Mello Compartilhar este post Link para o post Compartilhar em outros sites
Gans 0 Denunciar post Postado Julho 5, 2007 tp eu consigo abrir pela url eu consigo por include no phpe assim eu tb consigo exibir-lo <?php$url = "http://www.site.com/file.asp";$handle = fopen ($url, "r");while (!feof ($handle)) { $buffer = fgets($handle, 4096); echo $buffer;}fclose ($handle);?>mas ele mostra na pagina XXX XXX XXX -1 -1 -1 -1 -1 -1 -1 e eu qro ter os valores pra eu fazer aparecer assim Valor 1: XXX Valor 2: XXX Valor 3: XXX soh os 3 primeiros numeros eu preciso pois os outros sempre vaum estar -1-1-1..... e os 3 primeiros se atualizam... Compartilhar este post Link para o post Compartilhar em outros sites
Anderson Mello 3 Denunciar post Postado Julho 5, 2007 Se consegue abrir então, não é problema de permissão :) Você precisa apenas usar um limitador no loop, como o hinom sugeriu. Tente: <?php$url = "http://www.site.com/file.asp";$handle = fopen ($url, "r");$i = 1;$limite = 3;while (!feof ($handle)) { if ($i <= $limite) { $valor = fgets($handle, 4096); echo "$valor<br />"; } else { break; } $i++;}fclose ($handle);?> []s Anderson Mello Compartilhar este post Link para o post Compartilhar em outros sites
ScornInPC 1 Denunciar post Postado Julho 5, 2007 faça isso algo assim ó <?php$url = "http://www.site.com/file.asp";$handle = fopen ($url, "r");while (!feof ($handle)) { $buffer = fgets($handle, 4096); $vars[] = $buffer;}fclose ($handle);print_f($vars);?> assim você terá os valores em $vars[0] = XXX $vars[1] = XXX $vars[2] = XXX ... Compartilhar este post Link para o post Compartilhar em outros sites
Gans 0 Denunciar post Postado Julho 6, 2007 mtoo obrigado pessoal...deu certo...usei esse script q o ScornInPC poismas tava dando um erro ai eu tirei a parte print_f($vars);e funciono....Vlw pessoal do Imasters por mais uma vez me ajudar!!qnd eu aprender mais vou ajudar tb ^^auheauehuaehuae Compartilhar este post Link para o post Compartilhar em outros sites
ScornInPC 1 Denunciar post Postado Julho 6, 2007 poxa Gans, desculpa, é "r" ali, escrevi sem testar, e naum percebi que coloquei "f"a função é print_r() ela "imprime" na tela o conteudo de vetores Compartilhar este post Link para o post Compartilhar em outros sites