Erro template.php livro desenvolvimento web com php e mysql

Boa tarde !

Sou novo em PHP e estou lendo o livro acima e quando abro a página do template.php aparece o erro abaixo:

Notice: Undefined variable: lista_tarefas in C:\xampp\htdocs\OrganizarArquivos\template.php on line 47

Warning: Invalid argument supplied for foreach() in C:\xampp\htdocs\OrganizarArquivos\template.php on line 47

Código template.php
identar texto pre-formatado em 4 espaços

<head>
	<meta charset="utf-8" />
	<title>Gerenciador de Tarefas</title>
	<link rel="stylesheet" href="tarefas.css" type="text/css"/>
</head>
<body>
	<h1>Gerenciador de tarefas</h1>		
	<form>Texto pré-formatado
		<fieldset>
			<legend>Nova tarefa</legend>				
			<label>
				Tarefa:
				<input type="text" name="nome"/>
			</label>
			<label>
				Descrição:
				<textarea name="descricao"></textarea>
			</label>
			<label>
				prazo (Opcional):
				<input type="date" name="prazo" />
			</label>								
		</fieldset>
		<fieldset>
			<legend>Prioridade:</legend>				
			<label>
				<input type="radio" name="prioridade" value="baixa" checked />Baixa
				<input type="radio" name="prioridade" value="media"  />Média
				<input type="radio" name="prioridade" value="alta"  />Alta
			</label>			
		</fieldset>
		<label>
			Tarefa concluída:
			<input type="checkbox" name="concluida" value="sim"/>
		</label>
		<input type="submit" value="Cadastrar" />
	</form>
	<table>
		<tr>
			<th>Tarefas</th>
			<th>Descrição</th>
			<th>Prazo</th>
			<th>Prioridade</th>
			<th>Concluída</th>
		</tr>			
		<?php foreach ($lista_tarefas as $tarefa) : ?>			
		<tr>
			<td><?php echo $tarefa['nome']; ?></td>
			<td><?php echo $tarefa['descricao']; ?></td>
			<td><?php echo $tarefa['prazo']; ?></td>
			<td><?php echo $tarefa['prioridade']; ?></td>
			<td><?php echo $tarefa['concluida']; ?></td>
		</tr>			
		<?php endforeach; ?>			
	</table>
</body>
identar texto pre-formatado em 4 espaços

tarefas.php

<?php 

session_start();

if (array_key_exists('nome', $_GET) && $_GET['nome'] != ''){
	$tarefa = [] ;
	
	$tarefa['nome'] = $_GET['nome'] ;
	
	if (array_key_exists('descricao', $_GET)){
		$tarefa['descricao'] = $_GET['descricao'] ;
	}else{
		$tarefa['descricao'] ='';
	}

	if (array_key_exists('prazo', $_GET)){
		$tarefa['prazo'] = $_GET['descricao'] ;
	}else{
		$tarefa['prazo'] = '';
	}


	$tarefa['prioridade'] = $_GET['prioridade'] ;

	if (array_key_exists('concluida', $_GET){
		$tarefa['concluida'] = $_GET['concluida'] ;
	}else{
		$tarefa['concluida'] = '' ;
	}
	
	$_SESSION['lista_tarefas'][] = $tarefa ;
}



if(array_key_exists('lista_tarefas', $_SESSION)){
	$lista_tarefas = $_SESSION['lista_tarefas'] ;
}
include "template.php";
?>`

Texto pré-formatado`

Olá, amigo! Tudo bem?

O problema ainda persiste ou já conseguiu contorna-lo?

Pelo visto você ainda está bem no começo do livro, né? A mensagem aponta que a variável $lista_tarefas não está declarada apropriadamente.

Se importa de me indicar em qual capítulo/página você está para eu tentar ajuda-lo melhor?

Aguardo retorno.

Boa tarde, como vai, também sou novo em PHP e aparece a mesma mensagem de ERRO.
Capitulo 6.2, estou nessa parte.
Mudei os nomes dos arquivos para ver se era algum cookie, mas o erro persiste.

<?php session_start(); // LIVRO PHP. TEMPLATE E TAREFAS PARCIAL. CHAMEI DE TAREFAS1 E template1 // ATÉ AQUI PARCIAL. FUNCIONA // PONTO RESTAURO 1 // PONTO RESTAURO 1. OK- if (array_key_exists('nome', $_GET) && $_GET['nome'] != '') { $tarefa = []; $tarefa['nome'] = $_GET['nome']; if (array_key_exists('descricao', $_GET)) { $tarefa['descricao'] = $_GET['descricao']; } else { $tarefa['descricao'] = ''; } if (array_key_exists('prazo', $_GET)) { $tarefa['prazo'] = $_GET['prazo']; } else { $tarefa['prazo'] = ''; } $tarefa['prioridade'] = $_GET['prioridade']; if (array_key_exists('concluida', $_GET)) { $tarefa['concluida'] = $_GET['concluida']; } else { $tarefa['concluida'] = ''; } $_SESSION['lista_tarefas'][] = $tarefa; } // ... include "1template2.php"; e a table no arquivo 1template2.php (mudei o nome ) <?php foreach ($lista_tarefas as $tarefa) : ?>
                                   <tr>

                                            <td><?php echo $tarefa['nome']; ?></td>

                                            <td><?php echo $tarefa['descricao']; ?></td>

                                            <td><?php echo $tarefa['prazo']; ?></td>

                                            <td><?php echo $tarefa['prioridade']; ?></td>

                                            <td><?php echo $tarefa['concluida']; ?></td>

                                    </tr>

                        <?php endforeach; ?>

              </table>

</body>

O Erro é este:
Warning : Undefined variable $lista_tarefas in C:\xampp\htdocs\1FABIOMINHASPAGINASPHP\livrophp\tarefas\1template2.php on line 73

Tarefa Descricao Prazo Prioridade Concluída

Olá, @FABIOPASSARELLA ! Bem vindo ao fórum.

Você consegue formatar sua mensagem de maneira que o código fique em várias linhas? Assim está difícil de entender até onde é código e até onde é comentário.

1 curtida

bom dia! desculpe a demora, sim, vou formatar, mas esse erro, já resolvi, com a ajuda do forum mesmo. Tinha cashe armazenado e por isso apresentava o erro. LImpando o cash, sumiu o erro. Grato.

1 curtida