[Zope] <input type=hidden value='<dtml-var x>' name=x> and L OOP

servel yannick yservel@glam.ac.uk
Fri, 23 Mar 2001 19:53:58 -0000


hi, servel

stringify your i's:

s = s + "<input type=hidden value='%s' name='filename%s'>" %
((REQUEST.filename + str(i)), i)

or you can 

iterator = str(i)
s = s + "<input type=hidden value='%s' name='filename%s'>" %
((REQUEST.filename + iterator)), iterator)
-----------------------------------------------------

Hello Jim,


I already tried to stringified my i's during my preview attempts.

Here is the message error I received when I attempted to use this kind of
solutions:


<html><head><title>yannick</title></head><body bgcolor="#FFFFFF">


<table border="0" width="100%">
<tr valign="TOP">

<td width="10%" align="center">
<img src="http://ltg2.comp.glam.ac.uk:8080/p_/ZButton" alt="Zope">
</td>

<td width="90%">
  <h2>Zope Error</h2>
  <p>Zope has encountered an error while publishing this resource.</p>
  
  <p>
  <strong>Error Type: KeyError</strong><br>
  <strong>Error Value: filename</strong><br> 
  </p>
 
  <hr noshade>
 
  <p>Troubleshooting Suggestions</p>

  <ul>
    <li>This resource may be trying to reference a
  nonexistent object or variable <strong>filename</strong>.</li>
    <li>The URL may be incorrect.</li>
  <li>The parameters passed to this resource may be incorrect.</li>
  <li>A resource that this resource relies on may be encountering an
error.</li>
  </ul>

  <p>For more detailed information about the error, please
  refer to the HTML source for this page.
  </p>

  <p>If the error persists please contact the site maintainer.
  Thank you for your patience.
  </p>
</td></tr>
</table>


<p><a href="http://www.zope.org/Credits" target="_top"><img
src="http://ltg2.comp.glam.ac.uk:8080/p_/ZopeButton" width="115" height="50"
border="0" alt="Powered by Zope" /></a></p></body></html>

<!--
Traceback (innermost last):
  File C:\PROGRA~1\WebSite\lib\python\ZPublisher\Publish.py, line 222, in
publish_module
  File C:\PROGRA~1\WebSite\lib\python\ZPublisher\Publish.py, line 187, in
publish
  File C:\PROGRA~1\WebSite\lib\python\Zope\__init__.py, line 221, in
zpublisher_exception_hook
    (Object: Traversable)
  File C:\PROGRA~1\WebSite\lib\python\ZPublisher\Publish.py, line 171, in
publish
  File C:\PROGRA~1\WebSite\lib\python\ZPublisher\mapply.py, line 160, in
mapply
    (Object: SaveMenu.html)
  File C:\PROGRA~1\WebSite\lib\python\ZPublisher\Publish.py, line 112, in
call_object
    (Object: SaveMenu.html)
  File C:\PROGRA~1\WebSite\lib\python\OFS\DTMLDocument.py, line 189, in
__call__
    (Object: SaveMenu.html)
  File C:\PROGRA~1\WebSite\lib\python\DocumentTemplate\DT_String.py, line
538, in __call__
    (Object: SaveMenu.html)
  File C:\PROGRA~1\WebSite\lib\python\DocumentTemplate\DT_Util.py, line 334,
in eval
    (Object: SaveMenu(REQUEST=REQUEST))
    (Info: REQUEST)
  File &lt;string&gt;, line 0, in ?
  File
