Usando php para retornar GROUP_CONCAT('coluna x') valores
-
18-09-2019 - |
Pergunta
Estou tentando usar o PHP para retornar SQL valores em uma tabela HTML.Eu sou capaz de conseguir cada coluna para preencher sem um problema, exceto para a última coluna, "GROUP _ CONCAT (provision_id)."
Código relevante:
<?php
global $wpdb;
$wpdb->show_errors();
$contents = $wpdb->get_results( $wpdb->prepare("SELECT salaries.id, name, remaining, contract_value, GROUP_CONCAT( provision_id ) FROM salaries LEFT JOIN contracts ON contracts.id = salaries.id GROUP BY salaries.id"));
?>
[table header stuff...]
<?php
foreach ($contents as $content) {
?>
<tr>
<td><?php echo $content->name ?></td>
<td><?php echo $content->remaining ?></td>
<td><?php echo $content->contract_value ?></td>
<td><?php echo $content->GROUP_CONCAT(provision_id) ?></td>
<?php }; ?>
</tr>
Apenas ecoando $content->provision-id
não quer trabalhar.
Solução
Use um alias para a coluna.
GROUP_CONCAT( provision_id ) as pids
...
echo $content->pids
Outras dicas
Se você está buscando em objetos, você deve dar a sua nomes das colunas que são legais de membro de classe identificadores em PHP (eu vou link para o manual, apesar de sua descrição do válidos de nomes de variáveis é horrível):
SELECT ... GROUP_CONCAT(provision_id) AS provisions
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow