View Issue Details

This bug affects 1 person(s).
 4
IDProjectCategoryView StatusLast Update
06356Bug reportsSurvey editingpublic2012-07-21 18:11
Reporterseanrife Assigned Toc_schmitz  
PriorityhighSeveritycrash 
Status closedResolutionfixed 
Product Version2.00RC5 
Fixed in Version2.00RC7 
Summary06356: Undefined variable: xssfilter
Description

Getting the error "Undefined variable: xssfilter" when I try to create a new survey. Full output is included in additional information. After getting this error, the survey does not show up in the survey list. However, under "System overview," it increments the number of surveys every time.

Steps To Reproduce

Attempt to add a new survey using the default options.

Additional Information

PHP notice

Undefined variable: xssfilter

/home/soundguy95/surveys.lyceum.ws/ls/application/controllers/admin/surveyadmin.php(1559)

1547 'surveyls_title' => $sTitle,
1548 'surveyls_description' => $sDescription,
1549 'surveyls_welcometext' => $sWelcome,
1550 'surveyls_language' => $_POST['language'],
1551 'surveyls_urldescription' => $_POST['urldescrip'],
1552 'surveyls_endtext' => $_POST['endtext'],
1553 'surveyls_url' => $_POST['url'],
1554 'surveyls_dateformat' => (int) $_POST['dateformat'],
1555 'surveyls_numberformat' => (int) $_POST['numberformat']
1556 );
1557
1558 $langsettings = new Surveys_languagesettings;
1559 $langsettings->insertNewSurvey($aInsertData, $xssfilter);
1560
1561 Yii::app()->session['flashmessage'] = $this->getController()->lang->gT("Survey was successfully added.");
1562
1563 // Update survey permissions
1564 Survey_permissions::model()->giveAllSurveyPermissions(Yii::app()->session['loginID'], $iNewSurveyid);
1565
1566 $this->getController()->redirect($this->getController()->createUrl('admin/survey/view/surveyid/' . $iNewSurveyid));
1567 }
1568 }
1569
1570 /*
1571
Renders template(s) wrapped in header and footer
Stack Trace
#0
unknown(0): SurveyAdmin->insert(null)
#1

  • /home/soundguy95/surveys.lyceum.ws/ls/framework/web/actions/CAction.php(107): ReflectionMethod->invokeArgs(SurveyAdmin, array(null))
    #2
    – /home/soundguy95/surveys.lyceum.ws/ls/application/core/Survey_Common_Action.php(82): CAction->runWithParamsInternal(SurveyAdmin, ReflectionMethod, array("sa" => "insert"))
    77 $oMethod = new ReflectionMethod($this, $sDefault);
    78 }
    79
    80 // We're all good to go, let's execute it
    81 // runWithParamsInternal would automatically get the parameters of the method and populate them as required with the params
    82 return parent::runWithParamsInternal($this, $oMethod, $params);
    83 }
    84
    85 /*
    86
    Some functions have different parameters, which are just an alias of the
    87 * usual parameters we're getting in the url. This function just populates
    #3
  • /home/soundguy95/surveys.lyceum.ws/ls/framework/web/CController.php(309): Survey_Common_Action->runWithParams(array("sa" => "insert"))
    #4
  • /home/soundguy95/surveys.lyceum.ws/ls/framework/web/CController.php(287): CController->runAction(SurveyAdmin)
    #5
  • /home/soundguy95/surveys.lyceum.ws/ls/framework/web/CController.php(266): CController->runActionWithFilters(SurveyAdmin, array())
    #6
    – /home/soundguy95/surveys.lyceum.ws/ls/application/controllers/AdminController.php(158): CController->run("survey")
    153 Yii::app()->session['redirectopage'] = Yii::app()->request->requestUri;
    154
    155 $this->redirect($this->createUrl('/admin/authentication/login'));
    156 }
    157
    158 return parent::run($action);
    159 }
    160
    161 /*
    162
    Routes all the actions to their respective places
    163 *
    #7
  • /home/soundguy95/surveys.lyceum.ws/ls/framework/web/CWebApplication.php(276): AdminController->run("survey")
    #8
  • /home/soundguy95/surveys.lyceum.ws/ls/framework/web/CWebApplication.php(135): CWebApplication->runController("admin/survey/sa/insert")
    #9
  • /home/soundguy95/surveys.lyceum.ws/ls/framework/base/CApplication.php(162): CWebApplication->processRequest()
    #10
    – /home/soundguy95/surveys.lyceum.ws/ls/index.php(171): CApplication->run()
    166
    167
    /
    168 require_once BASEPATH . 'yii' . EXT;
    169 require_once APPPATH . 'core/LSYii_Application' . EXT;
    170
    171 Yii::createApplication('LSYii_Application', APPPATH . 'config/config' . EXT)->run();
    172
    173 / End of file index.php /
    174 / Location: ./index.php /
    2012-07-20 19:45:45 Apache Yii Framework/1.1.10
TagsNo tags attached.
Attached Files
PHP notice.htm (17,579 bytes)   
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!-- saved from url=(0057)http://surveys.lyceum.ws/ls/index.php/admin/survey/insert -->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>PHP notice</title>

<style type="text/css">
/*<![CDATA[*/
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;margin:0;padding:0;}
body{line-height:1;}
ol,ul{list-style:none;}
blockquote,q{quotes:none;}
blockquote:before,blockquote:after,q:before,q:after{content:none;}
:focus{outline:0;}
ins{text-decoration:none;}
del{text-decoration:line-through;}
table{border-collapse:collapse;border-spacing:0;}