C:\PROGRA~1\WebSite\lib\python\Products\ExternalMethod\ExternalMethod.py,
line 269, in __call__
    (Object: SaveMenu)
    (Info: ((), {'REQUEST': &lt;h3&gt;form&lt;/h3&gt;&lt;table&gt;&lt;tr
valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;filename3&lt;/th&gt;&lt;td&gt;''&lt;/td&
gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;filename2&lt;/th&gt;&lt;td&gt;''&lt;/td&
gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;filename1&lt;/th&gt;&lt;td&gt;''&lt;/td&
gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;filename7&lt;/th&gt;&lt;td&gt;''&lt;/td&
gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;filename6&lt;/th&gt;&lt;td&gt;''&lt;/td&
gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;nbMenu&lt;/th&gt;&lt;td&gt;'7'&lt;/td&gt
;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;filename4&lt;/th&gt;&lt;td&gt;''&lt;/td&
gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;nbCol&lt;/th&gt;&lt;td&gt;'3'&lt;/td&gt;
&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;filename5&lt;/th&gt;&lt;td&gt;''&lt;/td&
gt;&lt;/tr&gt;&lt;/table&gt;&lt;h3&gt;cookies&lt;/h3&gt;&lt;table&gt;&lt;tr
valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;tree-s&lt;/th&gt;&lt;td&gt;'eJzTiFZ3hANP
W/VYHU0ALlYElA'&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;h3&gt;other&lt;/h3&gt
;&lt;table&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;PUBLISHED&lt;/th&gt;&lt;td&gt;&amp;lt;DT
MLDocument instance at 00FF1860&amp;gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr
valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;nbCol&lt;/th&gt;&lt;td&gt;'3'&lt;/td&gt;
&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;URL2&lt;/th&gt;&lt;td&gt;'http://ltg2.co
mp.glam.ac.uk:8080'&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;BASE1&lt;/th&gt;&lt;td&gt;'http://ltg2.c
omp.glam.ac.uk:8080'&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;BASE0&lt;/th&gt;&lt;td&gt;'http://ltg2.c
omp.glam.ac.uk:8080'&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;SERVER_URL&lt;/th&gt;&lt;td&gt;'http://l
tg2.comp.glam.ac.uk:8080'&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;AUTHENTICATED_USER&lt;/th&gt;&lt;td&gt;y
annick&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;TraversalRequestNameStack&lt;/th&gt;&lt;
td&gt;[]&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;tree-s&lt;/th&gt;&lt;td&gt;'eJzTiFZ3hANP
W/VYHU0ALlYElA'&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;AUTHENTICATION_PATH&lt;/th&gt;&lt;td&gt;
''&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;BASE3&lt;/th&gt;&lt;td&gt;'http://ltg2.c
omp.glam.ac.uk:8080/yannick/SaveMenu.html'&lt;/td&gt;&lt;/tr&gt;&lt;tr
valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;URL0&lt;/th&gt;&lt;td&gt;'http://ltg2.co
mp.glam.ac.uk:8080/yannick/SaveMenu.html'&lt;/td&gt;&lt;/tr&gt;&lt;tr
valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;URL1&lt;/th&gt;&lt;td&gt;'http://ltg2.co
mp.glam.ac.uk:8080/yannick'&lt;/td&gt;&lt;/tr&gt;&lt;tr
valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;filename2&lt;/th&gt;&lt;td&gt;''&lt;/td&
gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;filename3&lt;/th&gt;&lt;td&gt;''&lt;/td&
gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;nbMenu&lt;/th&gt;&lt;td&gt;'7'&lt;/td&gt
;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;filename1&lt;/th&gt;&lt;td&gt;''&lt;/td&
gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;filename7&lt;/th&gt;&lt;td&gt;''&lt;/td&
gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;filename6&lt;/th&gt;&lt;td&gt;''&lt;/td&
gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;filename5&lt;/th&gt;&lt;td&gt;''&lt;/td&
gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;filename4&lt;/th&gt;&lt;td&gt;''&lt;/td&
gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;URL&lt;/th&gt;&lt;td&gt;'http://ltg2.com
p.glam.ac.uk:8080/yannick/SaveMenu.html'&lt;/td&gt;&lt;/tr&gt;&lt;tr
valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;BASE2&lt;/th&gt;&lt;td&gt;'http://ltg2.c
omp.glam.ac.uk:8080/yannick'&lt;/td&gt;&lt;/tr&gt;&lt;tr
valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;URL0&lt;/th&gt;&lt;td&gt;http://ltg2.com
p.glam.ac.uk:8080/yannick/SaveMenu.html&lt;/td&gt;&lt;/tr&gt;&lt;tr
valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;URL1&lt;/th&gt;&lt;td&gt;http://ltg2.com
p.glam.ac.uk:8080/yannick&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;URL2&lt;/th&gt;&lt;td&gt;http://ltg2.com
p.glam.ac.uk:8080&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;BASE0&lt;/th&gt;&lt;td&gt;http://ltg2.co
mp.glam.ac.uk:8080&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;BASE1&lt;/th&gt;&lt;td&gt;http://ltg2.co
mp.glam.ac.uk:8080&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;BASE2&lt;/th&gt;&lt;td&gt;http://ltg2.co
mp.glam.ac.uk:8080/yannick&lt;/td&gt;&lt;/tr&gt;&lt;tr
valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;BASE3&lt;/th&gt;&lt;td&gt;http://ltg2.co
mp.glam.ac.uk:8080/yannick/SaveMenu.html&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;h3&gt;environ&lt;/h3&gt;&lt;table&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;SCRIPT_NAME&lt;/th&gt;&lt;td&gt;&lt;/td&
gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;HTTP_ACCEPT_ENCODING&lt;/th&gt;&lt;td&gt
;gzip, deflate&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;CONTENT_LENGTH&lt;/th&gt;&lt;td&gt;93&lt
;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;channel.creation_time&lt;/th&gt;&lt;td&g
t;985376904&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;HTTP_REFERER&lt;/th&gt;&lt;td&gt;http://
ltg2.comp.glam.ac.uk:8080/yannick/CreateMenu.html?nbMenu=7&amp;amp;nbCol=3&l
t;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;SERVER_PROTOCOL&lt;/th&gt;&lt;td&gt;1.1&
lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;CONTENT_TYPE&lt;/th&gt;&lt;td&gt;applica
tion/x-www-form-urlencoded&lt;/td&gt;&lt;/tr&gt;&lt;tr
valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;PATH_TRANSLATED&lt;/th&gt;&lt;td&gt;\yan
nick\SaveMenu.html&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;HTTP_ACCEPT&lt;/th&gt;&lt;td&gt;image/gi
f, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-powerpoint,
application/vnd.ms-excel, application/msword,
*/*&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;REQUEST_METHOD&lt;/th&gt;&lt;td&gt;POST&
lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;SERVER_SOFTWARE&lt;/th&gt;&lt;td&gt;Zope
/Zope 2.3.0 (binary release, python 1.5.2, win32-x86)
ZServer/1.1b1&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;HTTP_COOKIE&lt;/th&gt;&lt;td&gt;tree-s=&
amp;quot;eJzTiFZ3hANPW/VYHU0ALlYElA&amp;quot;&lt;/td&gt;&lt;/tr&gt;&lt;tr
valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;PATH_INFO&lt;/th&gt;&lt;td&gt;/yannick/S
aveMenu.html&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;HTTP_ACCEPT_LANGUAGE&lt;/th&gt;&lt;td&gt
;en-gb&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;HTTP_HOST&lt;/th&gt;&lt;td&gt;ltg2.comp.
glam.ac.uk:8080&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;GATEWAY_INTERFACE&lt;/th&gt;&lt;td&gt;CG
I/1.1&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;SERVER_PORT&lt;/th&gt;&lt;td&gt;8080&lt;
/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;SERVER_NAME&lt;/th&gt;&lt;td&gt;ltg2.com
p.glam.ac.uk&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;REMOTE_ADDR&lt;/th&gt;&lt;td&gt;193.63.1
28.132&lt;/td&gt;&lt;/tr&gt;&lt;tr valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;HTTP_USER_AGENT&lt;/th&gt;&lt;td&gt;Mozi
lla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)&lt;/td&gt;&lt;/tr&gt;&lt;tr
valign=&quot;top&quot;
align=&quot;left&quot;&gt;&lt;th&gt;CONNECTION_TYPE&lt;/th&gt;&lt;td&gt;Keep
-Alive&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;}, (None,)))
  File C:\PROGRA~1\WebSite\Extensions\ecommerce.py, line 12, in SaveMenu
    (Object: Traversable)
  File C:\PROGRA~1\WebSite\lib\python\ZPublisher\HTTPRequest.py, line 852,
in __getitem__
KeyError: (see above)

-->


For some reasons, it refuses to add filename to i even when i is
"stringified".

Regards,

Yannick