Ir para conteúdo

POWERED BY:

Arquivado

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

joserf

Buscar conteudo de um arquivo TXT e Jogar na checkbox

Recommended Posts

Olá pessoal, gostaria de uma ajuda, nao manjo nada de php gostaria de uma luz, tenho um arquivo TXT com varios ips, gostaria de pegar esses ips dentro desse arquivo e os que estiverem la aparecerem ticados no checkbox.

 

<form action="?envio=sim" method="POST">
<br>
1 - <input type="checkbox" name="campo[]" value="192.168.0.1">
<br>
2 - <input type="checkbox" name="campo[]" value="192.168.0.2">
<br>
3 - <input type="checkbox" name="campo[]" value="192.168.0.3"> O IP QUE ESTIVER NO ARQUIVO TXT APARECE JA TICADO AQUI.
<br>
4 - <input type="checkbox" name="campo[]" value="192.168.0.4">
<br>
5 - <input type="checkbox" name="campo[]" value="192.168.0.5">
<br>
6 - <input type="checkbox" name="campo[]" value="192.168.0.6">
<br>
<br>
<input type="submit">
</form>

<?php
if($_GET["envio"]=="sim") {

$campo = $_POST["campo"];

if($campo!="") {

$f = fopen("arquivo.txt", "w+");
if ($f == false)
echo "Erro ao abrir";

// Escreve no arquivo
if (fwrite($f, implode("\r\n",$campo)) == false)
echo "Erro ao salvar arquivo";
else
echo "Arquivo salvo com sucesso!";

// Libera o arquivo
fclose($f);

} else {
echo "Nenhum campo foi selecionado";
} // fim do if $campo

} // fim do if post

?>

 

Alguem pode me ajudar ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá joserf

 

pelo que entendi, você quer "catar" uns ip dentro de um txt e jogá los em um form em php (já selecionado - tickado) eh isso?!

 

primeiramente: tem algum preconceito com banco de dados? caso não seu problema vai ser muito mais fácil de ser resolvido e vai dar maior "escabilidade" a sua aplicação; caso sim, aí vai um pouco mais de trabalho.

 

vamos por passos:

 

primeiro temos que criar um loop para ler os ip (seja arquivo ora banco de dados)

após este processo, criar um form que contenha estes dados(IP).

Mas e depois, que você vai fazer com os ip's se for o caso, melhor alternativa é usar BD

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá joserf

 

pelo que entendi, você quer "catar" uns ip dentro de um txt e jogá los em um form em php (já selecionado - tickado) eh isso?!

 

primeiramente: tem algum preconceito com banco de dados? caso não seu problema vai ser muito mais fácil de ser resolvido e vai dar maior "escabilidade" a sua aplicação; caso sim, aí vai um pouco mais de trabalho.

 

vamos por passos:

 

primeiro temos que criar um loop para ler os ip (seja arquivo ora banco de dados)

após este processo, criar um form que contenha estes dados(IP).

 

Mas e depois, que você vai fazer com os ip's se for o caso, melhor alternativa é usar BD

 

Amigo obrigado por responder, mas não posso usar um BD, esse arquivo é um arquivo de um servidor linux, todos os ips desse arquivo TXT vão estar na lista do squid em um servidor, para bloqueio, por isso tem que ser feito dessa forma, mas não entendo quase nada de php, gostaria de uma "receita de bolo" de algum amigo que possa me ajudar, resumindo, só quero que os ips que ja estiverem nesse arquivo php apareçam ticado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

To postando pelo celular, então o código sai sem o BBcode.

 

<?php

$a = file('ip.txt');

 

$t = count( $a );

$c = 1;

foreach( $a as $ip ){

echo $c++.'input type="text" name="campo[]" value="'.$ip.'" checked />';

}

echo 'Total de IP: '.$t;

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

agora to pelo PC.

<?php
$a = file('ip.txt');
$t = count( $a ); 
$c = 1; 
 foreach( $a as $ip ){ 
  echo $c++.'<input type="text" name="campo[]" value="'.$ip.'" checked />';
}
 echo 'Total de IP: '.$t; 
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

To postando pelo celular, então o código sai sem o BBcode.

 

<?php

$a = file('ip.txt');

 

$t = count( $a );

$c = 1;

foreach( $a as $ip ){

echo $c++.'input type="text" name="campo[]" value="'.$ip.'" checked />';

}

echo 'Total de IP: '.$t;

?>

Amigo não consegui colocar meu arquivo, onde eu insiro essas linhas, nao manjo de php, desde ja agradeço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

man tava vendo seu código melhor, e agora caiu uma puta duvida!

 

pra que você quer lista os IP de um arquivo TXT e em seguida salva eles em outro arquivo TXT ?..KK

