Você está aqui: PHP ::: Dicas & Truques ::: Formulários

Como retornar um array de check boxes (caixas de seleção) marcadas

Quantidade de visualizações: 10508 vezes


Muitas vezes estamos lidando com tantas check boxes que não é nada prático definirmos valores diferentes para a propriedade name de cada uma. Um exemplo disso é quando temos uma lista de mensagens ou clientes a serem excluídos. A melhor saída, nestes casos, é usar uma matriz de check boxes. Veja um exemplo abaixo:
<form name="cadastro" method="post" action="testes.php">
  <b></b>Marque suas linguagens favoritas:</b><br>
  <input type="checkbox" name="ling[]" 
    value="Java">Java<br>
  <input type="checkbox" name="ling[]" 
    value="Delphi">Delphi<br>
  <input type="checkbox" name="ling[]" 
    value="C++">C++<br>
  <input type="checkbox" name="ling[]" 
    value="Python">Python<br>
  <input type="submit" value="Enviar!">
</form>
Veja que todas as check boxes possuem o valor ling[] para a propriedade name. Para detectar quais check boxes foram marcadas, podemos usar o seguinte código PHP:
<?
  // Obtém um array de check boxes marcadas
  $marcadas = $_POST["ling"];
  
  // Exibe o resultado
  echo "Suas linguagens favoritas são:<br><br>";
  
  foreach($marcadas as $linguagem){ 
    echo $linguagem . "<br>"; 
  } 
?>


Link para compartilhar na Internet ou com seus amigos:

PHP ::: Dicas & Truques ::: Upload de Arquivos

Como fazer upload de arquivos em PHP - Escreva do zero seu código de upload de arquivos e imagens em PHP

Quantidade de visualizações: 10632 vezes
Nesta dica mostrarei como escrever seu primeiro código para upload de arquivos em PHP. Trata-se de um código realmente básico e, depois de aprendê-lo, recomendo que leia as demais dicas desta seção e implemente outras funcionalidades, tais como restringir os tipos e tamanhos dos arquivos a serem enviados ao servidor.

O primeiro passo é definir em qual diretório de sua hospedagem os arquivos enviados serão salvos. Feito isso, verifique se você possui permissão de escrita neste diretório. Se estiver usando Linux, um CHMOD 666 ou 777 deve resolver.

Vamos começar então. Crie uma página contendo o seguinte formulário:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

<html>
<head>
<title>Upload de arquivos usando PHP</title>
</head>
<body>

<form action="testes.php" method="post" 
  enctype="multipart/form-data">
Arquivo: <input type="file" name="arquivo"><br>
<input type="submit" name="submit" value="Enviar">
</form>

</body>
</html>

Veja que este formulário aponta para um arquivo testes.php e contém um campo <input type="file"> chamado "arquivo". Tenha este nome em mente para o perfeito entendimento do código. Veja agora o conteúdo do arquivo testes.php:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

<?php
  // diretório no qual o arquivo será gravado. este diretório
  // deverá ter permissão de escrita
  $diretorio = "/home/xxx/xxx/xxx/imagens/";
  
  // vamos verificar o código do erro
  if($_FILES['arquivo']['error'] == UPLOAD_ERR_OK){
    // o arquivo foi transferido com sucesso. vamos usar a
    // função move_uploaded_file() para copiá-lo para 
    // seu local definitivo
    move_uploaded_file($_FILES["arquivo"]["tmp_name"], 
      $diretorio . $_FILES["arquivo"]["name"]);
    echo "Upload feito com sucesso";
  }
  else
    echo "Ocorreu um erro no upload";
?>

Salve os dois arquivos na sua área de hospedagem, acesse a primeira página e envie um arquivo. Se você seguiu as instruções corretamente, o upload será feito com sucesso.

A parte mais importante deste código é o uso da função move_uploaded_file(). Esta função recebe o o local e nome temporário do arquivo e o diretório e nome para o qual o arquivo será enviado em definitivo. Note que usamos o nome original do arquivo na máquina do usuário para salvá-lo com o mesmo nome. É neste procedimento que aproveitamos para remover espaços e caracteres especiais do nome do arquivo. Se você faz parte do mundo Linux entenderá perfeitamente o que estou dizendo.


PHP ::: Fundamentos da Linguagem ::: Estruturas de Controle

PHP para iniciantes - Como usar o laço for da linguagem PHP

Quantidade de visualizações: 30999 vezes
O laço for, ou loop for, ou laço PARA, é usado quando queremos executar um bloco de instruções um determinado número de vezes. Este laço é composto de três partes:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

for(inicialização; teste; incremento/decremento){
  bloco de instruções
}

Na parte inicialização nós definimos o valor inicial da variável de controle. Na parte teste nós usamos o valor da variável de controle para testar a continuidade ou interrupção do laço. Finalmente, na parte incremento/decremento nós alteramos o valor da variável de controle para cima ou para baixo. Veja um exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

<?
  for($i = 1; $i <= 10; $i++){
    echo $i . "<br>";
  }
?>

Este trecho de código vai mostrar o seguinte resultado:

1
2
3
4
5
6
7
8
9
10

