-2

私はphp関数でそれを使用していますが、phpでエラーが発生しました。これは問題だと思います( SyntaxError: missing ; before statement line 133 )私のphp関数は次のとおりです:

<?php
function VISION_TO_REPORT_MESSAGES($report_tag = "test", $subject_parameters = '', $message_parameters = '', $output=true, $lang = '')
{
// action report messages templates ...
	$report_tag = strtolower(trim($report_tag));
if (strlen($report_tag))
{        

		$report_message = array();
		$db = new clsDBcms();
        $SQL = " SELECT * FROM report_messages WHERE  report_tag= " . $db->ToSQL($report_tag, ccsText) . " LIMIT 1 ";		
       $db->query($SQL);
    $Result = $db->next_record();
    if ($Result)
	{
		$report_message['lang'] = $db->f("lang");
		if(function_exists("VISION_TO_TRANSLATE"))
		{
		$report_message['subject'] = VISION_TO_MULTI_CONTENT($db->f("subject"),$lang);
		$report_message['message'] = VISION_TO_MULTI_CONTENT($db->f("message"),$lang);
		}
		else
		{
		$report_message['subject'] = $db->f("subject");
		$report_message['message'] = $db->f("message");
		}

		$report_message['css'] = $db->f("css");
		$report_message['redirect_to'] = $db->f("redirect_to");
		$report_message['type'] = $db->f("type");

			if(!empty($subject_parameters))
			{
			while (list($this_tag,$value) = each($subject_parameters))
			$report_message['subject']  = preg_replace("/".$this_tag."/i", $value, $report_message['subject']);
			}

			if(!empty($message_parameters))
			{
			while (list($this_tag,$value) = each($message_parameters))
			$report_message['message']  = preg_replace("/".$this_tag."/i", $value, $report_message['message']);
			}
		}
        $db->close();
		if($output == true && isset($report_message['message']))
		//$output = '<script type="text/javascript">';
		$output = 'toastr.options ={ 
		  "closeButton": false,
			"debug": false,
			"newestOnTop": false,
			"progressBar": true,
			"positionClass": "toast-top-center",
			"preventDuplicates": false,
			"onclick": null,
			"showDuration": "300",
			"hideDuration": "1000",
			"timeOut": "5000",
			"extendedTimeOut": "1000",
			"showEasing": "swing",
			"hideEasing": "linear",
			"showMethod": "fadeIn",
			"hideMethod": "fadeOut",
			}';
		$output .=  'toastr.' . $report_message['css'] . "('" . str_replace("'", "\\'", htmlentities($report_message['message'])) . "'" . (isset($report_message['subject']) ? ", '" . str_replace("'", "\\'", htmlentities($report_message['subject'])) . "'" : null) . ');';
        return $output;
    }		
	}
?>

私のhtmlの133行目は次のとおりです。

toastr.success('The User record has been successfully updated.', 'Record Updated.');

私のページの頭で私が使用する:

<link href="//cdnjs.cloudflare.com/ajax/libs/toastr.js/2.1.2/toastr.css" rel="stylesheet"/>
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/toastr.js/latest/js/toastr.js"></script>

<link href="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.5/css/bootstrap.css" rel="stylesheet"/>
<script src="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.5/js/bootstrap.js"></script>
4

1 に答える 1

0

toastrにブートストラップを追加するときに問題はありませんが、コードにはいくつかの問題があります。

  1. 何よりもまず、コードを共有する場合は、実際に実行するために必要なライブラリを含めるようにしてください。以下の私の例、またはタグの説明を使用できます。
  2. toastr options = {次のように、オブジェクトのoptionsプロパティにアクセスするためのピリオドが必要です。toastrtoastr.options = {
  3. toastr-success('The...次のように、成功メソッドを呼び出すためにハイフンではなくピリオドを使用する必要があるのと同じこと:toastr.success('The...
  4. 自動的にエスケープ<strong>する&lt;strong&gt;と、html としてレンダリングされる可能性はありません。 もう逃げられた! したがって、通常の html と同じように括弧を含めて、toastr に次のようにエスケープしないように指示する必要があります。toastr.options.escapeHtml = false;

これは Stack Snippets で動作するデモです。質問をするときは、これを将来のテンプレートとして使用してください。これにより、人々はコードの実際の問題がどこにあるかを確認できます。

toastr.options = {
  "closeButton": false,
  "debug": false,
  "newestOnTop": false,
  "progressBar": true,
  "positionClass": "toast-top-center",
  "preventDuplicates": false,
  "onclick": null,
  "showDuration": "300",
  "hideDuration": "1000",
  "timeOut": "5000",
  "extendedTimeOut": "1000",
  "showEasing": "swing",
  "hideEasing": "linear",
  "showMethod": "fadeIn",
  "hideMethod": "fadeOut",
  "escapeHtml": false
}

toastr.success('The <strong>User</strong> record has been successfully updated.', 'Record Updated.');
<link href="//cdnjs.cloudflare.com/ajax/libs/toastr.js/2.1.2/toastr.css" rel="stylesheet"/>
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/toastr.js/latest/js/toastr.js"></script>

<link href="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.5/css/bootstrap.css" rel="stylesheet"/>
<script src="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.5/js/bootstrap.js"></script>

于 2015-09-25T03:05:15.013 に答える