Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá a todos,
gostaria de saber como faço para consultar uma tabela do banco de dados.
Só que esta tabela será passado por uma variável php.
exemplo:
//pagina1.php
...
<a href="?pagina=equipe">Equipe</a>
...
//pagina2.php
$tabela = $GET_[pagina];
$rs = $this->DB->GetRow("SELECT texto FROM $tabela WHERE id = 1");
-------
a ideia é que $tabela receba "equipe" e assim realize a consulta.
qual a sintaxe para $tabela dentro da consulta? (entre aspas, aspas simples,...)
Obrigado
>
Mude
DE
$tabela = $GET_[pagina];
PARA
$tabela = $_GET['pagina'];
ficou no mesmo.
está dando o seguinte erro no update da tabela
$this->DB->Execute("UPDATE $tabela SET texto = '{$texto}' WHERE id = 1") or die($this->DB->ErrorMsg());
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SET texto = 'testando inserção na tabela' WHERE id = 1' at line 1Ainda assim, o jeito que você tava pegando por $_GET estava errado.
Coloque a sua consulta SQL em uma variável e mande imprimir para ver como ela ficou com as variáveis
Exemplo:
$sql = "UPDATE $tabela SET texto = '{$texto}' WHERE id = 1";
echo $sql;>
Ainda assim, o jeito que você tava pegando por $_GET estava errado.
Coloque a sua consulta SQL em uma variável e mande imprimir para ver como ela ficou com as variáveis
Exemplo:
$sql = "UPDATE $tabela SET texto = '{$texto}' WHERE id = 1";
echo $sql;
Ah sim.. obrigado
mas nao da pra colocar em variável justamente porque está dando o erro que citei acima.
fiz um teste trocando a variavel pelo nome da tabela mesmo e deu certo.
nao sei o que pode ser.
Tá, mas o que mostrou a variável $sql?
>
Tá, mas o que mostrou a variável $sql?
fiz assim
$teste = "SELECT texto FROM $tabela WHERE id = 1";
echo $teste;
retornou:
SELECT texto FROM WHERE id = 1
e
$sql = "UPDATE $tabela SET texto = '{$texto}' WHERE id = 1";
echo $sql;
retornou:
UPDATE SET texto = '' WHERE id = 1
De onde vem a variável $texto?
Como você está passando a variável por $_GET?
<a href="pagina2.php?pagina=equipe">Equipe</a>
Na pagina2.php você pega a variável assim: $pagina = $_GET['pagina'];
Se $texto tbm vem por $_GET
<a href="pagina2.php?pagina=equipe&texto=alguma coisa">Equipe</a>
$texto = $_GET['texto'];
Se não funcionar assim, o problema deve ser outro, pois suas variáveis estão nulas, não estão tendo um valor atribuido a elas.
poste o código de todas as paginas que fazem parte da ação que você quer executar... e não esqueça de usar BBCODE
Mude
DE
$tabela = $GET_[pagina];
PARA
$tabela = $_GET['pagina'];