324 messaggi dal 20 settembre 2001
www.iromtek.com
Dunque... ho creato qualche riga di codice che mi consentisse, dove le parole sono oltre un certo numero di caratteri, di spezzare la frase e mettere dei puntini.
Il tutto funziona ma a volte mi da un errore e non capisco il motivo

Posto di seguito il codice ed il messaggio di errore che a volte spunta

Codice:
<%
'--------conteggio parole---------
descrizione=rs("descrizione")
if len(descrizione)=>40 then
  parole=ubound(Split(descrizione))+1
  matrice=split(descrizione)
  for s=0 to 8
  response.write(matrice(s)&" ")
  next
  response.write("...")
end if
if len(descrizione)<=39 then
  response.write(descrizione)
end if
'----------FINE conteggio parole---------
%>


L'errore è:
Errore di run-time di Microsoft VBScript (0x800A0009)
Indice non incluso nell'intervallo: 's'
centro.asp, line 337

"Il problema delle persone è che cercano negli altri qualità che questi non posseggono mentre dovrebbero apprezzare ed esaltare le qualità che gli altri realmente posseggono"
177 messaggi dal 24 luglio 2001
Ciao,

non è che ti capita l'errore quando scrivi un testo che supera i 40 caratteri, ma che contine meno di 8 parole??

------------------------------
Carlo Patti
------------------------------
info@ilmagodeipc.it
www.ilmagodeipc.it
324 messaggi dal 20 settembre 2001
www.iromtek.com
non credo... o meglio ci sono dei record con meno di 8 parole ma si visualizzano.... uff sti errori random che uno non riesce a gestire li odio

"Il problema delle persone è che cercano negli altri qualità che questi non posseggono mentre dovrebbero apprezzare ed esaltare le qualità che gli altri realmente posseggono"
177 messaggi dal 24 luglio 2001
Ciao,

scusami se mi permetto di insistere, ma c'è una cosa che non mi torna sul tuo codice, e per spiegarti ti faccio un esempio:

TESTO1= "AAAAA BBBB CCCCC"
Questo testo è composto da tre parole, ma l'intera frase non supera i 39 caratteri quindi viene visualizzata completamente.

TESTO2= "AAAAAAAAAAAAAAAAAAAAAAAAA BBBBBBBBBBBBBBBBBBBBBBBB CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC DDDDDDDDDDDDDDDDDDDDDD"
Questo testo è composto da quattro parole, e l'intera frase supera i 39 caratteri quindi viene eseguito il seguente codice:
parole=ubound(Split(descrizione))+1 
matrice=split(descrizione) 
for s=0 to 8 
response.write(matrice(s)&" ") 
next 
response.write("...") 

Focalizziamoci sull'array matrice, che nel nostro esempio sarà composto da 4 elementi (da 0 a 3).
Ora, all'interno del ciclo FOR, che fai durare per 9 cicli, fai visualizzare ogni singolo elemento dell'array matrice.
Nel nostro esempio quando arriviamo al punto che s ha come valore 4 il sistema ti darà errore, in quanto l'array matrice contiene solo 4 elementi!!
Spero di essere stato chiaro. Devi limitare la visualizzazione delle parole al numero massimo di elementi contenuti nell'array. Ricordati che gli elementi di un array partono da 0.
o meglio ci sono dei record con meno di 8 parole ma si visualizzano

non è che questi record sono composti da meno di 40 caratteri?
Ciao.

------------------------------
Carlo Patti
------------------------------
info@ilmagodeipc.it
www.ilmagodeipc.it
324 messaggi dal 20 settembre 2001
www.iromtek.com
non c'è bisogno che ti scusi anzi...

si il problema effettivamente sta proprio là...

devo cominciare a modificare

"Il problema delle persone è che cercano negli altri qualità che questi non posseggono mentre dovrebbero apprezzare ed esaltare le qualità che gli altri realmente posseggono"

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.