Jag har en sida som ska visa nyheter och detta görs med ett formulär som skickar upp allt till databas och sen en sida som visar nyheterna..detta funkar ok men skulle vilja kunna bläddra efter bild direkt i formuläret via ett knapptryck "bläddra" efter bild som sen hamnar där jag har markören i formen. Så man ska kunna lägga till bild efter eller innan text där det passar. (idag använder jag mig av en funktion som byter ut text mot bild tex: bild1 är 1.jpg men vill kunna "browsa" efter bild direkt till formen=enklare!)
Har frågat på ett annat forum men detta verkar vara en svår funktion?!
En del online-webeditorer har ju detta men kan inte utläsa från dess kod hur detta ska göras.
Kan någon svara på denna enligt mig svåra fråga?
Jag fattar inte riktigt heller men jag tror att det du är ute efter är en upload. Kolla på ditt webhotell om det finns en sådan 3e-part komponent installerad, dom är rätt lägga att använda. Många har t.ex denna http://www.aspupload.com/.
Skillnaden är inte så stor mot ett vanligt webformulär. I form-taggen måste följande finnas ... ENCTYPE="multipart/form-data"
<form method="post" action="upload.asp" ENCTYPE="multipart/form-data">
Bilden hämtar med form-objektet FILE
<INPUT TYPE=FILE NAME="THEFILE" />
upload.asp ska vara en separat fil med f.ex följande kod för Persits
Set Upload = Server.CreateObject("Persits.Upload")
Upload.SetMaxSize 100000, True
Upload.OverwriteFiles = False
Upload.Save sPath
Set File = Upload.Files("THEFILE")
If Not File Is Nothing Then
'Spara i databasen med bild
Else
'Spara i databasen utan bild
End If
Set File = Nothing
Set Upload = Nothing
För att få tag på övriga form-värden så används i stället för Request.Form("Fältnamn") -> Upload.Form("Fältnamn")
Det finns bra exempel som du kan ladda hem hos tillverkaren av aktuell komponenten.
Du kan också bygga din egen upload med ASP, har gjort det för länge sedan men minns tyvärr inte hur.
Nu fattar jag. Du befinner dig i en rich edit och vill att bilden ska hamna vid markören.
Då kan du använda javascript.
Ex.
Om du har en iframe med namnet MinIFrame
var theImg = "minbild.gif";
function InsertImage(theImg){
var nPadding = 2;
var sHTMLStr = "<img vspace=\"" + nPadding + "\" hspace=\"" + nPadding + "\" src=\"<%=sPath%>" + theImg + "\" />";
MinIFrame.focus();
var cursor = MinIFrame.document.selection.createRange();
cursor.pasteHTML(sHTMLStr);
}
sPath är sökvägen till bilden på servern som du enklast får fram med
Server.MapPath("..\") & "\bildmapp\"
Ovanstående tror jag dock bara funkar i Internet Explorer. Håller själv på med en Rich edit till Firefox men har inte kommit så långt.
Exakt PG....så menar jag..ska testa detta och se om det funkar...annars återkommer jag. Upload har jag redan men bilden ska ju hamna där marören är i formen med text...det var problemet.
Hur kombinerar jag upload med ditt exempel till formen?
Hur man gör i ditt fall vet jag inte riktigt. Problemet blir att efter upload så laddas sidan med formuläret om och då försvinner informationen om cursor position i iframe, men det går säkert att lösa om man labbar sig fram. Själv öppnat jag ett nytt fönster för bildhanteringen och använder följande för att infoga i iframe....
sPath beskrev jag tidigare och sIframeName är så klart ditt namn på aktuell iframe.
theForm.padd.value och theForm.orient.value är val man har i formuläret för marginal och orientering
Jag måste bara spåna lite till....
Jag antar att du använder någon form av Rich Edit och inte bara "vanlig" textarea? Själv använder jag en iframe som anropar en fil loadtext.asp där texten hämtas från databasen. Om det går att använda Rich Edit i en textarea vet jag inte, någon som provat?
Har nu hört att det går att göra det jag vill i en vanlig textarea. Så om jag har en textarea och en browseknapp under. Jag browsar efter bild på hårddisken...klickar ladda upp och sen kommer där kod i textarean som säger tex <img src="bil.jpg"></img>. (detta motsvarar då bilden som precis blev uppladdad) Idag kan jag göra detta med tex att stoppa in <b> tagg för bold text vid knapptryck. Men kan någon göra samma med bild?
Om det är detta du menar PG vet jag inte..har du någon sida som exempel där jag kan se hur du menar?
Så länge du inte vill ha in själva "bilden" i textformuläret så är det möjligt...
Om du trycker på upload så får du se till så att nyheten inte sparas när sidan laddas om och skriva in all data igen i formuläret. Innan du skickar kan du också kontrollera vart markören står med hjälp av javascript och infoga i ett hidden-fält. När du laddat upp bilden infogar du bara din text-hänvisning till bilden där markören stod med hjälp av data från ditt förra formulär... Innan du sparar nyheten byter du ut din bild-hänvisning mot en <img>-tag. Eller efteråt, det krävs bara lite tänk och planering innan man sätter sig ner och kodar...
Nej, själva bilden skulle inte in i textarean....bara taggarna med bildens hela namn+filändelse.
Har någon ett fungerande exempel på detta? För detta är inget jag klarar på egen hand..
Kan du inte göra det lätt för dig och ha en bild/sida som ligger top-höger orienterad. Vid upload spara i så fall bildens URL i databasen i t.ex sImageURL. Sedan skriver du ut sidan så här
Response.Write "<p>"
If RS("sImageURL") <> "" Then
Response.Write "<img src=""" & sPath & RS("sURL") & """ border=""0"" align=""right"" valign=""top"" vspace=""2"" hspace=""2"" />"
End If
Response.Write RS("sText")
Response.Write "</p>"
Om jag väljer att göra på detta sätt, kommer jag att kunna använda detta även om jag har en form för redigering av befintlig nyhet? Alltså en form som innehåller en redan beintlig text och bilder. Går detta att kombinera då?
Jag kommer inte på någon speciell sida för info. Men prova att söka på typ +example+rich+edit
Sedan måste man som sagt anpassa koden för IE och Mozilla. http://www.mozilla.org/editor/midas-spec.html
/PG
267 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25