O incremento/decremento da variável de controle não precisa ser necessariamente em 1. Podemos usar qualquer expressão. Veja um trecho de código que exibe os números pares de 0 à 10:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

<?
  for($i = 0; $i <= 10; $i += 2){
    echo $i . "<br>";
  }
?>

Este código mostrará o seguinte resultado:

0
2
4
6
8
10

Observe que "$i += 2" é o mesmo que "$i = $i + 2".

Com exceção da parte de testes, podemos inserir múltiplas expressões nas demais partes de um laço for. Veja:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

<?
  for($i = 0, $x = 2; $i <= 10; print ($i * $x) . "<br>", $i++);
?>

Ao executarmos este laço, o resultado será:

0
2
4
6
8
10
12
14
16
18
20

Este último código é um pouco exótico, mas muito fácil de ser encontrado por aí.

Esta dica foi revisada, atualizada e testada no PHP 8.


PHP ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes)

Como obter a quantidade de elementos em um vetor (array ou matriz de uma dimensão) em PHP

Quantidade de visualizações: 7920 vezes
Em várias situações de programação em PHP nós precisamos contar, ou seja, obter a quantidade de elementos em um vetor, também chamado de array ou matriz unidimensional (de uma dimensão). Para isso nós podemos usar as funções count() ou sizeof().

Veja um exemplo completo de seu uso:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

<html>
<head>
  <title>Estudos PHP</title>
</head>
 
<body>

<?php  
  $pessoas[0] = "Osmar J. Silva";
  $pessoas[1] = "Salvador M. Andrade";
  $pessoas[2] = "Dyego Fernandes de Sousa";
 
  echo "O vetor possui " . sizeof($pessoas) . " elementos.";
?>  

</body>
</html>


Ao executar este código nós teremos o seguinte resultado:

O vetor possui 3 elementos.


Vamos testar seus conhecimentos em

Dimensionamento de pilares de extremidade

As solicitações que ocorrem num pilar de extremidade podem ser as forças normais e os momentos fletores. No método de dimensionamento do pilar-padrão com curvatura aproximada, considera-se um momento mínimo que deverá ser comparado com os demais momentos de 1ª ordem.

Diante do exposto, qual é o valor do momento mínimo nas direções x e y do pilar de extremidade apresentado na figura a seguir?



A) M1d, mín, x = 4025,65KN.cm; M1d, mín, y = 2499,5KN.cm.

B) M1d, mín, x = 1585,25KN.cm; M1d, mín, y = 2389,21KN.cm.

C) M1d, mín, x = 2500KN.cm; M1d, mín, y = 3056,5KN.cm.

D) M1d, mín, x = 2028,6KN.cm; M1d, mín, y = 3056,5KN.cm.

E) M1d, mín, x = 2028,6KN.cm; M1d, mín, y = 2499KN.cm.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Ética e Legislação Profissional

Responsabilidade civil dos prepostos e preponentes

Considera-se ___________ a entrega de papéis, bens ou valores ao ____________, encarregado pelo __________, se os recebeu sem ______________, salvo nos casos em que haja prazo para reclamação. Qual opção abaixo preenche corretamente as lacunas?

A) Perfeita - preponente - preposto - protesto.

B) Inválida - preponente - preposto - protesto.

C) Inválida - preposto - preponente - protocolo.

D) Perfeita - preposto - preponente - protocolo.

E) Perfeita - preposto - preponente - protesto.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em AutoCAD Civil 3D

Alinhamentos no AutoCAD Civil 3D

Qual dos objetos abaixo é constituido de uma série de linhas e curvas que representam mudanças na elevação ao longo de um alinhamento?

A) Assembly (Montagem)

B) Profile (Perfil)

C) Corridor (Corredor)

D) Surface (Superfície)
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Hidrologia

(Unifal 2008) Assinale a alternativa correta a respeito das alterações do ciclo hidrológico.

A) O desmatamento provoca um aumento da evapotranspiração vegetal, desequilibrando o balanço de água no solo, que se torna estéril.

B) A agricultura irrigada retira água do lençol freático, devolvendo-a ao rio, por meio do escoamento fluvial, poluída e pobre em nutrientes.

C) A superexploração dos aquíferos provoca o ressecamento dos solos e contribui para o aumento da erosão fluvial.

D) A compactação dos solos, que pode ser decorrente das atividades agropecuárias, reduz a infiltração da água da chuva e aumenta o escoamento superficial.

E) O consumo de água urbano e industrial é responsável pela poluição das águas, mas não afeta a hidrografia local quanto à redução da vazão dos rios.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Python

Qual o resultado da execução do seguinte código Python?

estados = {"SP": "SÃO PAULO", "GO": "GOIÁS",
  "RJ": "RIO DE JANEIRO", "MG": "MINAS GERAIS"}
print("GO" in estados)

A) "GO"

B) True

C) False

D) "SP", "GO", "RJ", "MG"

E) "GOIÁS"
Verificar Resposta Estudar Cards Todas as Questões

Desafios, Exercícios e Algoritmos Resolvidos de PHP

Veja mais Dicas e truques de PHP

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2024 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 31 usuários muito felizes estudando em nosso site.