body {
	font: normal 9pt "Verdana";
	color: #000;
	background: #fff;
}

h1 {
	font: normal 18pt "Verdana";
	color: #f00;
	margin-bottom: .5em;
}

h2 {
	font: normal 14pt "Verdana";
	color: #800000;
	margin-bottom: .5em;
}

h3 {
	font: bold 11pt "Verdana";
}

pre {
	font: normal 11pt Menlo, Consolas, "Lucida Console", Monospace;
}

pre span.error {
	display: block;
	background: #fce3e3;
}

pre span.ln {
	color: #999;
	padding-right: 0.5em;
	border-right: 1px solid #ccc;
}

pre span.error-ln {
	font-weight: bold;
}

.container {
	margin: 1em 4em;
}

.version {
	color: gray;
	font-size: 8pt;
	border-top: 1px solid #aaa;
	padding-top: 1em;
	margin-bottom: 1em;
}

.message {
	color: #000;
	padding: 1em;
	font-size: 11pt;
	background: #f3f3f3;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	margin-bottom: 1em;
	line-height: 160%;
}

.source {
	margin-bottom: 1em;
}

.code pre {
	background-color: #ffe;
	margin: 0.5em 0;
	padding: 0.5em;
	line-height: 125%;
	border: 1px solid #eee;
}

.source .file {
	margin-bottom: 1em;
	font-weight: bold;
}

.traces {
	margin: 2em 0;
}

.trace {
	margin: 0.5em 0;
	padding: 0.5em;
}

.trace.app {
	border: 1px dashed #c00;
}

.trace .number {
	text-align: right;
	width: 2em;
	padding: 0.5em;
}

.trace .content {
	padding: 0.5em;
}

.trace .plus,
.trace .minus {
	display:inline;
	vertical-align:middle;
	text-align:center;
	border:1px solid #000;
	color:#000;
	font-size:10px;
	line-height:10px;
	margin:0;
	padding:0 1px;
	width:10px;
	height:10px;
}

.trace.collapsed .minus,
.trace.expanded .plus,
.trace.collapsed pre {
	display: none;
}

.trace-file {
	cursor: pointer;
	padding: 0.2em;
}

.trace-file:hover {
	background: #f0ffff;
}
/*]]>*/
</style>
</head>

<body>
<div class="container">
	<h1>PHP notice</h1>

	<p class="message">
		Undefined variable: xssfilter	</p>

	<div class="source">
		<p class="file">/home/soundguy95/surveys.lyceum.ws/ls/application/controllers/admin/surveyadmin.php(1559)</p>
		<div class="code"><pre><span class="ln">1547</span>             'surveyls_title' =&gt; $sTitle,
