我在使用长GET参数的TinyMCE插件时遇到问题。在我的开发服务器上,该插件工作得很好。但是,在生产服务器上,将忽略该参数。
插件是SMImage,它使用如下参数:
40a6ff4a9832c3e3f8e2fed4d50dc8c6cc42409476b487da936f60cf315f57ccc39c7629d4146097ade572cdf409083257eb2d6edbff7b46556efafd07d4802521d17e14d1021baeac712f8ee83be1f768f14f849e58edb37c8fcd9a8e61e5235a1bb885b0dd1c5b85a2642f22fba99d304a6f988795e1c2b088b8f80e7acc69bc0cea7f763320a6611bd24bc924e0e1bda887990f560cbbd9e1608545fd69859a1808286a263d4754b8b1f6a713c9bdaaa015649b92db2701b005bd91e6827ff4bde6b48bcb0e5ca509f568684c51a803dbc7f896cdfdbcd0cfafc202e20d68f45cdfe86b033f36ff05a0f52cc6381231682d20d3038fc4fe7aba0916c614e89ff2b64c6b6bae0b548f
这有点长,但不应该是一个大问题(当然除了IE)。
在生产服务器下,甚至没有定义$ _GET ['get'],因为它被PHP忽略了。
是否有可以更改的服务器设置?在PHP下,什么定义了最大长度?
我可以使用POST,但我不太确定如何更改插件的这一部分:
var get = 'id=1' + '&dir_root=' + ed.getParam('plugin_smimage_directory', '') + '&server=' + ed.getParam('plugin_smimage_server', '') + '&thumbnail_size=' + ed.getParam('plugin_smimage_thumbnail_size', '') + '&show_thumbnail=' + ed.getParam('plugin_smimage_show_thumbnail', '') + '&jpg_quality=' + ed.getParam('plugin_smimage_jpg_quality', '') + '&orderby=' + ed.getParam('plugin_smimage_orderby', '') + '&show_upload=' + ed.getParam('plugin_smimage_show_upload', '') + '&show_image_menu=' + ed.getParam('plugin_smimage_show_image_menu', '') + '&show_folder_menu=' + ed.getParam('plugin_smimage_show_folder_menu', '') + '&show_newfolder=' + ed.getParam('plugin_smimage_show_newfolder', '') + '&thumbnails_perpage=' + ed.getParam('plugin_smimage_thumbnails_perpage', '') + '&upload_filesize=' + ed.getParam('plugin_smimage_upload_filesize', '') + '&check_session_variable=' + ed.getParam('plugin_smimage_check_session_variable', '') + '&document_root=' + ed.getParam('plugin_smimage_document_root', '');
ed.windowManager.open({
file: url + '/index.php?get=' + SMImage_BinToHex(SMImage_RC4(get)),
width: ed.getParam('plugin_smimage_width', '800'),
height: ed.getParam('plugin_smimage_height', '500'),
inline: 1
},
{
plugin_url: url
})
答案 0 :(得分:0)
不确定这是不是一个好主意,但你可以尝试使用cookie作为传递这种参数的解决方法。在JS中,在打开此窗口之前,请执行类似
的操作document.cookie = 'SMImage_param=' + SMImage_BinToHex(SMImage_RC4(get))
然后在没有参数的情况下调用index.php
。在服务器端使用
$_COOKIE['SMImage_param']
获取此参数值。
当然,只有当你调用的PHP在同一个域上时它才会起作用(但我几乎可以肯定你的TinyMCE插件就在那里)。