Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Uppladdnning av bilder till databas

Postades av 2002-10-08 00:10:58 - Michael Renström, i forum asp - allmänt, Tråden har 5 Kommentarer och lästs av 641 personer

Hej

Har en bilduppladdningsgrej där jag laddar upp text och bild och förändrar storleken med AspImage. Jag skickar upp en bild så sparas bildens länk i databasen med ett tillägg _or samtidigt som det sparas två bilder på servern med ändelsen _or samt _th.
Jag har satt i databasen att bilder får ha samma filnamn vid uppladdning.

Sist jag laddade upp en bild så hade jag förmodligen samma namn på en bild som jag tidigare laddat upp och det innebar att en tidigare artikel fick samma bild som den senast uppladdade.

Hur löser jag det bäst?

Så här ser en del av koden ut som laddar upp bilden.

<%
If Err Then
Response.Write("<b>Wrong selection : </b>" & Err.description)
Else
For each file In mySmartUpload.Files
If not file.IsMissing Then
file.SaveAs("/web/Upload/" & file.FileName)
OrigFileName = file.FileName
Set Image = Server.CreateObject("AspImage.Image")Image.AutoClear=false
if Image.LoadImage (Server.MapPath ("/web/Upload/" & OrigFileName)) then
aspimage_OK = aspimage(1, 80, 230, 180, "_or.")
if aspimage_OK then
'---------Stor bild OK
aspimage_OK = aspimage(1, 80, 90, 70, "_th.")
End If
else
response.write "Kunde ej ladda upp fil!"
End If
End If
Next

if aspimage_OK then

'---------Liten bild OK
call insertidb(ChangedName, mySmartUpload.Form("MyText"), mySmartUpload.Form("MyTextArea"))
end if
End If
%>


Sen använder jag en includefil som sparar bilden xxx_or.jpg i databasen...


Nån som har ett tips hur jag skall göra för att undvika att bild som sparas skrivs över av annan, går det komplettera med id från databasen eller???


Svara

Sv: Uppladdnning av bilder till databas

Postades av 2002-10-08 13:55:04 - Ulf Elfving

Du kan ju istf _or och _th även lägga till datum/tid så att bilden får en unik datumstämpel tex:

"_or20021002135423"

Det fungerar om du inte laddar upp fler bilder än 1/sek

<code>
iYear = Year(sDate)
iMonth = Month(sDate)
iDay = Day(sDate)
iHour = Hour(sDate)
iMinute = Minute(sDate)
iSecond = Second(sDate)

str = str & iYear
str = str & Right("0" & iMonth,2)
str = str & Right("0" & iDay,2)
str = str & Right("0" & iHour,2)
str = str & Right("0" & iMinute,2)
str = str & Right("0" & iSecond,2)

str= "_or" & str

</code>


Svara

Sv: Uppladdnning av bilder till databas

Postades av 2002-10-08 16:27:57 - Michael Renström

Tack Uffe för inlägget skall titta på det...


Svara

Sv: Uppladdnning av bilder till databas

Postades av 2002-10-08 20:34:03 - Michael Renström

Vet ej hur jag skall få till det med datumet.

Laddar allltså upp bild till servern med AspSmartupload där AspImage tar hand om filen och sparar om den till en _or.jpg och en till _th.jpg.
Om jag råkar ladda upp en bild med samma namn som jag laddat upp tidigare ändras bilden på en gammal artikel till den senast uppladdade.
Frågan var alltså hur kan jag få med datumet när bilden sparas.

Här kommer först AspImagekoden som includeras i Upload-filen.

<%
Function aspimage (ImageFormat, JPEGQuality, NewWidthIfWide, NewHeightIfHigh, FileChangedName)

Dim OrigWidth, OrigHeight, Omv_faktor, NewWidth, NewHeight, lib

OrigWidth = Image.MaxX
OrigHeight = Image.MaxY
Omv_faktor = Round(OrigWidth/OrigHeight,2)

if OrigWidth > NewWidthIfWide then '---------Bild skall forminskas
if Omv_faktor >= 1 then '---------Liggande bild
NewWidth = NewWidthIfWide
NewHeight = Int(NewWidthIfWide/Omv_faktor)
else '---------Stående bild
NewHeight = NewHeightIfHigh
NewWidth = Int(Omv_faktor*NewHeightIfHigh)
end if
else
NewHeight = OrigHeight
NewWidth = OrigWidth
end if

Image.ResizeR NewWidth, NewHeight
Image.ImageFormat = ImageFormat
Image.JPEGQuality = JPEGQuality
ChangedName=Replace(OrigFileName, ".", FileChangedName)

ChangedName=Replace(ChangedName, ".bmp", ".jpg")
ChangedName=Replace(ChangedName, ".png", ".jpg")
ChangedName=Replace(ChangedName, ".tga", ".jpg")
ChangedName=Replace(ChangedName, ".pcx", ".jpg")

lib=request.servervariables ("APPL_PHYSICAL_PATH") & "web\bilder\" & ChangedName
Image.FileName = lib
if Image.SaveImage then '--------- Bild OK
%>

