Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][html] upload image
Forum PHP.pl > Forum > Przedszkole
stab
witam
(wklejam jeszcze raz poprawnie)
Bardzo proszę o pomoc w zmodyfikowaniu prostego skryptu ładującego obrazek do galerii.
Galeria jest we flashu
oto ten skrypt:
  1. <?php
  2. error_reporting(E_ALL ^ E_NOTICE);
  3.  
  4.  
  5. // only process if a valid file was designated
  6. $errmsg = '';
  7. $upldir = '../userdata/images/';
  8.  
  9. if ( $submit && !empty( $_FILES['file']['tmp_name'] ) )
  10. {
  11. $f = $_FILES['file'];
  12. $pathinfo = pathinfo( $f['name'] );
  13. $ext = split('.', $f['name']);
  14. $ext = strtolower($ext[count($ext)-1]);
  15.  
  16. if( $f['error'] != 0){ $errmsg = 'File upload error'; }
  17. elseif(
  18. $f['name'] != '' &&
  19. $ext != 'jpg' &&
  20. $ext != 'jpeg' &&
  21. $ext != 'gif' &&
  22. $ext != 'giff' &&
  23. $ext != 'png' &&
  24. $ext != 'swf'
  25. )
  26. {
  27. //error not allowed extension
  28. $errmsg = 'Unexpected file type';
  29. }
  30.  
  31. if($errmsg != '')
  32. {
  33. //echo "<script>alert('$errmsg');</script>";
  34. }
  35. else
  36. {
  37. $fname = $upldir . $f['name'];
  38.  
  39. if( file_exists($fname) )
  40. {
  41. $f['name'] = basename($pathinfo['basename'], ".{$pathinfo['extension']}") .'_'. time(). '.' . $pathinfo['extension'];
  42. $fname = $upldir . $f['name'];
  43. }
  44.  
  45. //move file do upl dir
  46. if(move_uploaded_file($f['tmp_name'], $fname) === false)
  47. {
  48. $errmsg = 'File upload error';
  49. }
  50. else
  51. {
  52. chmod("$fname",0644);
  53. //---- chat part
  54. $_SESSION['upl_id'] = $f['name'];//$_SESSION['upl_imgid'.$imgid] = $f['name'];//path to image;
  55. }
  56. }
  57.  
  58. //---
  59. if( $errmsg == '' )
  60. {
  61. // close this window
  62. echo '<script>window.close();</script>';
  63. }
  64.  
  65. }
  66.  
  67. //---------------------------------------------
  68. //---calculate max file size
  69. //---------------------------------------------
  70. $post_max_size = ini_get('post_max_size') * 1024 * 1024;
  71. $upload_max_filesize = ini_get('upload_max_filesize') * 1024 * 1024;
  72.  
  73. $maxSize = min( $post_max_size, $upload_max_filesize) ;
  74.  
  75. function convertSize( $size )
  76. {
  77. if( $size < 1024) return $size.' Bytes';
  78. if( $size > 1024*1024) return ($size/(1024*1024)).' MB';
  79.  
  80. return ($size/1024).' KB';
  81. }
  82.  
  83. ?>
  84. <html>
  85. <style type="text/css">
  86. <!--
  87. .normalBold {
  88. font-family: Geneva, Arial, Helvetica, sans-serif;
  89. font-size: 12px;
  90. font-weight: bolder;
  91. }
  92. .title {
  93. font-family: Geneva, Arial, Helvetica, sans-serif;
  94. font-size: 18px;
  95. font-weight: bolder;
  96. color: #000000;
  97. }
  98. .normal {
  99. font-family: Geneva, Arial, Helvetica, sans-serif;
  100. font-size: 14px;
  101. }
  102. .error {
  103. font-family: Geneva, Arial, Helvetica, sans-serif;
  104. font-size: 14px;
  105. color: #FF0000;
  106. }
  107. -->
  108. </style>
  109.  
  110.  
  111.  
  112. <HEAD>
  113. <meta http-equiv=Content-Type content="text/html; charset=">
  114. <TITLE>File upload form</TITLE>
  115. <script language="JavaScript" type="text/javascript">
  116. <!--// open print window
  117. function myOnSubmit()
  118. {
  119. if( document.setup.file.value == "")
  120. {
  121. window.alert("Please select a file to upload.");
  122. return false;
  123. }
  124. return true;
  125. }
  126. //-->
  127. </script>
  128. </HEAD>
  129.  
  130.  
  131.  
  132.  
  133. <body bgcolor="#FFFFFF" leftmargin=20 topmargin=20 marginwidth=20 marginheight=25>
  134.  
  135. <P class="title">
  136. Load File<br>
  137. <?php if ($errmsg != '') { ?>
  138. <div class="error">
  139. <?php echo $errmsg?>
  140. </div>
  141. <?php } ?>
  142. </P>
  143.  
  144.  
  145.  
  146.  
  147. <P class="normal">
  148. This tool will enable you to upload your own JPG, GIF or PNG image or SWF file.
  149. The maximum allowed size is <font color=#FF0000><?php echo convertSize($maxSize); ?></font>.
  150. </P>
  151.  
  152. <form name="setup"
  153. method="post"
  154. enctype="multipart/form-data"
  155. onSubmit="return myOnSubmit()">
  156.  
  157.  
  158. <!--for store ImportID-->
  159. <input type="hidden" name="imgid" value="<?php echo $imgid; ?>">
  160.  
  161. <input type="hidden" name="MAX_FILE_SIZE" value="<?php echo $maxSize;?>">
  162. <input name="file" type="file" class="normal" size="40">//to jest button "przeglądaj " otwierający okno plików z kompa użytkownika 
  163. <input name="submit" type="submit" class="normal" value="Continue">
  164.  
  165. </form>
  166.  
  167.  
  168.  
  169. </body>
  170. </html>

