0

我正在处理 Zend Framework 1.12 中的一个项目。我想建立一个设施,使成员能够动态上传他们选择的 VCSS 样式表;从而使他们能够以他们选择的颜色格式化页面。样式表的参数是通过 URL 加载的;

IE

The url could be like this:   samplewebbsite/?s=rootfolder/stylesheet
we collect it with: $this->view->stylesheet = $this->_request->getParam('stylesheet', ' );

getParam() 获得他们的样式表的区别。即:rootfolder/stylsheet.css 然后我在索引页面上显示该值,即:

<link href="<?= $this->stylesheet ?>" media="screen" rel="stylesheet" type="text/css" >

我现在的问题是:我想保护 getParam() 免受 javascript/sql 注入/错误代码等的影响。我该如何保护它?我应该使用 strip_tags() 还是有更好的方法来保护它?

4

1 回答 1

0

我想我想出了如何去做;我这样做了;我只是使用了条形标签。

$this->view->stylesheet =  $stylesheet = strip_tags ($this->_request->getParam('s', ''));

我试着用

$alpha = new Zend_Filter_Alpha();
$this->view->stylesheet =  $alpha -> filter($this -> _request -> getParam('name'));

但我发现它也去掉了所有的断线,即 http /:Sameplesite/Rootfolder/ 变成了 samplesiteRootfolder

如果有人有更好的解决方案,我很想听听(即我更愿意使用过滤器类)。然而在其他方面。我认为我的问题已经得到了很好的回答。

于 2013-06-20T18:40:03.343 回答