Upload файла в iframe?

4m@t!c

Александр
Upload файла ЧЕРЕЗ iframe?

Есть форма news_add.php
PHP:
...
<TR>
	<TD colspan="2" align="left">
		<FORM enctype="multipart/form-data" action="loadimg.php?tmpid=<?php echo $_SESSION['tmpid']; ?>" method="post" target="images">
		<TABLE>
		<TR>
			<TD>Путь к рисунку:</TD>
			<TD><INPUT type="hidden" name="MAX_FILE_SIZE" value="4000000">
		<INPUT name="newimg" type="file"></TD>
			<TD><INPUT type="submit" value="Загрузить"></TD>
		</TR>
		</TABLE>
		</FORM>
	</TD>
</TR>
<TR>
	<TD colspan="2" align="left"><IFRAME name="images" src="loadimg.php?tmpid=<?php echo $_SESSION['tmpid']; ?>" width="740" height="100"></IFRAME></TD>
</TR>
....
есть фрейм loadimg.php, который делает upload файла.
PHP:
...
<FORM enctype="multipart/form-data" action="loadimg.php?tmpid=<?php echo $_SESSION['tmpid']; ?>" method="post">
<TABLE>
<TR>
   <TD>Путь к рисунку:</TD>
   <TD><INPUT type="hidden" name="MAX_FILE_SIZE" value="4000000">
   <INPUT name="newimg" type="file"></TD>
   <TD><INPUT type="submit" value="Загрузить"></TD>
</TR>
</TABLE>
</FORM>
...
Если делать аплоад из news_add.php, то файл не аплоадится.
В заголовке пишет
...
Content-Type: application/x-www-form-urlencoded
Content-Length: 91
ntitle=&ndate=&nsource=&ncatid=1&referat=&inside=&MAX_FILE_SIZE=4000000&newimg=IMG_0038.JPG
...
Если делать аплоад непосредственно из скрипта, который аплоадит файл(loadimg.php), то файл аплоадится.
В заголовке пишет
...
Content-Type: multipart/form-data; boundary=---------------------------24464570528145
Content-Length: 1173659
...
Подскажите, пожалуйста, где туплю с формами? Или аплоадить в фрейм нельзя?
 

Кром

Новичок
>Или аплоадить в фрейм нельзя?

Нет такого понятия вообще. Ты просто произносишь слова которые не сочетаюся. Слова без смысла.
Файл можно "аплоадить" только на сервер.
 

4m@t!c

Александр
Извините, за некорректность, перефразирую Аплоадить файл через iframe.
 

Кром

Новичок
>Тогда, что у меня не так?

Выведи phpinfo и посмотри, что не так.
 

4m@t!c

Александр
Проверил все несколько раз. Более того - формы скопированы.

-~{}~ 07.07.05 01:06:

Готовый HTML выглядит так:
news_add.php
PHP:
<TR>
	<TD colspan="2" align="left">
		<FORM enctype="multipart/form-data" action="loadimg.php?tmpid=30" method="post" target="images">
		<TABLE>
		<TR>
			<TD>Путь к рисунку:</TD>

			<TD><INPUT type="hidden" name="MAX_FILE_SIZE" value="4000000">
		<INPUT name="newimg" type="file"></TD>
			<TD><INPUT type="submit" value="Загрузить"></TD>
		</TR>
		</TABLE>
		</FORM>
	</TD>
</TR>
<TR>
	<TD colspan="2" align="left"><IFRAME name="images" src="loadimg.php?tmpid=30" width="740" height="100"></IFRAME></TD>

</TR>
Для loadimg.php
PHP:
<TD colspan="5">
		<FORM enctype="multipart/form-data" action="loadimg.php?tmpid=30" method="post">
		<TABLE>
		<TR>

			<TD>Путь к рисунку:</TD>
			<TD><INPUT type="hidden" name="MAX_FILE_SIZE" value="4000000">
		<INPUT name="newimg" type="file"></TD>
			<TD><INPUT type="submit" value="Загрузить"></TD>
		</TR>
		</TABLE>
		</FORM>

</TD>
 

MD

