Estou a usar o PDO (PHP Orientado a Objetos) e aparece o erro
Notice: Undefined index: tabela na linha 68
Linha 68 é esta: $tabela=$_POST[‘tabela’];
Estou a vir buscar o tabela deste Select:
<form method="POST" action="Select.php">
<select name="tabela">
E a usar o valor da variável aqui:
switch ($tabela) {
case "login":
{ (...)
Se eu tirar esta linha de código: ($tabela=$_POST['tabela'];
) dá erro no resto do código e não faz o que eu quero.
O que eu quero fazer e está a funcionar é apartir do select, ecolhe o nome da tabela que pretende ver da base de dados, só da esta linha de erro e queria evita-lá.
O html e o php estão no mesmo arquivo Select.php?
Pergunto porque para se usar o super global $_POST, você precisa ver se foi mandado o post pelo form…
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$tabela = $_POST['tabela'];
switch ...
}
Lembre-se que o padrão de carregamento de qualquer página é get, o post é enviado usando o submit do form…
Ao por esse comando o erro desapareceu, muito obrigado, podia-me se faz favor dizer-me o que faz essa linha de código?
Ela testa se a requisição que chegou é POST, assim o que estiver nesse if será executado…
A grande confusão que muita gente faz ao estudar php, é que colocando todo o código no topo da página já irá funcionar sem se atentar aos comportamentos… como disse, toda página web em qualquer linguagem de programação por padrão responde requisições get, para sair desse padrão é preciso algum evento (submit) e fazer a linguagem entender e tratar como tal…