----
Potrzebuję zmienić go w taki sposób aby po wciśnięciu buttona "przeglądaj" nie otwierało się okno "wysyłanie pliku" z windowsa tylko okno imagemanager z tinyMCE
który wywoływany jest poleceniem po którym pojawia się iframe z galerią obrazków z imagemanagera
  1. <a href="java script:mcImageManager.openInIframe('myiframe','pageproperties','nazwa_pola_textowego');"> Wybierz obrazek tła</a></font><a href="java script:mcImageManager.openInIframe('myiframe','pageproperties','nazwa_pola_textowego');">

Okno imagemanagera działa w ten sposób :
'myiframe'-to nazwqa iframa w którym otwiera się galeria obrazków imagemanagera
'pageproperties'-nazwa formularza obsługującego tą akcję
'nazwa_pola_textowego'-pole tekstowe w którym ładowany jest adres obrazka po kliknięciu na nim

Mój problem polega na tym aby połączyć skrypt z galerii ze skryptem z imagemanagera
tak aby po kliknięciu "przeglądaj" otwierało się okno imagemanagera.
Samo podlinkowanie nie pomaga gdyż obrazek mimo załadowania jego adresu do pola tekstowego "przeglądaj" nie jest uploadowany do galerii głównej
a href javascriptu dla imagemanagera w headzie jest prawidłow umieszczony

nie wiem czy jasno opisałem

bardzo liczę na Waszą pomoc


-------------------------
wszystko fajnie ale miałeś napisać PW
z poprawnym tagiem a nie tworzyć nowy wątek
zostawię go, ale to wykroczenie będziesz miał na sumieniu
~Cienki1980]


przepraszam
Strasznie surowe zasady tu macie.
Chyba nie czeka mnie sąd 24 godzinny za to wykroczenie?
lopez86
Napewno nikt ci tutaj nie zmodyfikuje kodu "tak o" bo to kosztuje czas a jak wiadomo czas to pieniądz .
Jeśli chodzi ci o sposób rozpoznania pliku przez przeglądarkę to poczytaj o mimetyp i header http://pl.php.net/header, nie wiem czy o to ci chodzi ale tylko tyo przychodzi mi do głowy.
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.