Newsgroup: it.lavoro.professioni.webmaster
Titolo: testo dinamico

ok, sarò la seimilesima persona che fa domande così stupide, ma ho postato
in forum e newsgroup per newbies e non mi hanno risposto (forse la domanda è
troppo stupida?).
il quesito è: usando asp e db access , come faccio a consentire all'utente
di inserire nel db un testo di massimo 1800 battute? sto usando dreamweaver
mx e access 97. non sono riuscita a trovare uno script o qualcosa di
abbastanza chiaro. forse non sono stata in grado di cercare, ma il punto è
che è già tanto che sono riuscita a fare form di registrazione, pagina di
login, pagina di inserimento dati nel db, e tutto funziona. tutto tranne il
testo. come lo attacco al db? come lo trasmette il form al db? oppure dove
la trovo una spiegazione chiara?
scusatemi la caterva di domande, ma non mi mandate su 
html.it
 o simili, è
una settimana che ci giro è ho trovato di tutto, anche molto utile, ma
questo problema cretino che sono sicura ognuno di voi sa risolvere in dieci
modi diversi, no. è troppo basic.
grazie
Marina

 la trovo una spiegazione chiara?
Se sei arrivata a questo punto ti basta fare un po' di prove e studiare 
un pochettino di piu' :-)
Cmq, brevemente, usa uno script JavaScript per limitare nella textarea 
(cerca "limitare" qua: 
http://www.jsdir.com/staffscripts
 che non mi 
ricordo la URL :-) e poi comunque tronca quando fai la INSERT nel 
database usando left()
Per le ASP fatti un giretto in 
aspitalia.com
 (e' in italiano), usando Google o qualche directory trovi un'infinita' di siti in inglese
-- 
Ciao, Riccardo
------------------------------------------------------------------------
http://www.jsdir.com
 ---- Bring Your Site To Life!!!!
------------------------------------------------------------------------
http://www.dev2dev.it
 - La rete ha connesso nuove particelle - D2D006
------------------------------------------------------------------------
Per rispondere: togli il PUNTO e metti un .


grazie, riccardo, molto utile, ho scaricato già qualche script che mi
interessa dal link che mi hai dato, ma io ho il problema inverso. db access
97 non ammette text area lunghe più di 255 caratteri (o no? o c'è qualche
funzione nascosta che non riesco a individuare?).
mi sembrava che un modo per risolverla nel db potesse essere usare gli
oggetti ole, attaccando al db un file txt - e questo va bene per
visualizzare poi le pagine sul sito richiamando il txt (anche se ho trovato
gli script ma non ci sono riuscita ancora). ma mi resta sempre un problema:
se pure riesco a mostrare il txt all'utente, come fa l'utente a scriverlo e
mandarlo al db? come funzionano i forum o i campi di inserimento testo più
lunghi nei form ?
non mi mandare a comprare libri che non posso uscire. potrei infettare tutta
l'italia di varicella, in questo momento :)
marina

modi diversi, no. и troppo basic.
eh, ma come mai noi lo sappiamo risolvere in dieci modi diversi?
perchй siamo chissа quali geni?  io non credo, forse solo perchй
sappiamo quello che facciamo.
quello che ti manca e che manca a tutti i cretini che cercano gli
script и la capacitа di astrazione, ovvero il rendersi conto che
esstono delle regole generali per risolvere i problemi e non delle
azioni da compiere tipo clicca quel menu trascina quel coso clicca su
ok e il gioco и fatto.  non funziona cosм.  quella и una presa per il
culo delle aziende che producono software per farti credere che puoi
programmare senza sforzo e venderti il loro prodotto e farti sentire
un genio (all'inizio).  non и cosм che funziona.  se devi andare in
automobile da roma a milano non puoi cercare istruzioni del tipo
"prendi una chiave, cerca una fessura vicino al volante, infilala e
girala poi quando senti del rumore premi un po' con il piede destro
sul pedale tutto a destra, poi col piede sinistro premi sul pedale
tutto a sinistra, poi spingi l'asta che hai alla destra del tuo sedile
di lato a sinistra e indietro (se и una fiat, perchй magari le peugeot
sono diverse) poi rilascia lentamente il piede sinistro...  adesso
gira il coso rotondo che hai tra le mani verso destra... ecc.".
no, troverai istruzioni tipo: prendete il raccordo, seguite le
indicazioni per l'A1.  tutto il resto lo devi saper fare, lo devi aver
imparato prima.  mica и difficile, cazzo.
-- 
dipende.

lunghi nei form ?
nel file che genera la pagina nella quale l'utente scrive:
...
<form method=post action=pippo.asp>
<textarea cols...  rows... name=testolungo></textarea>
...
</form>
...
nel file pippo.asp:
..
dim cn
dim ssql
set cn = server.createobject("adodb.connection")
...
ssql = "INSERT INTO nometabella "
ssql = ssql & "(nomecampo)
ssql = ssql & " VALUES "
ssql = ssql & "(" & "'" & request("testolungo") & "'" & ")"
...
-- 
dipende.

 ssql = ssql & "(" & "'" & request("testolungo") & "'" & ")"
se vuoi dirgliela tutta ricordagli anche di gestire gli apici altrimenti
rischio di SQL Injection (oltre che di errore)... e spessissimo questi
errori li fanno anche quelli che si definiscono "esperti"
ricordarsi: OGNI CAMPO immesso in una query, va prima controllato, sia esso
stringa (dove uno il replace lo fa gia normalmente altrimenti se inserisce
una parola con l'apostrofo va in errore lo script) ma anche negli altri
campi.
Se non lo fate datemi la URL e vedete che vi incasino il DB :P
(non costa molto farsi una funzione SQL_Encode da usare prima di inserire un
qualsiasi campo in una query)
-- 
Fabio Angela (aka Red Angel) ICQ: 95966807
http://www.redangel.it
 : il portale sulla programmazione
tel. 3492305111


Si, come sopra..... ma possono anche essere tabelle!  Un campo denota un
tipo di dato, e una tabella  (assimilabile a una matrice, ovvero un array di
almeno due dimensioni) è un tipo di dato.
Cooper.
-- 
------------------------------------
BlueWare di Impastato Marcello
 [web] 
http://www.blueware.it
   - Realizzazione Siti Web;
   - Traduzioni in: Inglese/Rumeno/Spagnolo;
   - Servizi per l'informatica.
 [Email] 
coo...@blueware.it
 [icq] 146781935
 [Irc] 
irc.azzurra.org
 - #chatlandia

qualsiasi campo in una query)
maa sò fatta pur'io, gli facci oanche dire null se la stringa è
vuota...
-- 
dipende.

intera o stringa.
ecco, a meno che.
dai marcè, nun stamo a pittà, qui ciavemo uno che cerca su drimuiver
lo script per ecc. ecc., l'accademia famola dopo.
-- 
dipende.

>>>ma
questo problema cretino che sono sicura ognuno di voi sa risolvere in dieci
modi diversi, no. è troppo basic.
non sottovalutare mai la capacità della gente di sapere ciò che dice. io so
quel che dico quando affermo che la mia domanda è cretina. e nemmeno te sei
reso conto. tu no, quando urli e strepiti così contro un potenziale
truffator-programmator. io non sto truffando nessuno quando faccio una
domanda in un circolo di conoscitori ed esperti ( aproposito, non c'è
scritto "attenti al genio" all'entrata). non mi veniva in mente un posto
migliore per apprendere qualcosa.
sempre grata
marina


Marina (diamoci del tu, se vuoi) non badare a quello che viene detto in
generale, quanto a chi risponde in particolare al tuo questito.
Il diritto di apprendere è di tutti ^_^ E su questo non ci piove nessuno,
non prendertela se certe risposte troppo IN, il fatto è che non è questo
diciamo il newsgroup adatto "alla natura di questi quesiti" che seppur
validi, e legittimi (io per primo lo riconosco) per la maggior parte dei
frequentatori (non tutti) sono ritenuti.... da "idioti" (le domande banali),
ma senza spingerci oltre, anche il nome del gruppo per certi versi parla
chiaro :)
Se accetti il mio consiglio, prendi in considerazione solo chi
effettivamente ti risponde a quello che chiedi e non sclerare per chi ti
risponde ma con toni diversi ^_^
Cooper ^_^


migliore per apprendere qualcosa.
guarda che nessuno qui ha mai fatto storie per il livello base delle
domande, anzi.  fa piacere vedere che uno prima ne sapeva zero e dopo
ne sa un po' in più grazie ad uno scambio di messaggi.
il tuo problema è che tu vuoi apprendere quello che vuoi tu... :-)
quello che tu *credi* sia vero...  tu credi di sapere già quello che
c'è da apprendere...  il tuo livello, cioè, non è zero, ma
*sotto*-zero.
comunque, vuoi la rispostina pronta?  probabilmente tu scrivi in un
linguaggio che si chiama vbscript.  in questo linguaggio trovi il
contenuto degli input di un form html in delle variabili che si
chiamano request("nomedellinput").  in vbscript esiste una funzione,
left(), che serve a prendere i primi n caratteri di una stringa e se
la stringa ha meno di n caratteri allora la prende tutta:
dim pippo
pippo = request("nometextarea")
pippo = left(pippo, 1800)
adesso dentro la variabile pippo hai una stringa lunga max 1800
caratteri e puoi usarla per inserirla nel db.
per inserirla nel db o costruisci una stringa sql, come ho scritto
nell'altro mex che non hai avuto la bontà di commentare, né, forse,
dato il suo contenuto tecnico e poco adatto a battutine da ragazzetta
permalosa, di leggere, o setti un oggetto recordset a.d.o. sulla
tabella in questione e applichi i metodi relativi per aggiungere un
record e scrivere un valore in un campo.
purtroppo i modi per fare queste due cose possono essere del tutto
diversi, quindi è difficile scrivere delle righe di esempio.  se posti
il tuo codice magari è meglio (possibilmente spurgato dell'html).  se
chiedi nel ng it.comp.www.asp forse è meglio ancora.
*io* preferisco il primo metodo, perché è di uso più generale: l'sql
lo trovi dappertutto, in qualsiasi altro linguaggio e in qualsiasi
ambiente, i recordset ado no.
-- 
dipende.

risponde ma con toni diversi ^_^
anche perché tanto l'unico che si č preso la briga di spiegarle
qualcosa di tecnico alla fine č stato il sottoscritto, no?  se tu
ritieni opportuno e possibile fare di meglio - non su chi ne sa di
piů, ma sul piano didattico, cioč su quello che poi resta davvero in
testa a chi ascolta - accomodati pure.  
se lo dovessi ritenere un compito troppo lungo e faticoso rispetto a
quel che hai da fare, amico mio, sappi che ti capisco benissimo.
-- 
dipende.

almeno due dimensioni) è un tipo di dato.
aaah, una matrice!  e dillo subito!  pensavo parlassi di una
tabella...  sai, quelle cose su cui fai una query...
be', sono sicuro che la tipa, come si chiamava, marina?, avrà trovato
utilissime le osservazioni che hai fatto e che le abbiano aperto la
mente.  già la vedo scrivere righe e righe di codice dopo queste
illuminazioni.
-- 
dipende.

 ha scritto nel messaggio
news:h4a6bvss3aet9cs7m...@4ax.com...
[Cut]
Ciao LBO,
onde evitare fraintesi, tengo a precisare che non mi riferivo direttamente a
te, quanto ho voluto prendere spunto dal tuo post per dare quel consiglio.
Ho notato purtroppo che spesso sul gruppo, quando si presentano persone che
fanno domande banali o comunque esposte nel modo errato.... a causa di una
loro mancanza di conoscenza, vengono subito attaccati (in modo più o meno
pesante) con eventuale polemica, mettendo cosi nell'aria un tono di
superiorità verso gli altri; cosa che onestamente mi infastidisce dal
momento che ho sempre considerato di considerarmi al pari degli altri.
Ragion per cui, non hai motivo di pensar male ^_^
In merito al fatto dei databases etc, beh io sottolineavo il fatto che vi è
una "scala gerarchica" fra le varie definizioni, ovvero ciascuna come
sottoinsieme dell'altra, o meglio:
1) tipo di dato (variabile, array (1,2,3...n dimensioni));
2) campo = tipo di dato;
3) record = insieme di campi;
4) database = insieme di record.
ora una tabella di fatto non è altro che un array (n-dimensionale) e nel
caso specifico un array bidimensionale (2 dimensioni ovvero riga x colonna).
Sulla base di questo ho convenuto che fosse errato definire un databases
come un insieme di tabelle (o di array che dir si voglia), in quanto ciò per
essere tale deve soddisfare dei precisi requisiti (provenienti dal basso,
ovvero dalla struttura del record e quindi dei singoli campi).
Mi spiego meglio. Se io definisco un campo come un array a due dimensioni
chessò di 5 righe per 4 colonne, posso dire che il db è composto da un
insieme di record formati da tabelle da 5x4 ma non posso dire che il db è
fatto da tabelle di 5x4, perchè se nella struttura dati, ovvero nel record
aggiungo una variabile, la definizione di cui sopra perde significato.
Perde significato perchè i record sono composti da una tabella 5x4 e da una
variabile e quindi il db è composto da un insieme di record, ciascuno dei
quali contenente una tabella 5x4 e una variabile.
Tenevo a precisare questo non tanto per pignoleria quanto per una
correttezza di linguaggio (visto e considerato che la tendenza nel gruppo, a
quanto ho osservato è quella di un linguaggio corretto e preciso sotto i
vari punti di vista.).
Riguardo al discorso della didattica, non entro in merito, le tue
spiegazioni sono state precise e abbastanza chiare e su questo non ci sono
dubbi. Il punto è ben altro. E precisamente, che nel momento in cui si
spiega qualcosa bisogna mettersi allo stesso livello della persona che sta
apprendendo e spiegare il concetto sulla base non delle TUE conoscenze ma
delle sue, altrimenti si rischia che proprio a causa di una mancanza di
nozioni quello che spieghi seppur corretto, non venga ben percepito
dall'altra persona.
Certo questo è un lavoro più arduo e non certo fattibile in pochi minuti
come del resto hai anche detto, e condivido pienamente ciò.
Tuttavia, a parte la buona volontà di ciascuno, io sottolineo che sia più
corretto appunto, dare risposte semplici o non rispondere se non si ha nulla
di concreto da dire.
Il motivo di ciò è che, se una persona viene "attaccata" in modo violento da
un altra (prendo come spunto il tuo post, anche se fatto in buona fede) la
prima cosa che penserà è che coloro che sono in questo newsgroup si fanno
delle arie etc etc... e il pensiero non viene rivolto al singolo quanto a
tutti i frequentatori del gruppo, a causa del singolo interessato,
provocando cosi una sorta di danno all'immagine del gruppo, in quanto alla
persona stessa, nulla vieterebbe di sconsigliare ad altri il gruppo a
seguito di un episodio etc.
Questo è anche il motivo per cui ho detto che in generale è preferibile non
prestare attenzione a chi risponde con tono "polemico" proprio per evitare
il peggio, ma del  resto ciò non è nulla di nuovo, fa parte anche della
netiquette di internet ^_^
Con stima, Cooper.


 Cooper ^_^