<span class="ln">1548</span>             'surveyls_description' =&gt; $sDescription,
<span class="ln">1549</span>             'surveyls_welcometext' =&gt; $sWelcome,
<span class="ln">1550</span>             'surveyls_language' =&gt; $_POST['language'],
<span class="ln">1551</span>             'surveyls_urldescription' =&gt; $_POST['urldescrip'],
<span class="ln">1552</span>             'surveyls_endtext' =&gt; $_POST['endtext'],
<span class="ln">1553</span>             'surveyls_url' =&gt; $_POST['url'],
<span class="ln">1554</span>             'surveyls_dateformat' =&gt; (int) $_POST['dateformat'],
<span class="ln">1555</span>             'surveyls_numberformat' =&gt; (int) $_POST['numberformat']
<span class="ln">1556</span>             );
<span class="ln">1557</span> 
<span class="ln">1558</span>             $langsettings = new Surveys_languagesettings;
<span class="error"><span class="ln error-ln">1559</span>             $langsettings-&gt;insertNewSurvey($aInsertData, $xssfilter);
</span><span class="ln">1560</span> 
<span class="ln">1561</span>             Yii::app()-&gt;session['flashmessage'] = $this-&gt;getController()-&gt;lang-&gt;gT("Survey was successfully added.");
<span class="ln">1562</span> 
<span class="ln">1563</span>             // Update survey permissions
<span class="ln">1564</span>             Survey_permissions::model()-&gt;giveAllSurveyPermissions(Yii::app()-&gt;session['loginID'], $iNewSurveyid);
<span class="ln">1565</span> 
<span class="ln">1566</span>             $this-&gt;getController()-&gt;redirect($this-&gt;getController()-&gt;createUrl('admin/survey/view/surveyid/' . $iNewSurveyid));
<span class="ln">1567</span>         }
<span class="ln">1568</span>     }
<span class="ln">1569</span> 
<span class="ln">1570</span>     /**
<span class="ln">1571</span>     * Renders template(s) wrapped in header and footer
</pre></div>	</div>

	<div class="traces">
		<h2>Stack Trace</h2>
				<table style="width:100%;">
						<tbody><tr class="trace core collapsed">
			<td class="number">
				#0			</td>
			<td class="content">
				<div class="trace-file">
										&nbsp;unknown(0): <strong>SurveyAdmin</strong>-&gt;<strong>insert</strong>(null)				</div>

							</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#1			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/home/soundguy95/surveys.lyceum.ws/ls/framework/web/actions/CAction.php(107): <strong>ReflectionMethod</strong>-&gt;<strong>invokeArgs</strong>(SurveyAdmin, array(null))				</div>

				<div class="code"><pre><span class="ln">102</span>             else if($param-&gt;isDefaultValueAvailable())
<span class="ln">103</span>                 $ps[]=$param-&gt;getDefaultValue();
<span class="ln">104</span>             else
<span class="ln">105</span>                 return false;
<span class="ln">106</span>         }
<span class="error"><span class="ln error-ln">107</span>         $method-&gt;invokeArgs($object,$ps);
</span><span class="ln">108</span>         return true;
<span class="ln">109</span>     }
<span class="ln">110</span> }
</pre></div>			</td>
		</tr>
						<tr class="trace app expanded">
			<td class="number">
				#2			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/home/soundguy95/surveys.lyceum.ws/ls/application/core/Survey_Common_Action.php(82): <strong>CAction</strong>-&gt;<strong>runWithParamsInternal</strong>(SurveyAdmin, ReflectionMethod, array("sa" =&gt; "insert"))				</div>

				<div class="code"><pre><span class="ln">77</span>             $oMethod = new ReflectionMethod($this, $sDefault);
<span class="ln">78</span>         }
<span class="ln">79</span> 
<span class="ln">80</span>         // We're all good to go, let's execute it
<span class="ln">81</span>         // runWithParamsInternal would automatically get the parameters of the method and populate them as required with the params
<span class="error"><span class="ln error-ln">82</span>         return parent::runWithParamsInternal($this, $oMethod, $params);
</span><span class="ln">83</span>     }
<span class="ln">84</span> 
<span class="ln">85</span>     /**
<span class="ln">86</span>     * Some functions have different parameters, which are just an alias of the
<span class="ln">87</span>     * usual parameters we're getting in the url. This function just populates
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#3			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/home/soundguy95/surveys.lyceum.ws/ls/framework/web/CController.php(309): <strong>Survey_Common_Action</strong>-&gt;<strong>runWithParams</strong>(array("sa" =&gt; "insert"))				</div>

				<div class="code"><pre><span class="ln">304</span>     {
<span class="ln">305</span>         $priorAction=$this-&gt;_action;
<span class="ln">306</span>         $this-&gt;_action=$action;
<span class="ln">307</span>         if($this-&gt;beforeAction($action))
<span class="ln">308</span>         {
<span class="error"><span class="ln error-ln">309</span>             if($action-&gt;runWithParams($this-&gt;getActionParams())===false)
</span><span class="ln">310</span>                 $this-&gt;invalidActionParams($action);
<span class="ln">311</span>             else
<span class="ln">312</span>                 $this-&gt;afterAction($action);
<span class="ln">313</span>         }
<span class="ln">314</span>         $this-&gt;_action=$priorAction;
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#4			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/home/soundguy95/surveys.lyceum.ws/ls/framework/web/CController.php(287): <strong>CController</strong>-&gt;<strong>runAction</strong>(SurveyAdmin)				</div>

				<div class="code"><pre><span class="ln">282</span>      * @see runAction
<span class="ln">283</span>      */
<span class="ln">284</span>     public function runActionWithFilters($action,$filters)
<span class="ln">285</span>     {
<span class="ln">286</span>         if(empty($filters))
<span class="error"><span class="ln error-ln">287</span>             $this-&gt;runAction($action);
</span><span class="ln">288</span>         else
<span class="ln">289</span>         {
<span class="ln">290</span>             $priorAction=$this-&gt;_action;
<span class="ln">291</span>             $this-&gt;_action=$action;
<span class="ln">292</span>             CFilterChain::create($this,$action,$filters)-&gt;run();
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#5			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/home/soundguy95/surveys.lyceum.ws/ls/framework/web/CController.php(266): <strong>CController</strong>-&gt;<strong>runActionWithFilters</strong>(SurveyAdmin, array())				</div>

				<div class="code"><pre><span class="ln">261</span>         {
<span class="ln">262</span>             if(($parent=$this-&gt;getModule())===null)
<span class="ln">263</span>                 $parent=Yii::app();
<span class="ln">264</span>             if($parent-&gt;beforeControllerAction($this,$action))
<span class="ln">265</span>             {
<span class="error"><span class="ln error-ln">266</span>                 $this-&gt;runActionWithFilters($action,$this-&gt;filters());
</span><span class="ln">267</span>                 $parent-&gt;afterControllerAction($this,$action);
<span class="ln">268</span>             }
<span class="ln">269</span>         }
<span class="ln">270</span>         else
<span class="ln">271</span>             $this-&gt;missingAction($actionID);
</pre></div>			</td>
		</tr>
						<tr class="trace app expanded">
			<td class="number">
				#6			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/home/soundguy95/surveys.lyceum.ws/ls/application/controllers/AdminController.php(158): <strong>CController</strong>-&gt;<strong>run</strong>("survey")				</div>

				<div class="code"><pre><span class="ln">153</span>                 Yii::app()-&gt;session['redirectopage'] = Yii::app()-&gt;request-&gt;requestUri;
<span class="ln">154</span> 
<span class="ln">155</span>                 $this-&gt;redirect($this-&gt;createUrl('/admin/authentication/login'));
<span class="ln">156</span>             }
<span class="ln">157</span> 
<span class="error"><span class="ln error-ln">158</span>             return parent::run($action);
</span><span class="ln">159</span>     }
<span class="ln">160</span> 
<span class="ln">161</span>     /**
<span class="ln">162</span>     * Routes all the actions to their respective places
<span class="ln">163</span>     *
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#7			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/home/soundguy95/surveys.lyceum.ws/ls/framework/web/CWebApplication.php(276): <strong>AdminController</strong>-&gt;<strong>run</strong>("survey")				</div>

				<div class="code"><pre><span class="ln">271</span>         {
<span class="ln">272</span>             list($controller,$actionID)=$ca;
<span class="ln">273</span>             $oldController=$this-&gt;_controller;
<span class="ln">274</span>             $this-&gt;_controller=$controller;
<span class="ln">275</span>             $controller-&gt;init();
<span class="error"><span class="ln error-ln">276</span>             $controller-&gt;run($actionID);
</span><span class="ln">277</span>             $this-&gt;_controller=$oldController;
<span class="ln">278</span>         }
<span class="ln">279</span>         else
<span class="ln">280</span>             throw new CHttpException(404,Yii::t('yii','Unable to resolve the request "{route}".',
<span class="ln">281</span>                 array('{route}'=&gt;$route===''?$this-&gt;defaultController:$route)));
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#8			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/home/soundguy95/surveys.lyceum.ws/ls/framework/web/CWebApplication.php(135): <strong>CWebApplication</strong>-&gt;<strong>runController</strong>("admin/survey/sa/insert")				</div>

				<div class="code"><pre><span class="ln">130</span>             foreach(array_splice($this-&gt;catchAllRequest,1) as $name=&gt;$value)
<span class="ln">131</span>                 $_GET[$name]=$value;
<span class="ln">132</span>         }
<span class="ln">133</span>         else
<span class="ln">134</span>             $route=$this-&gt;getUrlManager()-&gt;parseUrl($this-&gt;getRequest());
<span class="error"><span class="ln error-ln">135</span>         $this-&gt;runController($route);
</span><span class="ln">136</span>     }
<span class="ln">137</span> 
<span class="ln">138</span>     /**
<span class="ln">139</span>      * Registers the core application components.
<span class="ln">140</span>      * This method overrides the parent implementation by registering additional core components.
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#9			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/home/soundguy95/surveys.lyceum.ws/ls/framework/base/CApplication.php(162): <strong>CWebApplication</strong>-&gt;<strong>processRequest</strong>()				</div>

				<div class="code"><pre><span class="ln">157</span>      */