Guest
[m]error_reporting[/m]
и посмотри в сторону $_FILES['filename']['error']
и вообще: http://php.rinet.ru/manual/en/features.file-upload.php
 

4m@t!c

Александр
Хоть режьте меня, но не получается загрузить файл на сервер через IFRAME.
Как оказалось, если форма в форме. Т.е.
PHP:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> Добавленние новой новости </TITLE>
</HEAD>
<BODY>
<FORM action="<?php echo $_SERVER['PHP_SELF']?>" method="POST">
<TABLE width="100%">
<TR>
	<TD colspan="2" align="left">Списко используемых рисунков <?php echo $_SESSION['tmpid']; ?></TD>
</TR>
<TR>
	<TD colspan="2" align="left">
		<FORM enctype="multipart/form-data" action="loadimg.php" method="post" target="images">
		<TABLE>
		<TR>
			<TD>Путь к рисунку:</TD>
			<TD><INPUT type="hidden" name="MAX_FILE_SIZE" value="4000000">
		<INPUT name="newimg" type="file"></TD>
			<TD><INPUT type="submit" value="Загрузить"></TD>
		</TR>
		</TABLE>
		</FORM>
	</TD>
</TR>
<TR>
	<TD colspan="2" align="left"><IFRAME name="images" src="loadimg.php" width="740" height="100"></IFRAME></TD>
</TR>
<TR>
	<TD colspan="2" align="center"><BR><BUTTON type="submit" name="ncancel">Не сохранять</BUTTON>&nbsp;&nbsp;&nbsp;<BUTTON type="submit" name="nsave">&nbsp;&nbsp;&nbsp;Сохранить&nbsp;&nbsp;&nbsp;</BUTTON></TD>
</TR>
</TABLE>
</FORM>
</BODY>
</HTML>
файл не аплоадится!!!
Т.е. если форма в форме - то файл не аплоадится.
Если из этой же страницы удалить "внешнюю" форму, то файл честно аплоадится. Выходит, что нельзя аплоадить так файлы? Или в чем дело?
 

Profic

just Profic (PHP5 BetaTeam)
А кто тебе сказал, что в HTML вообще возможны вложенные формы?
Кстати внешняя-то форма как раз и имеет неверный enctype...
 

4m@t!c

Александр
а где в RFC написано, что этого делать нельзя? Я четко соблюдаю вложенность... прежде чем задать вопрос здесь - я прочел стандат HTML касательно форм. Поправьте меня, если я не прав и ткните носом - буду признателен...
 

Profic

just Profic (PHP5 BetaTeam)
Код:
<!ELEMENT FORM - - [b](%block;|SCRIPT)+ -(FORM)[/b] -- interactive form -->
<!ATTLIST FORM
  %attrs;                              -- %coreattrs, %i18n, %events --
  action      %URI;          #REQUIRED -- server-side form handler --
  method      (GET|POST)     GET       -- HTTP method used to submit the form--
  enctype     %ContentType;  "application/x-www-form-urlencoded"
  accept      %ContentTypes; #IMPLIED  -- list of MIME types for file upload --
  name        CDATA          #IMPLIED  -- name of form for scripting --
  onsubmit    %Script;       #IMPLIED  -- the form was submitted --
  onreset     %Script;       #IMPLIED  -- the form was reset --
  accept-charset %Charsets;  #IMPLIED  -- list of supported charsets --
  >
 

4m@t!c

Александр
например "normal content"?
Не подумайте, что я торгуюсь..;)))) Я все понял... Нужно было как всегда читать между строк...;))))

-~{}~ 13.07.05 11:13:

Т.е.
- это исключить вложенность форм????
 

4m@t!c

Александр
Всем спасибо за помощь, кроме Frol.
[offtop]
ХМ... я так и не нашел, как правильно читать этот документ...
Вот, например,
<!ELEMENT BODY O O (%block;|SCRIPT)+ +(INS|DEL) - тело документа -->
И что это значит + + или О О?
[offtop]
 

Profic

just Profic (PHP5 BetaTeam)
В спеках написано. В самом начале в главе: "3. On SGML and HTML"
 
Сверху