10 messaggi dal 13 novembre 2005
Ciao ragazzi è il mio primo post e mi presento: sono un ragazzo di 30 anni e vivo a Spoleto, lavoro in un'agenzia di servizi e comunicazione e in particolare mi occupo di webdesign e grafica in genere.
Non ho una grossa esperienza con l'asp ma ultimamente inizio a capirci qualcosa e il linguaggio mi sta appassionando sempre piu', altro che php!!!
Allora, ho realizzato riadattando delle vecchie pagine un sito web per un rivenditore di automobili con pannello di amministrazione privato, ogni auto in vendità ha vari campi per le caratteristiche e dati tecnici e 3 immagini, tutto in un database access: lo so, sarebbe meglio passare a mysql, ma lasciamo stare...
Le immagini non sono presenti fisicamente sul server web, ma sono caricate in binario: ho sentito che molti sconsigliano questo sistema ma lo script funziona bene e non posso cambiarlo, data anche l'esigua somma ricevuta per il lavoro, ho rifatto il sito in toto, invece doveva essere un semplice restyling grafico.
Il cliente ha voluto ben tre foto per ogni vettura inserita, ma prevedo che non sempre le avremo tutte, quindi pensavo che nel caso non ci fossero foto fosse il caso di inserire del codice per far caricare in automatico un'altra immagine, magari un jpeg con scritto "immagine non disponibile". Per il momentoin luogo delle foto mancanti inserisco nel database questa stessa immagine, ma vorrei scrivere uno script che appunto mi eviti l'inserimento di questa nel database, per non appesantirlo inutilmente.
Non vi posto l'intero script di upload, ma solo la pagina image.asp (una per ognuna delle 3 foto) che richiamata permette la visualizzazione delle foto ( <img src=""image.asp?ImageID=" & RS("ImageID") ....etc):

<!--#INCLUDE FILE="clsDatabase.asp"-->
<%
Dim objConn
Dim objRs
Dim objDB
Dim strSQL
Dim lngImageID

lngImageID = Request.QueryString("ImageID")

Set objConn = Server.CreateObject("ADODB.Connection")
Set objRs = Server.CreateObject("ADODB.Recordset")

Set objDB = New clsDatabase
objConn.Open objDB.ConnectionString
Set objDB = Nothing

strSQL = _
"SELECT " & _
"[ImageData] " & _
"FROM " & _
"[Images] " & _
"WHERE " & _
"[ImageID] = " & lngImageID

objRs.Open strSQL, objConn, 3, 3

If Not objRs.EOF Then
Response.BinaryWrite objRs(0)
Else
Response.Write "Image not found."
End If



objRs.Close

objConn.Close

Set objRs = Nothing
Set objConn = Nothing
%>

Suppongo che io debba intervenire nel codice evidenziato in grassetto dicendogli di caricare la jpg alternativa, ma attualmente in mancanza dell'immagine proveniente dal database viene solamente visualizzato il testo "alt" in luogo della jpg.
Avete qualche idea in proposito??? Vi ringrazio anticipatamente.

p.s. non sono solito fare crossposting, ma il cliente vuole tutto online al più presto e devo terminare il lavoro prima possibile, quindi ho postato il quesito anche su altri forum, perdonatemi.
2.410 messaggi dal 13 febbraio 2003
Contributi
"buribus" <buribus> ha scritto nel messaggio news:251119@...
Ciao ragazzi

ciao e benvenuto

[...]

Il cliente ha voluto ben tre foto per ogni vettura inserita, ma prevedo che
non sempre le avremo tutte, quindi pensavo che nel caso non ci fossero foto
fosse il caso di inserire del codice per far caricare in automatico un'altra immagine, magari un jpeg con scritto "immagine non disponibile". Per il momentoin luogo delle foto mancanti inserisco nel database questa stessa immagine, ma vorrei scrivere uno script che appunto mi eviti l'inserimento di questa nel database, per non appesantirlo inutilmente. Non vi posto l'intero script di upload, ma solo la pagina image.asp (una per ognuna delle 3 foto) che richiamata permette la visualizzazione delle foto ( <img src=""image.asp?ImageID=" & RS("ImageID") ....etc):

ti basta fare un controllo dell'immagine se è NULL (usa la funzione isNull) allora ritorni l'url del immagine non disponibile altrimenti ritorni l'immagine stessa
10 messaggi dal 13 novembre 2005
grazie grazie ora faccio una ricerca sulla funzione isNull che non conosco, ma dove devo richiamarla?? nella pagina vera e propria o in image.asp ??
2.410 messaggi dal 13 febbraio 2003
Contributi
"buribus" <buribus> ha scritto nel messaggio news:251134@...
grazie grazie ora faccio una ricerca sulla funzione isNull che non conosco,
ma dove devo richiamarla?? nella pagina vera e propria o in image.asp ??

da dove vuoi puoi mettere la funzione isnull nella query e usando la funzione iif fare il controllo oppure puoi metterlo nel codice
10 messaggi dal 13 novembre 2005
allora ho provato a inserire direttamente tale controllo nel file image.asp che permette di visualizzare l'immagine: ricordo che tale file viene richiamto così nell'altra pagina asp dove si deve effettivamente visualizzare l'immagine:

<%
Response.Write("<img class=""immaginedettagli""  src=""../adme/image.asp?ImageID=" & lngImageID & """ width=""267"" alt=""Immagine Vettura"" />")
%>


il codice nel file image.asp, in base hai tuoi consigli, l'ho cambiato così:
If Not isNull objRs.EOF Then
  Response.BinaryWrite objRs(0)
         Else
  response.write ("<img src=""immagine_nd.jpg""   border=""0"">")
End If


ma non cambia una cippa!!!!Ho messo l'immagine di rimpiazzo nella stessa cartella di image.asp per poter usare un collegamento assoluto.

ti ringrazio per l'aiuto ma non capisco dove sbaglio!!!
altrove non saprei come richiamare tale funzione

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.