<span class="ln">158</span>     public function run()
<span class="ln">159</span>     {
<span class="ln">160</span>         if($this-&gt;hasEventHandler('onBeginRequest'))
<span class="ln">161</span>             $this-&gt;onBeginRequest(new CEvent($this));
<span class="error"><span class="ln error-ln">162</span>         $this-&gt;processRequest();
</span><span class="ln">163</span>         if($this-&gt;hasEventHandler('onEndRequest'))
<span class="ln">164</span>             $this-&gt;onEndRequest(new CEvent($this));
<span class="ln">165</span>     }
<span class="ln">166</span> 
<span class="ln">167</span>     /**
</pre></div>			</td>
		</tr>
						<tr class="trace app expanded">
			<td class="number">
				#10			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/home/soundguy95/surveys.lyceum.ws/ls/index.php(171): <strong>CApplication</strong>-&gt;<strong>run</strong>()				</div>

				<div class="code"><pre><span class="ln">166</span>  *
<span class="ln">167</span>  */
<span class="ln">168</span> require_once BASEPATH . 'yii' . EXT;
<span class="ln">169</span> require_once APPPATH . 'core/LSYii_Application' . EXT;
<span class="ln">170</span> 
<span class="error"><span class="ln error-ln">171</span> Yii::createApplication('LSYii_Application', APPPATH . 'config/config' . EXT)-&gt;run();
</span><span class="ln">172</span> 
<span class="ln">173</span> /* End of file index.php */
<span class="ln">174</span> /* Location: ./index.php */</pre></div>			</td>
		</tr>
				</tbody></table>
	</div>

	<div class="version">
		2012-07-20 19:45:45 Apache <a href="http://www.yiiframework.com/">Yii Framework</a>/1.1.10	</div>
