Forum 

Forum AspNuke.it - Il tuo Portale OpenSource in ASP

Problemi con articles-inc.asp

Autore Messaggio
fchiurazzi

Amatore
Amatore
35 Discussioni



Profilo - fchiurazzi
31 dicembre 2008 alle 13:11:27 Profilo - fchiurazziInvia un messaggio privato Rispondi quotando
Modificato il 01 gennaio 2009 alle 21:29:41

Dopo varie prove e riprove ho rilevato che la sub sotto riportata del file articles-inc.asp non funziona se il contenuto del campo descrizione dell' articolo è più lungo di 255 caratteri.
Per spiegarmi con un esempio (www.sulsinni.com):
-se clicco su Categorie/sezioni e poi su ARTE & CULTURA (..) vedo in fondo delle fotografie.
Le foto (inserite in una tabella di tre colonne) non sarebbero visibili se utilizzassi la Sub sotto riportata in forma originale, ma vedrei una sola immagine in quanto il campo arDescription (di tipo Memo) inserito in una clausola GROUP By conterrebbe solo 255 caratteri.
Questo è documentato su varie parti (basta fare una ricerca su google).
Poichè la SUB è rimasta invariata anche nella versione 2.08, mi è sembrato opportuno segnalarVi il problema. Probabilmente, come è capitato a me, finora mai nessuno ha avuto la necessità di inserire nella descrizione contenuti superiori a 255 caratteri. Quando si è posta la necessità di inserire delle foto che siano cliccabili o meno, ho notato la disfunzione.

La soluzione che ho adottato, temporaneamente, è quella di fare un Select * from articles eliminando

If sXMLVersion <> "" Then
rSQL = rSQL & " AND vCode='" & sXMLVersion & "'"
end if

ed anche

rSQL = rSQL & " GROUP BY arID, arDate, arTitle, arAuthor, arDescription, arDate ORDER BY arDate"

In questo modo non ho il controllo se i campi sono validati o meno, ma la fretta mi impone questa soluzione.

Una soluzione sicuramente più appropriata è quella di spezzare il Select e recuperare in una variabile il valore di arDescription.....
Voi che ne dite?


La sub in questione è questa:


Sub DisplayArticlesSearch(iCategory)
Dim oCn, oRs, rSQL, bFirst, iNbPages
bFirst = True

Set oCn = DBConnexion(DB_MAIN)

If iCategory = "" Then
iCategory = 0
end if

rSQL = "SELECT arId, arTitle, arAuthor, arDescription, arDate, count(apID) FROM articles, articlespages, versions WHERE arID=apArticle AND arVersion=vID AND arValid=1 AND apValid=1 AND arCategory=" & iCategory


If sXMLVersion <> "" Then
rSQL = rSQL & " AND vCode='" & sXMLVersion & "'"
end if
rSQL = rSQL & " GROUP BY arID, arDate, arTitle, arAuthor, arDescription, arDate ORDER BY arDate"


---------------
E' difficile fare delle vacanze intelligenti dopo undici mesi di lavoro cretino.
fchiurazzi

Amatore
Amatore
35 Discussioni



Profilo - fchiurazzi
31 dicembre 2008 alle 16:44:57 Profilo - fchiurazziInvia un messaggio privato Rispondi quotando
Mentre c'è chi si prepara al cenone.... credo di aver trovato il codice risolutore. In pratica ho sdoppiato la SELECT. Se serve, è a disposizione. Vorrei prima però che qualcuno dello staff ci desse un' occhiata....
---------------
E' difficile fare delle vacanze intelligenti dopo undici mesi di lavoro cretino.
djveleno

Amministratore

Esperto
Esperto
1025 Discussioni



Profilo - djveleno
02 gennaio 2009 alle 15:09:36 Profilo - djvelenoInvia un messaggio privato Rispondi quotando
C'è un errore di fondo, e cioè, il campo arDescription serve solo ad avere una breve descrizione dell'articolo, e non a contenere una serie di fotografie, è uno stile giornalistico, Titolo - Sottotitolo - Articolo (che può essere composto da una pagina o cento pagine), il vero corpo è nella tabella articlespages, dove viene effettivamente scritto l'articolo nel campo apContent, è evidente che in un qualsiasi articolo di giornale le foto riguardanti lo stesso non le troverai nel sottotitolo ma sopra o sotto o al fianco dell'articolo stesso, ed è la stessa tecnica che usiamo anche noi di Aspnuke che di articoli ne abbiamo scritti a decine.
---------------
A lavare la testa ai somari, ci si rimette l'acqua e il sapone!

http://aspnuke208.somee.com/Default.asp

fchiurazzi

Amatore
Amatore
35 Discussioni



Profilo - fchiurazzi
02 gennaio 2009 alle 15:17:20 Profilo - fchiurazziInvia un messaggio privato Rispondi quotando
Se è così siamo d' accordo. Poichè il campo è di tipo Memo e gestibile con editor grafico, il problema comunque rimane.
D' altronde si risolve facilmente sdoppiando la Select.
Con l' occasione Auguro Buon Anno.
---------------
E' difficile fare delle vacanze intelligenti dopo undici mesi di lavoro cretino.
djveleno

Amministratore

Esperto
Esperto
1025 Discussioni



Profilo - djveleno
02 gennaio 2009 alle 15:21:56 Profilo - djvelenoInvia un messaggio privato Rispondi quotando
Se è una tua esigenza personale, ben hai fatto a trovare una soluzione consona all'esigenza, abbiamo sempre lasciato il campo impostato a MEMO per evitare la ristrettezza della descrizione in un campo TESTO, non per questo è una soluzione sbagliata, era solo per praticità d'uso.
---------------
A lavare la testa ai somari, ci si rimette l'acqua e il sapone!

http://aspnuke208.somee.com/Default.asp

fchiurazzi

Amatore
Amatore
35 Discussioni



Profilo - fchiurazzi
02 gennaio 2009 alle 15:35:53 Profilo - fchiurazziInvia un messaggio privato Rispondi quotando
Visto che la clausola group by comunque ti tronca il testo a 255 caratteri, ho pensato fosse utile segnalare il problema nel caso che qualcun altro utilizzatore di aspnuke avesse la stessa necessità.
---------------
E' difficile fare delle vacanze intelligenti dopo undici mesi di lavoro cretino.

Log in

Login
Password
Memorizza i tuoi dati:

Cerca

 

Sostieni AspNuke

Un piccolo gesto per aiutarci a mantenere AspNuke.it online

Promo

MusicWebItalia.it
Video Testi Traduzioni Spot Colonne sonore Accordi e Spartiti gratis.

Visitatori

Visitatori Correnti : 21
Membri : 0 offline Anna

Iscritti

 Utenti: 18940
Ultimo iscritto : glauco
Lista iscritti
Messaggi privati: 3373 Commenti: 2210 Immagini: 39 Downloads: 144 Articoli: 49 Pagine: 101 Siti web: 544 Notizie: 180 Sondaggi: 11 Preferiti: 5580891 Post sui forum: 51195 Libro degli ospiti: 4 Eventi: 7

Versioni

Temi