Forumlar / National / Russian / Тех. поддержка / переезд с PHP 5.4  на PHP 8.1 и Cotonti 0.9.21

Kabak
#45776 2022-12-29 09:09

благодарю

Добавлено 4 секунды спустя:

/**
	 * Assigns a template variable or an array of them
	 *
	 * @param mixed $name Variable name or array of values
	 * @param mixed $val Tag value if $name is not an array
	 * @param string $prefix An optional prefix for variable keys
	 * @return XTemplate $this object for call chaining
	 */
	public function assign($name, $val = NULL, $prefix = '')
	{
		if (is_array($name))
		{
			foreach ($name as $key => $val)
			{
				$this->vars[$prefix.$key] = $val;
			}
		}
		else
		{
			$this->vars[$prefix.$name] = $val;
		}
		return $this;
	}

 

$this->vars[$prefix.$key] = $val;   тут корректно удет  если $val = null ?

Добавлено 7 минут спустя:

Как сделать так, чтобы  этот NULL был  пустой строкой = ""  ?
Warning: Undefined array key "feedback_user" in /var/www/apcfix/plugins/feedback/inc/feedback.functions.php on line 51
Warning: Undefined array key "feedback_user" in /var/www/apcfix/plugins/feedback/inc/feedback.functions.php on line 52
Warning: Undefined array key "feedback_email" in /var/www/apcfix/plugins/feedback/inc/feedback.functions.php on line 53
Warning: Undefined array key "feedback_email" in /var/www/apcfix/plugins/feedback/inc/feedback.functions.php on line 54
Warning: Undefined array key "feedback_text" in /var/www/apcfix/plugins/feedback/inc/feedback.functions.php on line 55
Warning: Undefined array key "feedback_text" in /var/www/apcfix/plugins/feedback/inc/feedback.functions.php on line 56

 

/**
 * Generates a feedback form
 * @param  array   $rdata Form data
 * @param  mixed   $tpl   Template code or existing object
 * @param  string  $name  Form name (identifier)
 * @param  boolean $ajax  Whether the form is ajax or standalone
 * @return mixed          Rendered HTML or just TRUE, depending on $tpl type
 */
function feedback_form($rdata = array(), $tpl = 'feedback.global', $name = 'feedback-global', $ajax = true)
{
	global $cot_extrafields, $db_feedback, $cfg, $sys, $usr, $L;
	static $js_included = false;

	if (!is_array($rdata))
	{
		$rdata = array();
	}

	if (is_object($tpl))
	{
		$tt = $tpl;
	}
	else
	{
		$tt = new XTemplate(cot_tplfile($tpl, 'plug'));
	}

	$tt->assign(array(
		'FEEDBACK_FORM_SEND'       => cot_url('plug', 'e=feedback'),
		'FEEDBACK_FORM_USER_ID'    => cot_inputbox('hidden', 'ruserid', $usr['id']),
		'FEEDBACK_FORM_TOKEN'      => cot_inputbox('hidden', 'x', $sys['xk']),
		'FEEDBACK_FORM_AUTHOR'     => ($usr['id'] == 0) ? cot_inputbox('text', 'ruser', $rdata['feedback_user']) : cot_inputbox('text', 'ruser', $usr['name'], 'readonly="readonly"'),
		'FEEDBACK_FORM_AUTHOR_RAW' => ($usr['id'] == 0) ? $rdata['feedback_user'] : $usr['name'],
		'FEEDBACK_FORM_EMAIL'      => ($usr['id'] == 0) ? cot_inputbox('text', 'remail', $rdata['feedback_email']) : cot_inputbox('text', 'remail', $usr['profile']['user_email'], 'readonly="readonly"'),
		'FEEDBACK_FORM_EMAIL_RAW'  => ($usr['id'] == 0) ? $rdata['feedback_email'] : $usr['profile']['user_email'],
		'FEEDBACK_FORM_TEXT'       => cot_textarea('rtext', $rdata['feedback_text'], 3, 36),
		'FEEDBACK_FORM_TEXT_RAW'   => $rdata['feedback_text'],
		'FEEDBACK_FORM_NAME'       => cot_inputbox('hidden', 'name', $name),
		'FEEDBACK_FORM_ID'         => $name
	));

 

Добавлено 51 минута спустя:

просто сделать так  

 

	$rdata['feedback_text'] = "";
	$rdata['feedback_user'] = "";
	$rdata['feedback_email']= "";

до вызова 

    $tt->assign(array(
        'FEEDBACK_FORM_SEND'       => cot_url('plug', 'e=feedback'),
        'FEEDBACK_FORM_USER_ID'    => cot_inputbox('hidden', 'ruserid', $usr['id']),
        'FEEDBACK_FORM_TOKEN'      => cot_inputbox('hidden', 'x', $sys['xk']),
        'FEEDBACK_FORM_AUTHOR'     => ($usr['id'] == 0) ? cot_inputbox('text', 'ruser', $rdata['feedback_user']) : cot_inputbox('text', 'ruser', $usr['name'], 'readonly="readonly"'),
        'FEEDBACK_FORM_AUTHOR_RAW' => ($usr['id'] == 0) ? $rdata['feedback_user'] : $usr['name'],
        'FEEDBACK_FORM_EMAIL'      => ($usr['id'] == 0) ? cot_inputbox('text', 'remail', $rdata['feedback_email']) : cot_inputbox('text', 'remail', $usr['profile']['user_email'], 'readonly="readonly"'),
        'FEEDBACK_FORM_EMAIL_RAW'  => ($usr['id'] == 0) ? $rdata['feedback_email'] : $usr['profile']['user_email'],
        'FEEDBACK_FORM_TEXT'       => cot_textarea('rtext', $rdata['feedback_text'], 3, 36),
        'FEEDBACK_FORM_TEXT_RAW'   => $rdata['feedback_text'],
        'FEEDBACK_FORM_NAME'       => cot_inputbox('hidden', 'name', $name),
        'FEEDBACK_FORM_ID'         => $name
    ));

Так ?

Добавлено 7 минут спустя:

Warning: Undefined array key "timeback" in /var/www/apcfix/plugins/hits/hits.admin.home.php on line 23

Что нужно изменить в 23 -й строке ?  или где-то ещё что-то изменилось в движке ?


Bu konu Kabak tarafından düzenlendi(2022-12-29 10:56, 1 yıllar önce)