Ciao Cooper, permettimi di dire anche la mia. Premetto che sono anni che 
leggo i NG e con i NG ho imparato a programmare. Solo ultimamente 
intervengo cercando di dare un contributo minimo di prima persona. 
Come ho letto il post originale anche io ho cercato di dare una risposta 
alla domanda, ma c'era quella parola Dreamweaver che mi complicava la 
vita ed alla fine ho annullato tutto. Sono rimasto colpito quando ho 
letto il post di lbo. Era la risposta che non ero stato in grado di dare. 
Lo spunto da cui partire per successive ricerche. Penso che per Marina 
quel post valga oro.
Ecco perche' intervengo: non capisco con che diritto ritieni che ci siano 
persone che ritengono i neofiti degli imbecilli. Non e' vero, bensi' e' 
vero che se sappiamo quello che sappiamo e' perche' tutti noi lavoriamo 
tutti i giorni nel settore e non possiamo tenere un corso approfondito di 
programmazione su un certo argomento. Possiamo offrire link e poco piu'. 
Tanto piu' che quello che e' stato chiesto si risolve, con un po' di 
pazienza, su it.comp.www.asp dove il buon Daniele Bochicchio ha scritto 
un enciclopedia negli anni. 
Una cosa e' certa: Marina dovra' cambiare impostazione mentale se vorra' 
raggiungere certi risultati. Altrimenti è difronte ad un problema isolato 
che lei non puo' risolvere. A lei la scelta, ma il consiglio che le e' 
stato fornito da lbo e' piu' che corretto.
Scusatemi se l'ho fatta lunga...
...........................................................
Ing. Francesco Pinzani
http://www.pinzani.it
:: Webmaster di ::
http://www.efirm.it
            - sito ufficiale Efirm srl
