Query annidata non funzionante!

Posts: 9
Iscritto il: 04 Apr 08

Salve,
ultimamente sto modificando l'aggregator integrato su Drupal 5.6 in modo tale che nella pagina principale di "Aggregatore notizie" si ha la visualizzazione dell'ultima news per ogni feed.
Ad esempio ho 3 feed: tizio.net, caio.com, e sempronio.org. Devo fare visualizzare soltanto 3 news, che saranno rispettivamente le ultime di ogni feed per ordine di data.
Quindi ho modificato la funzione aggregator_page_last() di aggregator.module riscrivendo la query sql in questo modo:

function aggregator_page_last() {
  drupal_add_feed(url('aggregator/rss'), variable_get('site_name', 'Drupal') . ' ' . t('aggregator'));
/**
* Old Query: SELECT i.*, f.title AS ftitle, f.link AS flink FROM {aggregator_item} i INNER JOIN {aggregator_feed} f ON i.fid = f.fid ORDER BY i.timestamp DESC, i.iid DESC
*/

  return _aggregator_page_list
('SELECT i.*, f.title AS ftitle, f.link AS flink FROM ( SELECT * FROM aggregator_item ORDER BY timestamp DESC ) AS i INNER JOIN aggregator_feed AS f ON i.fid = f.fid GROUP BY i.fid', arg(1));
}
Se notate ho messo come commento la query precedente nel caso in cui la vorreste vedere. La query funziona perfettamente ed i risultati della visualizzazione sono corretti come volevo io. Il problema sta nel fatto che mi compare questo warning

user warning: 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 '' at line 1 query: SELECT COUNT(*) FROM ( SELECT * FROM aggregator_item in /var/www/federico2/includes/database.mysql.inc on line 172.

E' possibile perchè sto usando una subquery?! ho provato di tutto. Aspetto vostre notizie.


Posts: 74
Iscritto il: 14 Dic 06

Achtung! Per fare ciò che vuoi non è necessario modificare moduli core. Eye-wink

__________________

Gross Design Studio – drupal web agency


Posts: 9
Iscritto il: 04 Apr 08

E come dovrei fare?


Posts: 74
Iscritto il: 14 Dic 06

Semplicemente creare un php snippet per prendere dal database i 3 contenuti che ti servono.

__________________

Gross Design Studio – drupal web agency


Posts: 9
Iscritto il: 04 Apr 08

Mi spiegheresti meglio? Sono utente drupal da pochi giorni.


Posts: 74
Iscritto il: 14 Dic 06

Sai che puoi usare PHP nei blocchi o nodi? Puoi creare un blocco nel formato PHP visibile solo nella pagina del agregator.

__________________

Gross Design Studio – drupal web agency


Posts: 74
Iscritto il: 14 Dic 06
  1. PHP snippets
  2. PHP block snippets
__________________

Gross Design Studio – drupal web agency


Posts: 9
Iscritto il: 04 Apr 08

L'inglese non lo mastico molto però. Tu stesso non potresti rispondermi?


Posts: 57
Iscritto il: 12 Feb 08

Non vorrei sbagliare,ma le query annidate non funzionano su tutte le versioni di mysql ma solo a partire da una che non ti so definire.

__________________

Il mio sito con Drupal
http://www.chupachupz.it


Condividi contenuti