Ir para conteúdo
Fórum Script Brasil
  • 0

Galera, sou iniciante em PHP e meu professor passou um exercício complicado


Caroline Xavier

Pergunta

Bom, o meu professor passou um exercício complicado, porém só tenho a primeira parte dele pois estou travada no resto dele, poderiam me ajudar?

EXERCÍCIO: 

Objetivo da atividade: fazer um programa para receber dados de uma pesquisa (ativ_formulario.php) exibir ao final os dados da pesquisa conforme passos abaixo:

1. Fazer um formulário (ativ_formulario.php) contendo os campos:

  • nome (input do tipo text).
  • idade (input do tipo number).
  • sexo (dois inputs do tipo radio com as opções masculino, feminino).
  • computador (input do tipo checkbox ).
  • notebook (input do tipo checkbox).
  • smartphone (input do tipo checkbox).
  • experiência programação (select com as opções "Não possui", "Iniciante", "Intermediário", "Avançado").

 

2. Enviar os dados do formulário (ativ_formulario.php passo 1) para o script (ativ_formulario2.php) de deverá:

  • criar um formulário.
  • exibir os valores recebidos (em forma de texto).
  • criar campos segundo os critérios:
    • se o checkbox computador tiver sido marcado, exibir um textarea para digitar a configuração do         computador.
    • se o checkbox notebook tiver sido marcado, exibir um textarea para digitar a configuração do notebook.
    • se o checkbox smarphone tiver sido marcado, exibir um textarea para digitar a configuração do smartphone.
    • se informou que possui experiência (Iniciante, Intermediário, avançado) o um campo para selecionar uma linguagem de programação (opções: C, C++, Java, PHP, Python, Perl, Ruby, outra).
    • um botão para enviar os dados (o action do formulário deve enviar para ativ_resultado.php).

3. Enviar os dados do formulário do script ativ_formulario2.php para o script ativ_resultado.php

  • exibir todas as informações coletadas (apenas as preenchidas).

PARTE DO CÓDIGO QUE TENHO 

 

<form method = "get" action="Trabalho4.2.php">
            <fieldset>
                <legend>Informações</legend>
                        <label>Nome:</label>
                            <input type="text" name="nome" size="40" maxlength="30" required/>
                            <?php echo '</br>'?>
                        Idade:
                            <input type="number" name="idade" />
                            <?php echo '</br>'?>
                        Sexo:
                            <?php echo '</br>'?>
                            <input type="radio" name="sexo" value="masculino">Masculino
                            <input type="radio" name="sexo" value="feminino" >Feminino
                            <?php echo '</br>'?>
                        Tem computador?
                            <?php echo '</br>'?>
                            <input type="checkbox" name="computador" value="sim">Sim
                            <input type="checkbox" name="computador" value="não">Não
                            <?php echo '</br>'?>
                        Tem notebook?
                            <?php echo '</br>'?>
                            <input type="checkbox" name="notebook" value="sim">Sim
                            <input type="checkbox" name="notebook" value="não">Não
                            <?php echo '</br>'?>
                        Tem smartphone?
                            <?php echo '</br>'?>
                            <input type="checkbox" name="smartphone" value="sim">Sim
                            <input type="checkbox" name="smartphone" value="não">Não
                            <?php echo '</br>'?>
                        Experiência com programação:
                            <select name="experiencia">
                                <option value="naopossui">Não Possui</option>
                                <option value="iniciante">Iniciante</option>
                                <option value="intermediario">Intermediario</option>
                                <option value="avançado">Avançado</option>
                            </select>
                            <?php echo '</br>'?>
                            <input type="submit" value="Cadastrar" />
</form>
Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

No item "2" da sua "missão" deve estar mandando abrir o formulário "ativ_formulario2.php" para continuar seus dados na outra página mais notei que seu formulário estava mandando para o "Trabalho4.2.php"

<form method = "get" action="Trabalho4.2.php">
            <fieldset>
                <legend>Informações</legend>
                        <label>Nome:</label>
                            <input type="text" name="nome" size="40" maxlength="30" required/>
                            <?php echo '</br>'?>
              
...

Fiz a seguinte alteração: (justamente para abrir a página que pede)

	<form method="GET" action="./ativ_formulario2.php">
		<fieldset>
			<legend>Informações</legend>
			<label>Nome:</label>
			<input type="text" name="nome" size="40" maxlength="30" required/>
			<?php echo '</br>'?>
			Idade:
...

*Continua*

Ai você deve criar um arquivo para receber os dados enviados o formulário "ativ_formulario2.php".

Para receber dados do tipo GET usar o seguinte código: 

$nome = $_GET['nome'];

Esse exemplo guarda em uma variável o nome do formulário da outra página:

Ai você pode usar um echo para imprimir (somente se quiser testar).

Agora vou dar um spoiler só dê uma olhada caso você esteja com duvida:

