Oznámení
Omlouváme se, provoz fóra byl ukončen
fetchAssoc() duplicita pri navratu
Upozornění: Tohle vlákno je hodně staré.
před 8 lety
- motycka01
- Člen | 1
Ahoj,
prosim o radu se ziskanim dat z databaze:
kod:
<?php
$result = dibi::query("SELECT DISTINCT
[node],[hw_type],[vs],[d_vs.max_dynamic_macs],[egress_isid],[d_port.port],[d_hw_port.max_dynamic_macs],[d_vlan.vlan],[d_tp_name.name],[d_tp_mode.mode],[cir],
[description],[max_frame_size],[tp_global],[forward_unlearned],[d_tp_port.enable],[d_node.backup_time]
FROM [d_node]
LEFT JOIN [d_vs] ON [idd_node] = [d_vs.d_node_idd_node]
LEFT JOIN [d_vc] ON [idd_vs] = [d_vs_idd_vs]
LEFT JOIN [d_port] ON [idd_vs] = [d_port.d_vs_idd_vs]
LEFT JOIN [d_vlan] ON [d_port.idd_port] = [d_vlan.d_port_idd_port]
LEFT JOIN [d_tp_port] ON ([d_node.idd_node] = [d_tp_port.d_node_idd_node] and [d_tp_port.port] = [d_port.port])
LEFT JOIN [d_tp_name] ON ([d_tp_port.idd_tp_port] = [d_tp_port_idd_tp_port] and [d_vlan.vlan] = [d_tp_name.vlan])
LEFT JOIN [d_tp_mode] ON [d_tp_port.idd_tp_port] = [d_tp_mode.d_tp_port_idd_tp_port]
LEFT JOIN [d_hw_port] ON ([idd_node] = [d_hw_port.d_node_idd_node]
AND [d_hw_port.port] = [d_port.port] )
WHERE [vs] LIKE %s", $search_str);
$assoc = $result->fetchAssoc('node');
unset($result);
$smarty->assign('stack', $assoc);
?>
Problem je v tom ze ruzne tabulky maji stejne jmeno pole v mem priklade
[max_dynamic_macs], tim padem
se mi ve vysledku objevi jen jednou protoze ztraci vazbu na tabulku. Jak se
tento problem resi ?
PHP Version 5.1.6
Dekuji
před 8 lety
- HosipLan
- Moderator | 4693
co takhle?
$result = $smarty->assign('stack[]', $assoc);
var_dump($result);
před 8 lety
- Milo
- Nette Core | 1119
Aliasuj je
$sql = 'SELECT t1.id AS id1, t2.id AS id2, t3.id AS id3 ...';