</div>

<script type="text/javascript">
/*<![CDATA[*/
var traceReg = new RegExp("(^|\\s)trace-file(\\s|$)");
var collapsedReg = new RegExp("(^|\\s)collapsed(\\s|$)");

var e = document.getElementsByTagName("div");
for(var j=0,len=e.length;j<len;j++){
	if(traceReg.test(e[j].className)){
		e[j].onclick = function(){
			var trace = this.parentNode.parentNode;
			if(collapsedReg.test(trace.className))
				trace.className = trace.className.replace("collapsed", "expanded");
			else
				trace.className = trace.className.replace("expanded", "collapsed");
		}
	}
}
/*]]>*/
</script>



</body></html>
PHP notice.htm (17,579 bytes)   
Bug heat4
Complete LimeSurvey version number (& build)120720
I will donate to the project if issue is resolvedNo
BrowserChrome 20.0.1132.57 (Official Build 145807) m
Database type & versionMySQL 5.1.53-log
Server OS (if known)Debian
Webserver software & version (if known)Apache
PHP Version5.3.13

Users monitoring this issue

seanrife

Activities

c_schmitz

c_schmitz

2012-07-21 18:11

administrator   ~19898

We released RC7 due to this error.

Issue History

Date Modified Username Field Change
2012-07-21 04:55 seanrife New Issue
2012-07-21 04:55 seanrife File Added: PHP notice.htm
2012-07-21 07:09 seanrife Issue Monitored: seanrife
2012-07-21 18:11 c_schmitz Note Added: 19898
2012-07-21 18:11 c_schmitz Status new => closed
2012-07-21 18:11 c_schmitz Assigned To => c_schmitz
2012-07-21 18:11 c_schmitz Resolution open => fixed
2012-07-21 18:11 c_schmitz Fixed in Version => 2.00RC7
2019-11-01 17:25 c_schmitz Category Survey design => Survey editing