quinta-feira, 23 de setembro de 2010

Enquete do Bandejão.

Foi solicitado que se elaborasse uma enquete para o bandejão por intermedio de pagina web, e usando codigo php. Os resultados de seleções feitas pelos usuários fossem tabuladas e suas respectivas porcentagem mostradas. O resultado embora tardio foi a pagina seguinte:Enquete O codigo esta mostrado abaixo, foi utilizado dois arquivos um primeiro arquivo chamado ENQUETE_BANDEJAO.html com as caracteristicas principais da página e o formulário e tambem um outro arquivo com o mesmo nome porém com extensão .php onde foi colocado o processamento de escolha dos usuários da página bem como o processamento de saída da pesquisa.

DESIGN ENQUETE_BANDEJAO.HTML


<html>
<head><title>Enquete_Bandeco</title></head>
<body>

<h1 STYLE="COLOR:BLUE;TEXT-ALIGN:CENTER">ENQUETE</H1>
<HR SIZE=10 COLOR=RED></HR>
<H2 STYLE="COLOR:#9e070f">Qual o seu prato preferido no Bandejão!<hr style="color:#55f0a4;size=3"</hr></h2>

<form action="ENQUETE_BANDEJAO.php" method="get">
<table>
 <tr>
    <td width=200><input type="checkbox" name="ref1" value="picadinho">Picadinho</td>           
    <td width=200><input type="checkbox" name="ref2" value="bife">Bife a parmegiana</td>     
    <td width=200><input type="checkbox" name="ref3" value="frango">Frango assado</td>
    <td width=200><input type="checkbox" name="ref4" value="moida">Carne Moída</td>
 </tr>
 <tr>      
    <td><input type="checkbox" name="ref5" value="espeto">Espetinho de frango</td> 
    <td><input type="checkbox" name="ref6" value="lombo">Lombo à califórnia</td>
    <td><input type="checkbox" name="ref7" value="cacao">Cação empanado</td>     
    <td><input type="checkbox" name="ref8" value="peixe">Peixe frito</td>
 </tr>
</table>    
<br>
<table>
 <tr>
   <td width=100><input type="submit" name="op" value="Opinar"></td>
   <td width=150><input type="submit" name="pes" value="Resultado"></td>
   <td width=100><input type="reset" value="Limpar"></td>
 </tr>
</table>
<br>
</form>
</BODY>
</HTML>

DESIGN ENQUETE_BANDEJAO.PHP


<?php
  
if(isset($_GET["op"])){

   $arquivo=fopen("bandeco.txt","r+") or exit("Nao foi possivel abrir arquivo:bandeco.txt");

   for($i=0;$i<9;$i++)$ref[$i] = fgets($arquivo);

   $ref[1] += filter_has_var(INPUT_GET,"ref1");
   $ref[2] += filter_has_var(INPUT_GET,"ref2");
   $ref[3] += filter_has_var(INPUT_GET,"ref3");
   $ref[4] += filter_has_var(INPUT_GET,"ref4");
   $ref[5] += filter_has_var(INPUT_GET,"ref5");
   $ref[6] += filter_has_var(INPUT_GET,"ref6");
   $ref[7] += filter_has_var(INPUT_GET,"ref7");
   $ref[8] += filter_has_var(INPUT_GET,"ref8");
   $ref[0] = 0;
   for($i=1;$i<9;$i++) $ref[0] += $ref[$i];

   fseek($arquivo,0); 

   for($i=0;$i<9;$i++){
       fwrite($arquivo,"$ref[$i]"."\r\n");
   }
 
   fclose($arquivo);  
}

include "ENQUETE_BANDEJAO.HTML";

if(isset($_GET["pes"])){
 
   $arquivo=fopen("bandeco.txt","r") or exit("Nao foi possivel abrir arquivo:bandeco.txt");

   for($i=0;$i<9;$i++)$ref[$i] = fgets($arquivo);
   $refeicao=array("Picadinho","Bife a parmegiana","Frango assado","Carne moída","Espetinho de frango",
                   "Lombo à califórnia","Cação empanado","Peixe frito");
?> <Table border=2>
   <tr>
<?php
   for($i=1;$i<9;$i++){
?>   <td> 
<?php
     printf("%s %5.2f%% ",$refeicao[$i-1],($ref[$i]/$ref[0])*100);
?>   </td>
<?php
   }
fclose($arquivo); } ?>

terça-feira, 14 de setembro de 2010

Exercicio Contador/log

Foi finalmente finalizado o programa que gera um contador de visitas com arquivo logger para o administrador do site. O programa faz uso de um só arquivo para a função de log e contador. O contador é mantido na primeira linha do arquivo log.txt e as demais linhas são usada para descarregar a variável de sistema $_SERVER[HTTP_USER_AGENT]. Link para a pagina.
<html>
<body>

<h1>Programa de testes de contador de visitas a pagina</h1>
<hr size=10 color=red>

<?php

/*    rotina php para imprimir na primeira linha de um arquivo
      log.txt o numero do visitante corrente e na sequencia a
      string de dados do servidor do usuario (sistema operacional
      e browser) com a data e hora do acesso.
*/
// Abre arquivo log.txt em modo de leitura e escrita.

 $arquivo=fopen("log.txt","r+") or 
   exit("Nao foi possivel abrir arquivo");

// Le uma linha do arquivo a primeira e coloca o
    valor em variavel contador.
 $contador = fgets($arquivo);
 $contador = $contador + 1 ;

// Posiciona ponteiro de escrita do arquivo no inicio. 
   Escreve o valor de contador.
 fseek($arquivo,0);
 fwrite($arquivo,$contador);

// Define formato de apresentacao de string de data.
   Armazena data na variavel array log
 date("Y-m-d");
 $log = getdate();

// Posiciona ponteiro de escrita do arquivo no final do arquivo.
   Escreve data hora e informacoes do usuario.
 fseek($arquivo,0,SEEK_END);

 fwrite($arquivo,"\n"."$log[year] $log[month] $log[mday] 
 $log[weekday] - $log[hours]:$log[minutes]"
  ." $_SERVER[HTTP_USER_AGENT] " );

// Fecha arquivo. 
 fclose($arquivo);

// Imprime mensagem do visitador corrente na pagina Web.
 echo "Visitante : $contador";

 ?>

</body>
</html>