Código que criei para o arquivo "ativ_formulario2.php":

<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<meta name="viewport" content="width=device-width, initial-scale=1">
	<title>Atividade Formulário</title>
</head>
<body>
<form method="GET" action="./ativ_resultado.php">
	<fieldset>
		<legend>Complete os dados</legend>
<?php
	if ($_SERVER["REQUEST_METHOD"] == "GET"){
		$nome = $_GET['nome'];
		$idade = $_GET['idade'];
		$sexo = $_GET['sexo'];

		$computador = $_GET['computador'];
		$notebook = $_GET['notebook'];
		$smartphone = $_GET['smartphone'];
		$experiencia = $_GET['experiencia'];
		?>

			<div>
				<label>Nome:</label>
				<input type="text" name="nome" value="<?php echo $nome;?>" disabled>
			</div>
			<div>
				<label>Idade:</label>
				<input type="number" name="idade" value="<?php echo $idade;?>" disabled>
			</div>
			<div>
				<label>Sexo</label>
				<input type="text" name="sexo" value="<?php echo $sexo;?>" disabled>
			</div>
			<div>
				<label>Computador?</label>
				<input type="text" name="computador" value="<?php echo $computador;?>" disabled>
			</div>
			<div>
				<label>Notebook?</label>
				<input type="text" name="notebook" value="<?php echo $notebook;?>" disabled>
			</div>
			<div>
				<label>Smartphone?</label>
				<input type="text" name="smartphone" value="<?php echo $smartphone;?>" disabled>
			</div>
			<div>
				<label>Experiencia?</label>
				<input type="text" name="experiencia" value="<?php echo $experiencia;?>" disabled>
			</div>


		<?php

		if($computador == "sim") {
			?>
			<div>
				<label>Descrição Computador:</label>
				<textarea name="descricaocomputador" placeholder="Insira os dados do seu computador aqui."></textarea>
			</div>
			<?php
		}

		if($notebook == "sim"){
			?>
			<div>
				<label>Descrição Notebook:</label>
				<textarea name="descricaonotebook" placeholder="Insira os dados do seu notebook aqui."></textarea>
			</div>
			<?php
		}

		if($smartphone == "sim"){
			?>
			<div>
				<label>Descrição Smartphone:</label>
				<textarea name="descricaosmartphone" placeholder="Insira os dados do seu smartphone aqui."></textarea>
			</div>
			<?php
		}

		if($experiencia != "naopossui") {
			?>
			<div>
				<label>Selecione sua linguagem preferida:</label>
				<select name="linguagem">
					<option value="c">C</option>
					<option value="c++">C++</option>
					<option value="java">Java</option>
					<option value="php">PHP</option>
					<option value="c">C</option>
					<option value="python">Python</option>
					<option value="pearl">Pearl</option>
					<option value="ruby">Ruby</option>
					<option value="outra">Outra</option>
				</select>
				<input type="input" name="linguagemoutra" placeholder="Caso selecione outra">
			</div>
			<?php
		}


	}else {
		header("Location: ./ativ_formulario.php");
	}
?>
		<div>
			<input type="submit" value="Concluir cadastro" />
		</div>
	</fieldset>
</form>
</body>
</html>

 

Creio que olhando como foi feito a página mostrada acima dê para criar todo o arquivo da ultima atividade.

Olha se consegui te dar uma luz ou se conseguiu entender. 

Assim que subir no Github mando o link para você vê como foi que entendo o seu "projeto".

Link para o comentário
Compartilhar em outros sites

  • 0

Fiz uma correção na página 'ativ_formulario2.php' que não estava enviando as informações iniciais para o formulário 'ativ_resultado.php':

			<div>
				<label>Nome:</label>
				<input type="text" name="nome" value="<?php echo $nome;?>" readonly>
			</div>
			<div>
				<label>Idade:</label>
				<input type="number" name="idade" value="<?php echo $idade;?>" readonly>
			</div>
			<div>
				<label>Sexo</label>
				<input type="text" name="sexo" value="<?php echo $sexo;?>" readonly>
			</div>
			<div>
				<label>Computador?</label>
				<input type="text" name="computador" value="<?php echo $computador;?>" readonly>
			</div>
			<div>
				<label>Notebook?</label>
				<input type="text" name="notebook" value="<?php echo $notebook;?>" readonly>
			</div>
			<div>
				<label>Smartphone?</label>
				<input type="text" name="smartphone" value="<?php echo $smartphone;?>" readonly>
			</div>
			<div>
				<label>Experiencia?</label>
				<input type="text" name="experiencia" value="<?php echo $experiencia;?>" readonly>
			</div>

Foi também realizado o upload o seu projeto inteiro para o Github assim você pode ver como ficou inteiro, fazer download ou até tirar duvida:

Link do Github

 

 

github-temp.png

Editado por Alyson Ronnan Martins
correção da imagem
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...