GgrimmyMedlem sedan okt. 200118 inlägg Tackar så mycket allihopa.
Nu har jag fått mycket hjälp på traven. Och faktiskt löst problemet...
Det blir troligen javascript som jag fått ett bra exempel på men skall gärna prova att styra submitten som solbulle sa...
Nån som har nåt enkelt kodexempel för det sista exemplet?
/Glad Grimmy
CCoolDudeMedlem sedan aug. 2000304 inlägg Ah... Stopp nu lite hära. :stud
(Jag har nu kommit hem å kan i lugn och ro fundera lite.)
Java är inte nödvändigt.
Du kan submitta med värdena till en ny sida "hamta_bild.asp"
Där lägger du in de värden från de "formar" som användaren skrivit en massa text i, i gömda formar.
<input name="bildtext" type="hidden" value="<%=Request.Form("bildtext") %>">
Låter användaren leta bild som han sedan subittar till din "spara.asp" sida.
Och där fyller du i formarna med värdet från formarna från första, via andra sidan.
Om du vill kan du låta första och sista sidan vara "samma" sida.
Finns det inget värde att läsa in i en form så kan du altid låta den få ett Default värde.
GgrimmyMedlem sedan okt. 200118 inlägg Cooldude:
Din idé är helt klar för mig, men går inte att genomföra utan java vad jag förstår. Förklara annars för mig hur sidan med ETT formulär skall veta om den skall submittas till hämtabildsidan eller sparasidan? Låter jag tjatig? :)
/Grimmy
GgrimmyMedlem sedan okt. 200118 inlägg Oki... tack för hjälpen alla... (speciellt locutus) här kommer lösningen jag fick och som jag tänkte använda. Någon annan kanske har samma problem.
Jag har i exemplet tre sidor
Form.asp - för formuläret
Adda.asp - för att hämta filer
Sparapost.asp - för att spara posten när man väl är klar.. (Denna sida är ej med för det vet ni redan hur man gör :) )
Denna kod bör ligga med i både formulärsidan (form.asp) och adda.asp-sidan
<script language="JavaScript">
var remote;
function OpenFile(field) {function OpenFile(field) {
remote = window.open("","filhanterare","width=640,height=500, scrollbars,left=250,screenX=250,top=200,screenY=200");
remote.location.href = "/test/adda.asp";
remote.focus();
}
<script>
Här är formulärsidans (form.asp) övriga kod. Observera att formulärnamnet måste matcha js fuktionen
<form name="media" method="post" action="/test/sparapost.asp">
<a href="javascript:OpenFile('src');">Välj bild från lista</a> <br>
<INPUT TYPE="text" NAME="src" VALUE="välj filnamn" size="75" >
</form>
Här är fil/bildhämtningssidans kod (adda.asp). Observera att javascriptfunktionen bör finnas med även här vad jag förstår. Sen för att förenkla har jag bara gjort EN länk.
<a href="javascript:opener.FileInsert('sökväg','src')">Lägg
in data i fältet</a>
Klart!
:birp
/Grimmy
GgrimmyMedlem sedan okt. 200118 inlägg Åh fn.. i javascriptet bör följande kod (funktion) också finnas med... :)
function FileInsert(path,field) {
if(field == "src")
document.media.src.value = path;
remote.close();
Sorry :)
CCoolDudeMedlem sedan aug. 2000304 inlägg *morr*
Ja ja så går det bara för att man åker ner te Stockholm över dagen för att leta elfel.
Kör med Java då, gör det ni bara, fast det inte behövs.... (bitter) :D
Jag skall bara sova en stund nu å jobba imorron med så skall jag fixa lite kåd så även Grimmy fattar.... (Tror jag, trött nu då jag klev upp 04:20.....)
/i morgon fixar vi detta med ASP.
SsolbulleMedlem sedan mars 20015 287 inlägg Helt klart kan man göra det i endast asp, men vad är felet med javascript?
CCoolDudeMedlem sedan aug. 2000304 inlägg Inget!
Bara det att jag fick ett mess via ICQn från Grimmy som trodde att jag missuppfattat något.
LlocutusMedlem sedan okt. 20024 inlägg Grimmy:
Istället för
if(field == "src")
document.media.src.value = path;
så tror jag att man ska använda sig av eval( )
det torde blir något liknande detta
eval('document.media.'+field+'.value='+path')
LlocutusMedlem sedan okt. 20024 inlägg Rättar mig själv. Det blir:
eval("document.media."+field+".value = '"+path+"'");
Tar man det ett steg till så kan man ju skicka med formulärnamnet till funktionen så att det blir:
eval("document."+formname+"."+field+".value = '"+path+"'");
@ndersMedlem sedan juni 200032 967 inlägg
locutus skrev:
Tar man det ett steg till så kan man ju skicka med formulärnamnet till funktionen så att det blir:
eval("document."+media+"."+field+".value = '"+path+"'");
Man borde ju kunna göra det utan eval också (och i så fall blir det lite snyggare imho):
document.forms[formname].elements[fieldname].value = path;
Om man då utgår från att formname och fieldname läggs till i funktionens interface. Nu är jag ju iofs ingen kung på javascript, och det här är ganska mycket överkurs. ;)
Mvh,
GgrimmyMedlem sedan okt. 200118 inlägg Känns som överkurs :) men tack för tipsen :)
Det fungerar jättebra redan nu... :)
Får jag lite tid över skall jag plugga på lite på JS... Synd att inte allt går att lösa med ETT och samma språk...:)
/Grimmy
CCoolDudeMedlem sedan aug. 2000304 inlägg Ohlla!
Pillat med ETT å samma språk. (nästan, std html å lite asp.)
Två sidor allt som behövs.
Här är Hämtafilens script:
<head>
<title>Hämta Bild</title>
</head>
<body>
<form method="POST" action="spara.asp">
<p><input type="text" name="namn" size="20">
Namn<br>
<input type="text" name="omrade" size="20">
Område<br>
<input type="text" name="text" size="20">
Bildtext<br>
<input type="file" name="File" size="20"><br>
<input type="submit" value="Submit" name="B1"><input type="reset" value="Reset" name="B2"></p>
</form>
</body>
Och "Spara" filens kod:
<head>
<title>Spara</title>
</head>
<body>
<%
name=Request.form("namn")
area=Request.Form("omrade")
Text=Request.Form("text")
Picture=Request.Form("file")
Response.Write name & "<br>"
Response.Write area & "<br>"
Response.Write text & "<br>"
Response.Write picture & "<br><br><br>"
%>
<p>
<img border="0" src="<%= picture %>" ></p>
</body>
Som ni ser så sparar inte spara filen något, den bara visar de värden som finns i formarna, samt visar den bild man hämtat.
Nu finns det det säkert de som klagar på att man kan bifoga vilken fil som helst med scriptet, men det var inte fråga om att begränsa det till bildfiler.
Saken var juh att värdena på formarna försvann vid hämta bild.
Tyvärr kan jag inte ordna nån fin "preview". Men har provat lokalt å det fonkar.
Gör vad ni vill me skräpet.
GgrimmyMedlem sedan okt. 200118 inlägg Cooldude:
Missupfattat allt som vanligt.... (tack och lov har jag löst problemet med java ) :) :) :)
Du skall alltså gå från..
Sidan1 (form)
...till sidan 2 (hämta fil) (FRÅN SERVER!)
...tillbaka till sidan 1 (För att visa vilken fil du hämtat OCH utan att tappa värdena du redan skrivit i de andra fälten på sid 1).
...sedan från sidan 1 till sidan 3 för att spara posten.
Comprende? :P
/El grimmy
@ndersMedlem sedan juni 200032 967 inlägg
grimmy skrev:
tack och lov har jag löst problemet med java
Menar du javascript? Det är en stor skillnad. :)
GgrimmyMedlem sedan okt. 200118 inlägg Naturligtvis...
Jag ber hemskt mycket om ursäkt för mitt slarviga uttalande :)
@ndersMedlem sedan juni 200032 967 inläggDu är förlåten mot löfte att aldrig göra samma misstag igen. ;)
Mvh,