<p><img src="bilder/<%=ChangedName%>"><br> <font face="Verdana, Arial, Helvetica, sans-serif" size="2">BILD OK<br>
Nytt Filnamn = <%=Image.FileName%> Ny Bredd = <%=NewWidth%> Ny Höjd <%= NewHeight%><br>
<% aspimage=True
else
response.write "Fel vid sparande av fil!"
aspimage=False
end if

End Function
%>
</font>


Här är själva uploaden

<% Option explicit %>

<!-- #INCLUDE FILE="func_aspimage2.inc" -->
<!-- #INCLUDE FILE="sub_insertidb2.inc" -->
<!-- #INCLUDE FILE="sub_Show_ServerVariables.inc" -->
<HTML>
<BODY BGCOLOR="#FFFFFF">
</p>
<font face="Verdana, Arial, Helvetica, sans-serif" size="2">Aktuellt</font>
<HR>
<% aspimage_OK = true
Dim mySmartUpload,item, value, file, intCount, ChangedName
Dim Image, aspimage_OK, OrigFilePath, OrigFileName, Rubriken, Texten
Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload")
mySmartUpload.AllowedFilesList = "jpg,bmp,png,tga,pcx"
mySmartUpload.MaxFileSize = 1500000
mySmartUpload.Upload

If Err Then
Response.Write("<b>Wrong selection : </b>" & Err.description)
Else
For each file In mySmartUpload.Files
If not file.IsMissing Then
file.SaveAs("/web/Upload/" & file.FileName)
OrigFileName = file.FileName
Set Image = Server.CreateObject("AspImage.Image")
Image.AutoClear=false
if Image.LoadImage (Server.MapPath ("Upload/" & OrigFileName)) then
aspimage_OK = aspimage(1, 80, 400, 260, "_or.")
if aspimage_OK then '---------Stor bild OK
aspimage_OK = aspimage(1, 80, 175, 130, "_th.")

End If
else
response.write "Kunde ej ladda upp fil!"
End If
End If
Next


if aspimage_OK then '---------Liten bild OK
call insertidb(ChangedName, mySmartUpload.Form("MyText"), mySmartUpload.Form("MyTextArea"))
end if
End If
%>
</BODY>
</HTML>


Är det någon som har igång hjärnan hur jag skall kunna lägga till datum till varje bild vore jag väldigt tacksam, min har somnat


Svara

Sv: Uppladdnning av bilder till databas

Postades av 2002-10-08 22:21:46 - Ulf Elfving

Har aldrig jobbar med den kontrollen, men vad betyder denna rad:

aspimage_OK = aspimage(1, 80, 175, 130, "_th.")

Vad är "_th." (och "_or.") för något?
Om man laddar upp en bild (bilden.jpg) byts då namnen som sparas till bilden_th.jpg och bilden_or.jpg ?

Om det är så så borde det funka om du skapar din str variabel innan du kör din aspimage funktion

<code>
iYear = Year(sDate)
iMonth = Month(sDate)
iDay = Day(sDate)
iHour = Hour(sDate)
iMinute = Minute(sDate)
iSecond = Second(sDate)

str = str & iYear
str = str & Right("0" & iMonth,2)
str = str & Right("0" & iDay,2)
str = str & Right("0" & iHour,2)
str = str & Right("0" & iMinute,2)
str = str & Right("0" & iSecond,2)

' skapa två filpåbyggnader (om mitt antagande ovan stämmer)
str_or= "_or" & str & "." ' skall vara tex: "_or200210082159."
str_th= "_or" & str & "."


'*********
' här kommer din kod (som jag "klippt bort"

' här kommer ditt avsnitt ned aspimage-funktionen

if Image.LoadImage (Server.MapPath ("Upload/" & OrigFileName)) then
aspimage_OK = aspimage(1, 80, 400, 260, str_or) ' Sätt in str_or variablen istf "_or."
if aspimage_OK then
aspimage_OK = aspimage(1, 80, 175, 130, str_th) ' Sätt in str_th variablen istf "_th."
End If
else
response.write "Kunde ej ladda upp fil!"
End If

' Hör fortsätter din kod
</code>

Hoppas jag förstått hur din kompnent funkar annars kanske du hajjar hur du skall modifuera i alla fall
/U


Svara

Sv: Uppladdnning av bilder till databas

Postades av 2002-10-14 22:22:57 - Michael Renström

Tack Uffe för inlägget.

Tyvärr har svaret dröjt från mig på grund av sabbad hårddisk.

Du frågade om vad detta betydde.
aspimage_OK = aspimage(1, 80, 175, 130, "_th.")

1 = jpg
80 = kvalite på bilden som skapas
175 = max bredd
130 = max höjd
_th = sparar alltså en tumnagel i mitt bildbibliotek

Motsvarande med tillägget _or. skapar alltså en större bild i samma mapp. Precis som du trodde laddar jag upp en bild som i sin tur görs om och sparas i två olika storlekar.

Har försökt lägga in koden du föreslog men får bara att sidan inte kan visas. Försökte även att göra en inc-fil av den med då kom följande felmeddelande.
sDate not defined eller liknande.

Skall testa lite mer nu när jag fått igång grejorna. Kanske har du eller någon annan nåt fler tips att komma med?


Svara

Nyligen

  • 08:28 Butiksskyltar: Hur upplever utbude
  • 22:31 Slappna av
  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 812
27 960
271 761
5 665
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies