Conferencia 'quadro-a-quadro'
Topico Relacionado
http://forum.imasters.com.br/index.php?/topic/414025-php-nao-escreve-em-arquivo
---------------------------------------------------------------------------------
De onde paramos pelo Tópico anterior. Já estamos escrevendo e tudo o mais. A conferencia em feita porem esta errônia.
Vamos aos códgos:
Arquivo onde Digito os valores a serem conferidos no DB.txt Index.php (iput's)
<form action="./enviar.php" method="post" name="form1">
<input type="text" size="3" name="num1" id="" maxlength="2" />
<input type="text" size="3" name="num2" id="" maxlength="2" />
<input type="text" size="3" name="num3" id="" maxlength="2" />
<input type="text" size="3" name="num4" id="" maxlength="2" />
<input type="text" size="3" name="num5" id="" maxlength="2" />
<input type="text" size="3" name="num6" id="" maxlength="2" />
<input type="text" size="3" name="num7" id="" maxlength="2" />
<input type="text" size="3" name="num8" id="" maxlength="2" />
<input type="text" size="3" name="num9" id="" maxlength="2" />
<input type="text" size="3" name="num10" id="" maxlength="2" />
<input type="text" size="3" name="num11" id="" maxlength="2" />
<input type="text" size="3" name="num12" id="" maxlength="2" />
<input type="text" size="3" name="num13" id="" maxlength="2" />
<input type="text" size="3" name="num14" id="" maxlength="2" />
<input type="text" size="3" name="num15" id="" maxlength="2" />
<input name="enviar" type="submit" />
</form>
enviar.php (tratamento do Db e Input's)
<?php
$num1 = $_POST['num1'];
$num2 = $_POST['num2'];
$num3 = $_POST['num3'];
$num4 = $_POST['num4'];
$num5 = $_POST['num5'];
$num6 = $_POST['num6'];
$num7 = $_POST['num7'];
$num8 = $_POST['num8'];
$num9 = $_POST['num9'];
$num10 = $_POST['num10'];
$num11 = $_POST['num11'];
$num12 = $_POST['num12'];
$num13 = $_POST['num13'];
$num14 = $_POST['num14'];
$num15 = $_POST['num15'];
$seq = array("$num1","$num2","$num3","$num4","$num5","$num6","$num7","$num8","$num9","$num10","$num11","$num12","$num13","$num14","$num15");
$arquivo = file('db.txt');
$acertos = 0;
foreach ($arquivo as $linha => $linhaConteudo) {
foreach ($seq as $numero) {
if (!strstr($linhaConteudo, $numero)===FALSE) {
++$acertos;
}
}
echo 'Linha <b>'.($linha+1).'</b>: '.$acertos.' acertos<br />';
$acertos = 0;
}
?>
OK.
O que ocorre é o seguinte.
Da forma que está ele trata os inputs dessa forma:
Conteudo do DB.txt
01 02 03 04 05 07 08 09 11 12 15 16 19 20 22
Formulário (index.php) de conferência
02 03 04 05 06 07 08 09 10 11 12 13 14 15 16
Resultado
Linha 1 - 11 acertos.
Porem o correto seria 3 acertos, pois os unicos valores que batem na mesma casa são: 07,08,09.
ou seja, o php tem que tratar como VERDADEIRO apenas os valores que baterem nos inputs (no caso do exemplo) 'Num6', 'Num7' e 'Num8'.
Isso para cada linha no DB.
Pois o DB terá infinitas linhas de sequências crescentes com 15 dígitos no máximo.
-----
Obrigado por seu tempo.
Discussão (4)
Carregando comentários...