Estou iniciando um curso de php básico e gostaria muito de que alguém encontrasse onde errei - já conferi e "reconferi" o exemplo do professor Manoel, mas deu a "mulesta dos cachorro" (é, é, pernambuquês), mas nada feito, nada funciona, a tela fica sem resposta.
Vou pôr meu código e apelar para alguém me dar uma dica:
---------
View:
<html>
<head>
<meta charset = "utf-8>
<title>Aprendendo PHP </title>
</head>
<body>
<form action="<?php echo "localhost/exercicio/app/controllers/exercicio/calcularEx01" ?>" method="Post"> <!-- quando pus url_base, o navegador fica reclamando, assim, ele parou, então, mantive só para funcionar -->
Nome1: <input type="text" name="txt_nome1">
Nome2: <input type="text" name="txt_nome2">
<input type="submit" value="Imprime">
</form>
<br> <span><b> <?php echo isset ($resultado) ? $resultado : null; ?> </b></span>
</body>
</html>
---------
Model:
?php
namespace app\models; // tem que ter ponto-e-vírgula no namespace e no use
//use app\core\Model
class Exercicio { // não tem parênteses na classe
public function lerDoisValores ($nome1, $nome2) {
return $nome1." ".$nome2;
}
}
Controller
?php
namespace app\controllers;
use app\models\Exercicio;
class ExercicioController { //classes não têm parêntesis
public function index () {
echo "Lista de Resultados";
}
public function ex01 () { //função tem parêntesis - são os atributos
$dados["view"] = "ex01";
$this-> load("ex01", $dados);
}
public function calcularEx01 () { //função tem parêntesis - são os atributos
$objExercicio = new Exercicio(); //objeto também tem parêntesis
$nome1 = isset ($_POST["txt_nome1"]) ? $_POST["txt_nome1"] : null;
$nome2 = isset ($_POST["txt_nome2"]) ? $_POST["txt_nome2"] : null;
$dados["resultado"] = $objExercicio-> lerDoisValores($nome1, $nome2);
$dados["vies"] = "ex01";
$this-> load("ex01", $dados);
}
}