Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Otwarcie obrazka
Forum PHP.pl > Forum > Przedszkole
Kamil9132
Witam
Jak zrobić otwarcie obrazka przy formularza ?
Chodzi mi o to ,że jak ktoś doda plik w formularzu to on od razu się otworzy ,bez wcześniejszego zapisywania na serwer.
ylk
Gdzie się otworzy? Jak się otworzy? OCB?
Kamil9132
Chodzi mi o to żeby otworzył się pod polem formularza.
ylk
Kombinuj pobierając value inputa z plikiem, jeśli jest tam zapisana ścieżka absolutna do pliku możesz wyświetlić obrazek pod formularzem.
Kamil9132
,a mógłbyś podać jakiś przykład ,bo nie wiem jak to zrobić
konole
jQuery, JavaScript

Kod
<script>file = $('#input-img').val();
$('#image').attr('src', file);</script>

<input type="file" id="input-img" name="image">
<img src="" id="image">


To tak w skrócie. Nie licz, że to zadziała, bo trzeba jQuery załadować do dokumentu i zapewne gdzieś błąd popełniłem w skrypcie (+ nie uwzględniłem, czy został wybrany plik, czy to obrazek, czy nie itd.).
desperat666
Cytat(ylk @ 20.03.2011, 14:52:59 ) *
Kombinuj pobierając value inputa z plikiem, jeśli jest tam zapisana ścieżka absolutna do pliku możesz wyświetlić obrazek pod formularzem.


To podobno niemożliwe. Zostało to zablokowane z uwagi na sekjurity.
Znaczy możliwe ale tylko w IE biggrin.gif które jest jak wiemy wszyscy zorientowane pod sekjurity biggrin.gif

w każdej normalnej przeglądarce zwrócenie Value to tylko nazwa pliku.

tak więc taki prosty DOM zadziałałby tylko w IE
  1. <script type="text/javascript">
  2. function pokaprewju() {
  3. $sciezka = document.getElementById('sciezka').value;
  4. document.getElementById("prewju").innerHTML= "<img src=\""+$sciezka+"\" width=\"100\" height=\"100\">";
  5. }
  6.  
  7. </head>
  8.  
  9. <form action="'.$SCRIPT_NAME.'" method="post" enctype="multipart/form-data">
  10. <input id="sciezka" type="file" name="file" value="" onChange="java script:pokaprewju();">
  11. </form>
  12.  
  13. <div id="prewju">
  14. </div>
  15.  
  16. </body></html>


Co innego jeżeli po kliknięciu w browse i wybraniu pliku, wykona się javascript który w tle wyśle formularz do serwera (z obrazkiem), serwer go gdzieś umieści a nawet wykona w PHP i GD jakąś miniaturkę, i jeszcze żeby ten javascript automatycznie umieścił na przeładowanej stronie <img src="miniaturkazserwera.jpg"> pod formularzem, koledzy mówili że to się nazywa AJAX
bmL
Z inputa nie można pobrać ścieżki absolutnej. Gdyby się dało stanowiłoby to lukę w zabezpieczeniach.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.