Erro na sintaxe
Fiz um select assim:
$emp = $_GET['codcli'];
$metodo = $_GET['id_tarefa'];
$procs = mysql_query("SELECT categorias.categoria, tarefas.tarefa, prc.*
FROM categorias
INNER JOIN empresas
INNER JOIN prc ON empresas.codcli = prc.codcli
INNER JOIN tarefas ON prc.id_tarefa = tarefas.id_tarefa
AND categorias.id_cat = tarefas.cat
GROUP BY prc.codcli, categorias.categoria, tarefas.tarefa, prc.definicao, prc.descricao
HAVING prc.codcli LIKE $emp AND prc.id_tarefa LIKE $metodo")or die(mysql_error());//faz a busca com as palavras enviadas
if (empty($procs)) {
echo "Nenhum registro encontrado.";
}
E depois, tentei recuperar os dados na página da seguinte forma:
<?php
while ($dados = mysql_fetch_array($procs)) {
echo "$dados['categoria']";
}
?>
Só que tá dando erro "Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\xampp\htdocs\teste\prc.php on line 31" justamente na linha echo "$dados['categoria']";
Em outra página esta sintaxe funcionou... o que será que está acontecendo?
$emp = $_GET['codcli'];
$metodo = $_GET['id_tarefa'];
$procs = mysql_query("SELECT categorias.categoria, tarefas.tarefa, prc.*
FROM categorias
INNER JOIN empresas
INNER JOIN prc ON empresas.codcli = prc.codcli
INNER JOIN tarefas ON prc.id_tarefa = tarefas.id_tarefa
AND categorias.id_cat = tarefas.cat
GROUP BY prc.codcli, categorias.categoria, tarefas.tarefa, prc.definicao, prc.descricao
HAVING prc.codcli LIKE $emp AND prc.id_tarefa LIKE $metodo")or die(mysql_error());//faz a busca com as palavras enviadas
if (empty($procs)) {
echo "Nenhum registro encontrado.";
}
E depois, tentei recuperar os dados na página da seguinte forma:
<?php
while ($dados = mysql_fetch_array($procs)) {
echo "$dados['categoria']";
}
?>
Só que tá dando erro "Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\xampp\htdocs\teste\prc.php on line 31" justamente na linha echo "$dados['categoria']";
Em outra página esta sintaxe funcionou... o que será que está acontecendo?
comentários (0)
suspender
Lista de Respostas:
04/03/2010 12:53pm
(~15 anos atrás)
(~15 anos atrás)
troque echo "$dados['categoria']";
por echo $dados['categoria'];
Outra coisa, Seu SQL parece que tem um problema de otimização pois há um JOIN sem condição de ligação.
por echo $dados['categoria'];
Outra coisa, Seu SQL parece que tem um problema de otimização pois há um JOIN sem condição de ligação.
04/03/2010 1:23pm
(~15 anos atrás)
(~15 anos atrás)
Beleza, deu certo, mas é que eu queria distribuir o resultado na consulta pela página... tipo assim:
<table>
<tr>
<?php
while ($dados = mysql_fetch_array($procs)) {
echo "<td>Categoria: $dados['categoria']</td>
<td>Tarefa: $dados['tarefa']</td>";
}
?>
</tr>
</table>
<table>
<tr>
<?php
while ($dados = mysql_fetch_array($procs)) {
echo "<td>Categoria: $dados['categoria']</td>
<td>Tarefa: $dados['tarefa']</td>";
}
?>
</tr>
</table>
04/03/2010 1:24pm
(~15 anos atrás)
(~15 anos atrás)
Ah marcos, em tempo, obrigado pela dica do JOIN, marquei bobeira...
04/03/2010 3:30pm
(~15 anos atrás)
(~15 anos atrás)
Para exibir os resultados use
<table>
<?php
while ($dados = mysql_fetch_array($procs)) {
echo "<tr><th>Categoria: $dados['categoria']</th>
<td>Tarefa: $dados['tarefa']</td></tr>";
}
?>
</table>
<table>
<?php
while ($dados = mysql_fetch_array($procs)) {
echo "<tr><th>Categoria: $dados['categoria']</th>
<td>Tarefa: $dados['tarefa']</td></tr>";
}
?>
</table>