$f = fopen("arquivo.txt", "w+");
    if ($f == false)
      echo "Erro ao abrir";
 
    // Escreve no arquivo
    if (fwrite($f, implode("\r\n",$campo)) == false)
      echo "Erro ao salvar arquivo";
    else
      echo "Arquivo salvo com sucesso!";
 
    // Libera o arquivo
    fclose($f);

???

 

em fim...

 

use assim...

<form action="?envio=sim" method="POST">
<?php
$a = file('ip.txt'); // <- LISTA DE IPS
$t = count( $a ); 
$c = 1;
 foreach( $a as $ip ){ 
  echo $c++.'<input type="checkbox" name="campo[]" value="'.$ip.'" checked />';
}
 echo 'Total de IP: '.$t; 
?>
<input type="submit">
</form>

...continuação de seu código

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

man tava vendo seu código melhor, e agora caiu uma puta duvida!

 

pra que você quer lista os IP de um arquivo TXT e em seguida salva eles em outro arquivo TXT ?..KK

$f = fopen("arquivo.txt", "w+");
    if ($f == false)
      echo "Erro ao abrir";
 
    // Escreve no arquivo
    if (fwrite($f, implode("\r\n",$campo)) == false)
      echo "Erro ao salvar arquivo";
    else
      echo "Arquivo salvo com sucesso!";
 
    // Libera o arquivo
    fclose($f);

???

 

em fim...

 

use assim...

<form action="?envio=sim" method="POST">
<?php
$a = file('ip.txt'); // <- LISTA DE IPS
$t = count( $a ); 
$c = 1;
 foreach( $a as $ip ){ 
  echo $c++.'<input type="checkbox" name="campo[]" value="'.$ip.'" checked />';
}
 echo 'Total de IP: '.$t; 
?>
<input type="submit">
</form>

...continuação de seu código

Nada ainda :(

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nada ainda :(

 

lembrete!

Os IPs deve esta 1 por linha dentro do arquivo TXT.

 

posta agora todo o código como ta

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá,

 

Como é o padrão dentro do txt dos ip's?

O arquivo txt fica assim:

 

192.168.0.1

192.168.0.2

192.168.0.3 e assim vai.

 

 

Captura_de_tela_de_2013-09-19_17_56_10-T

 

Como no exemplo da imagem.

Compartilhar este post


Link para o post
Compartilhar em outros sites


<?php

 

function checkbox_lines_of_file($file) {

$lines = file($file);

 

$content = '';

foreach ($lines as $line_number => $line) {

$content += sprintf(

'%s - <input type="checkbox" name ="campo[]" value="%s" checked />',

$line_number,

$line

);

}

$content += sprintf('Total de IPs: %s', count($lines));

 

return $content;

}

 

 

echo checkbox_lines_of_file('arquivo.txt');

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

<?phpfunction checkbox_lines_of_file($file) {    $lines = file($file);    $content = '';    foreach ($lines as $line_number => $line) {        $content += sprintf(            '%s - <input type="checkbox" name ="campo[]" value="%s" checked />',            $line_number,            $line        );    }    $content += sprintf('Total de IPs: %s', count($lines));    return $content;}echo checkbox_lines_of_file('arquivo.txt');

 

Como eu coloco seu codigo no meu, em que parte? obrigado

 

Como eu coloco seu codigo no meu, em que parte? obrigado

 

 

Alguem ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como assim, em que parte? Explique o problema com mais clareza.

Qual parte do meu codigo eu colo o que vc me passou, voce nao pode me enviar ele completo, nao manjo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aí fica complicado.. querer usar PHP sem saber PHP...

 

Mas o que eu digo é: qual o comportamento que você espera do código?

O ip que estiver no arquivo txt ficar ticado na checkbox.

Compartilhar este post


Link para o post
Compartilhar em outros sites

No arquivo txt há um ou vários IP's?

 

Se não entendi errado, você tem um arquivo .txt de IP's, com um IP em cada linha e deseja mostrar um formulário com um checkbox que mostra os IP's e daí você teria um botão submit que enviaria o IP selecionado para alguma página que o trataria.

Certo?

 

Se assim estiver, este código provavelmente resolve:

 

Um arquivo form.php:

<?php

$ips = file('arquivo.txt');
$total = count($ips);

?>
<form action="submit-ip.php" method="POST">
  <?php foreach ($ips as $ip_number => $ip): ?>
     <?php echo $ip_number ?> - <input type="checkbox" name ="ips[]" value="<?php echo $ip ?>" />
     <br />
  <?php endforeach ?>

  <input type="submit" value="Enviar" />
</form>
<br />
Total de IPs: <?php echo $total ?>

 

Um arquivo submit-ip.php (aqui você usa sua lógica desejada para tratar os IP's):

<?php

if (! empty($_POST['ips'])) {
  foreach ($ips as $ip) {
    # lógica para manusear os IP's
  }
} else {
  # lógica para quando não houver IP's enviados pelo formulário
}

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.