- Home
- Categorie
- Coding e Sistemistica
- Altri linguaggi per il web
- Visualizzare pagine diverse in base ad una tipologia diversa
-
Visualizzare pagine diverse in base ad una tipologia diversa
Ciao a tutti,
ho un piccolo script in asp dove visualizzo tutti i nominativi in rubrica.
Esistono 5 diverse tipologie:- amici
- parenti
3..
Il View contatto è diverso in base alla tipologia scelta.
Nel momento in cui effettuo una ricerca completa vorrei che in base alla tipologia mi si apra la pagina ad hoc.
Ad esempio:
Tipologia amico: paginaamico.asp
Tiopologia parente: paginaparente.aspCredo che con un If and Else si possa fare ma non ho assolutamente idea da dove partire!!
Il Db è in Mysql.
PS: sono un principiante!!
Grazie Mille a tutti coloro che mi aiuteranno.
-
Ciao Leftist, per la scelta della Pagina ti consiglio l'istruzione "Select Case".
Qui un esempio: http://www.w3schools.com/vbscript/showasp.asp?filename=demo_vb_selectcase
Buon lavoro!
-
Grazie per la risposta artcava.
Il problema in qualche modo l'ho risolto (scopiazzando e con qualche consiglio), ovvero richiamo il progressivo (id):
<a href="veditutto.asp?progressivo=<%=rs("progressivo ")%>&Tipo_Contatto=<%=rs("tipologia")%>">
<img border="0" src="vedi.png" alt="Mostra scheda <%=sContatto%>"></a>Richiamo la pagina veditutto.asp:
con un semplice: <% if rs("tipologia") = "Amico" then %> nel caso fosse un amico.
E nel caso fosse un Parente: <% else if rs("tipologia") = "Parente" then %>
<% end if %> <% end if %>**Problema risolto in questo caso ma se volessi in qualche modo farlo a monte?
**
Ovvero ho una pagina di ricerca con 4 campi:- Amici
- Parenti
- Conoscenti
- Altro
Se inserisco qualcosa in uno dei campi di ricerca l'action del form mi riporta in un'altra pagina unica: paginaunica.asp
Richiamo la tabella e i campi:
<!--#include file="conn.asp" -->
<%
Response.Expires = -20000 'Makes the browser not cache this page
Response.Buffer = True 'Buffers the content so our Response.Redirect will work
if cognome = "Amici" then
end ifif legame = "Parenti" then
end ifif altro = "Conoscenti" then
end ifif altro2 = "Altro" then
end if
tipologia=request("tipologia")
titolo=request("titolo")
cognome=request("cognome")
nome=request("nome")
legame=request("legame")
..........................................
.............................................Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "Driver={MySQL ODBC 3.51 Driver};SERVER=xxxxx;Database=xxxx;port=xxxx;UID=x xxx;PWD=xxxx;"
Sql = "SELECT * from anagrafica where tipologia like '"&tipologia&"%' and titolo like '"&titolo&"%' and cognome like '"&cognome&"%' and nome like '%"&nome&"%' and legame like '"&legame&"%' .................................................. order by cognome "
set rs=conn.execute(Sql)
%>Richiamando la tipologia con un semplice if: <% if rs("tipologia") = "Amici" then %> visualizzo i risultati MA e credimi sono 3 giorni che impazzisco, se inserisco ad esempio un cognome che non è in tabella il risultato è una pagina bianca. Identico problema se non inserisco nulla nei campi di ricerca
Ti e vi prego: Help me please!!
-
Scusa, ma non riesco a rimettere i pezzi assieme.
La pagina che va in errore "pagina bianca" è paginaunica.asp?A cosa servono:
if cognome = "Amici" then end if if legame = "Parenti" then end if if altro = "Conoscenti" then end if if altro2 = "Altro" then end if
-
Ciao,
a nulla hai ragione, sono un refuso.La pagina bianca è paginaunica.asp - solo quando non trovo il corrispettivo.
-
Prova a farti stampare la variabile Sql prima di chiamare la execute, probabilmente c'è qcs che non va nello script di esecuzione
-
Se ho capito bene (scusami non sono un esperto), levo la stringa set rs=conn.execute(Sql)?
Se si, pagina bianca anche quando c'è il corrispettivo.
Grazie
-
Ok, leva la stringa ma fai un
Response.Write(Sql)
Per vedere cosa c'è nello script
-
Buongiorno artcava,
sorry ma ieri sera non riuscivo più a collegarmi.Risultato pagina bianca.
Non sò se può essere utile ma nell'url della paginaunica.asp: ../paginaunica.asp?cognome=&nome=&legame=&submit=CercaAncora grazie
-
Ok, ma a parte la pagina bianca, cosa c'è scritto nello script "Sql"?
-
Sql = "SELECT * from anagrafica where tipologia like '"&tipologia&"%' and titolo like '"&titolo&"%' and cognome like '"&cognome&"%' and nome like '%"&nome&"%' and legame like '"&legame&"%' .................................................. order by cognome "
set rs=conn.execute(Sql)
-
La cosa più assurda è che sposto <% if rs("tipologia") = "Amici" then %> a fine tabella Amici mi dà come risultato 0 record nel caso avessi fatto una ricerca errata (cognome non presente), ma ora non mi distingue più le tabelle. In pratica ora visualizzo solo la tabella amici
Why??
-
Fatti stampare sull apagina lo script
Response.Write(Sql)
-
Ciao e grazie ancora per la risposta.
Ho inserito Response.Write(Sql) all'interno della pagina, forse sbaglio qualcosa, ma non mi esce nulla
Non ti sò dire dove sbaglio.Solo un input, ma non è che sbaglio l'istruzione if? Anche perchè cmq la query funziona, ma solo se il record esiste. Forse e sottolineo mi manca qualche dichiarazione
Credimi ma ci stò sbattendo come un matto
x
x:x
-
@leftist1973 said:
Ho inserito Response.Write(Sql) all'interno della pagina, forse sbaglio qualcosa, ma non mi esce nulla
Guarda nel codice html della pagina, da qualche parte, forse in testa, c'è stampata la query, verifica che sia corretta anche quando il record non esiste...
-
Ciao la query funziona correttamente:
Sql = "SELECT * from anagrafica where tipologia like '"&tipologia&"%' and titolo like '"&titolo&"%' and cognome like '"&cognome&"%' and nome like '%"&nome&"%' and legame like '"&legame&"%' .................................................. order by cognome "set rs=conn.execute(Sql)
Nella pagina unica se, ad esempio, inserisco l'if tipologia Amici a fine tabella visualizzo la pagina con 0 record nel caso il cognome manca (ergo che la quesry funziona), il problema ora è che se cerco nome parente mi posta sempre e solo la prima tabella ovvero amici
E' come se non riuscissi a far bloccare il primo if e far partire l'else if. bhoooo
-
Forse e sottolineo forse ho capito dove mi vuoi portare.
In effetti inserendo anche un else respose.rendirect se il record non esiste mi compare cmq una pagina bianca.
L'url mi incastra la ricerca (bho cosi penso) ...Rubrica/paginaunica.asp?cognome=cavolo&nome=&legame=&submit=CercaA questo punto credo che sia come dici tu, ma non capisco come verificare e nel caso modificare la query.
Per carità non voglio che tu me la faccia ma almeno un input su dove documentarmi o al massimo un suggerimento ...Ancora grazie e scusami se rompo continuamente.
-
Risolto!!
Ciao e grazie comunque!!
-
Bene, buon proseguimento