Podmiana danych w oknie typu input file

0

Witam serdecznie.
Zwykle probuje rozwiazac sam problemy zwiazane z pisaniem stron.
Troszke googlowania i zwykle sie wszystko znajduje, ale na to
pytanie <ort>niepotrafilem </ort>znalezc odpowiedzi.
Oto moj problem ...

Na stronie chcialem zrobic wysylanie obrazkow, ale tak zeby
podczas wysylania <ort>niebylo </ort>zadnego <ort>odswierzania </ort>calej strony wiec
zrobilem tak , ze w podstawowym skrypcie umiescilem ramke :

echo "<iframe name='adm_tekst_ramka' marginwidth='0' marginheight='0' align='top' border='0' "
	."frameborder='0' width='1' height='1' src='adm_tekst_now_ram.php' scrolling='no'></iframe>";
	
echo "<table class='ramkagoradol' style='border-color:#878787' border='0' cellpadding='0' cellspacing='0' width='100%'"
	." height='25' background='style/podklad_duzy.png'><tr>";
echo "<form  name='upload' method='POST' enctype='multipart/form-data' action='$powrot_ram' target='adm_tekst_ramka'><td>";
wersjapa('Obrazki','Images');
echo "<br>&nbsp;$temp";

echo "&nbsp;<input class='poletxt' type='file' name='file' size='41' style=\"background-image: url('style/podklad_form.png');\">";
wersjapa('&nbsp;&nbsp;Wyślij obrazek&nbsp;&nbsp;','&nbsp;&nbsp;Wyślij obrazek&nbsp;&nbsp;');
echo "&nbsp;<input name ='wyslij_file' class='submit' type='submit' value=' $temp ' "
		."style=\"background-image: url('style/podklad_form_submit.png'); height:18\"><br>";
wersjapa("Maxymalny dopuszczalny rozmiar okładek to X-$maxXavatar , Y-$maxYavatar px",
				"Maxymalny dopuszczalny rozmiar okładek to X-$maxXavatar , Y-$maxYavatar px");
echo "<img border='0' src='style/npunkt4.gif'><br>&nbsp;$temp";
echo "</form>";

echo "</td></tr></table><br>";

To ta w pierwszej czesci kodu.
Dalej jak widac jest zwykly formularz do wysylania obrazkow.
W ramce sprawdzam w php parametry przeslanego obrazka i jesli
jest wszystko ok to zapisuje link z nowa nadana nazwa obrazka w bazie
i w odpowiednim folderze na serwerze.

Na koniec chcialbym skasowac pole input ze <ort>scierzka </ort>do pliku na dysku
wiec umiescilem w kodzie cos takiego :

echo "<script language=\"JavaScript\">
         <!--
         with(parent.document.upload.file){focus('cos tam');value='';}
         //-->
        </script>";

Teoretycznie i praktycznie w innego typu formularzach spowoduje to wyczyszczenie
jego zawartosci, ale w tego typu formularzu <ort>niechce </ort>sie to zrobic.
Nigdzie sie <ort>niegeneruje </ort>zaden blad na stronie wiec skrypt jest wykonywany
prawidlowo.

Jak moge wyczyscic ten formularz w <ort>java </ort>?

0

chwila zabawy w piaskownicy w3schools i proszę bardzo:

<html>
<body>

<form name="input" action="form_action.asp" method="get">
<input type="file" id="wrr" />
<input type="submit" value="Submit" />
<input type="button" value="clear" onclick="document.getElementById('wrr').value='';"/>
</form>

<p>Click the "Submit" button and the input will be sent to a page on the server called "form_action.asp".</p>

</body>
</html>
0

Ze względów bezpieczeństwa, nie da się podmieniać zawartości inputów typu file. Po prostu usuń stary element i dodaj nowy z takimi samymi parametrami. Najwidoczniej niektóre (może nawet wszystkie ? ) przeglądarki pozwalają wyczyścić taki input. Jednak dla pewności polecałbym podmianę całego elementu.

0

Sprawdziłem, FF3 obsługuje to ale IE7 nie.

Względy bezpieczeństwa? Coś w stylu user wybiera plik plik, klika OK, jakiś wredny JS zmienia ścieżkę na jakiś plik z hasłami i serwer dostaje ważny plik?

Ej, a może

<input type="reset" />

?

0

Zwykle jak pisze strony probuje napisac je tak zeby
dzialaly w taki sam sposob w FF, IE ktorej uzywam i Operze.
Zazwyczaj opere juz pomijam i testuje tylko sam wyglad bo
praktycznie dziala tak samo jak IE, ale FF nieraz przyprawia
mnie o mdlosci. W kazdym razie chcialbym zeby dzialalo
to pod wszystkimi przegladarkami. Typowo pisze i sprawdzam
pod IE. Zreszta w niej wygladaja strony najladniej.

Moge w ostatecznosci podmienic caly element, ale idzie
o to, ze w tym samym formularzu bede chcial dac mozliwosc
wyslania kilku obrazkow wiec jesli zostanie wyslany obrazek
prawidlowo to wypadaloby zawartosc formularza wyczycscic.

Jak to wyglada w praktyce to tylko na dzisiaj do jutra rana
zdejme zabezpieczenia ze skryptu :
www. emulek.com.pl/emulek/adm_tekst_now.php

Zami zobaczcie. Zostaje i w zaden sposob nie moge w IE
zmusic formularza do tego zeby skasowac jego zawartosc.
Problem mam tylko w typie file. W innych typach zadna sprawa.

1 użytkowników online, w tym zalogowanych: 0, gości: 1