http://www.gewema.it
           - piu' di un editor online
http://www.sitoespresso.it
     - siti web a la carte e non
http://www.impiantigrafici.it
  - grafica gewema compatibile
...........................................................


Non sono totalmente d'accordo, ognuno ha il suo modo di apprendere e di
sviluppare le sue idee (fortuna che siamo tutti diversi e con un cervello
individuale).
Si può suggerire una soluzione ma non obbligare a seguire quella soluzione.
Ritengo anche io che il consiglio sia corretto, non ritengo però corretto i
termini con cui sia stato dato il consiglio ^_^ (Naturalmente, ihmo).
Cooper.


> prego.  č tutto chiaro?  ci tengo.
non proprio tutto, me le sto studiando.
ps: il ragů non lo sai fare e nemmeno insegnare.
ps: la tua č una polemica inutile. la gente apprende i miliardi di modi
diversi e partendo da miliardi di punti di partenza diversi. e nessun
maestro č mai morto per questo.

 Cooper ^_^
giusto. ma l'essere informe che mi ha risposto con tanta malagrazia ha detto
cose interessanti e utili per studiare un pò di programmazione. le rovina
solo perché ha un carattere di merda.
grazie per il consiglio, lo seguirò
marina


Di nulla,  se hai bisogno, in firma trovi tutto ciò che ti serve per
rintracciarmi, al di fuori del newsgroup :)
Cooper.


Con stima, Cooper.
altrettanto,
L.
-- 
dipende.

solo perché ha un carattere di merda.
è quasi un complimento... :-)
-- 
dipende.

maestro č mai morto per questo.
sě sě ciai ragione tu, contenta?
-- 
dipende.

 dipende.

>cmq, progredisco. anche se il codice è ancora pieno di errori. contento?
diciamo che dormo la notte.
-- 
dipende.