Newsgroup: it.comp.www.asp
Titolo: Mi spiegate la differenza?

Salve
per la prima volta sto lavorando a un progetto in cui collaborano piu'
sviluppatori.
Succede che mi sono abituato a lavorare con le sintassi e con gli oggetti
che ho conosciuto grazie a voi, al sito comune, a libri che ho acquistato e
ad altri siti che visito spesso anche solo per confrontare gli approcci a
certe problematiche.
Quindi mentre io mi creo gli oggetti ADODB Connection e Recordset, uso
request.Querystring per i parametri passati nelle URL e
request.form("qualcosa") per i valori passati da una form, qualche mio
collega non usa il Recordset e si riferisce ai valori provenienti da una
pagina semplicemente con request.
Ripeto, si tratta principalmente di abitudini, ma a me, ovviamente :-D, pare
piu' leggibile il mio codice.
Quale sistema e' preferibile? Rispetto al mio modo di lavorare perdo
qualcosa in termini, che so', di prestazioni ed e' quindi preferibile che mi
adegui agli altri?
Attendo vs commenti
Claudio

Nessuna differenza di prestazioni, si tratta semplicemente di usare quelli
che sono le proprieta' di 'default' di un oggetto.
Quando ti riferisci a Request.form("nome") specifichi completamente
l'oggetto, puoi fare lo stesso con Request("Nome"), perche' e' sottinteso
che vai a prenderlo da "form".
Pero' e' sconsigliabile l'uso di diversi 'stili' in un solo progetto perche'
rende il codice piu' confuso e di difficile manutenzione. Consiglio: fate
una bella riunione e mettetevi daccordo sulla nomenclatura e sul modo di
scrivere (anche su banalita' come l'indentazione del codice), il risultato
sara' qualitativamente migliore e piu' gestibile.
Davide

Molto meglio Request.Form("Nome")!
Esempio: una pagina ASP che richiama se stessa può essere stata invocata da
una form (esempio: gli passa "Utente"), ma chiama se stessa attraverso dei
link ("nomepagina.asp?Utente=xxx&Codice=zzz&Valore=vvv").
Allora avresti bisogno di questo codice:
<%
Dim Utente
Utente = Request.Form("Nome") 'Caso della pagina chiamata dalla form
If Utente="" Then Utente = Resuest.QueryString("Utente") 'Caso della pagina
chiamata da un link
[...]
%>
--
Posted from 
proxy2.tdnet.it
 [195.250.24.131]
via Mailgate.ORG Server - 
http://www.mailgate.org

 %>
Che e' piu' o meno quello che ho fatto notare al mio collega. Con stupore ho
appurato che ha seguito un (suo) metodo di apprendimento circa 2 anni fa per
cui non sapeva che con Request mi posso riferire a una QueryString, al
valore inviato da una Form, ecc. ecc. In verita' non ha ancora ben chiaro
nemmeno lo scopo del global.asa pero' ognuno segue i suoi sistemi, spesso
guidati da situazioni contingenti, e quindi non giudico o critico nessuno
anche perche' poi e' bravissimo ad architettare delle cose stupende con
l'sql. Anche in questo siamo differenti... io tendo a semplificare (alcuni
direbbero normalizzare) mentre lui cerca sempre il meccanismo piu'
"evoluto".
Quello che pero' ancora non ho capito e' il perche' e' disponibile l'oggetto
ADODB.Recordset se posso benissimo ottenere un recordset con l'execute di
una stringa sql (io ho sempre creato un'istanza dell'oggetto recordset e poi
usato la sintassi canonica objrecordset.open stringa_sql, objconnection).
Il chiarimento di questo dubbio non e' certo vitale ma mi piacerebbe saperne
di piu'.
Claudio

 wrote in message
10m9nu7$r78$1...@fe2.cs.interbusiness.it...

Per il request, come da risposte precedenti
Per il recordset ecco i due casi, se è questo a cui ti riferisci:
1)
Dim rs 'Variabile variant
 Set rs=Server.CreateObject("ADODB.recordset") ' puntatore variant (void) a
un oggetto inizializzato
Set rs=Conn.execute "qualcosa" ' puntatore variant (void)  al precedente
oggetto modificato dal comando "qualcosa"
2)
Dim rs 'Variabile variant
Set rs=Conn.execute "qualcosa" ' puntatore variant (void)  all' oggetto
risultato del comando "qualcosa"