0
我試圖在我的php控制器中創建一個動態javascript代碼,並且想要將其返回到作爲JSON的角度js的UI,但是我得到的是''
作爲迴應。無法獲取包含javascript代碼的json中的php變量的返回值
這是我的PHP代碼,我想返回的JSON:
$user_id = Auth::user()->id;
$bcamp = Bcamp::where('user_id','=',intval($user_id))->first();//TODO How to clarify which campaign should be showed.
$bcamp_id = $bcamp->_id;
$width = $this->request->input('width');
$height = $this->request->input('height');
$script = "<script type='text/javascript'>";
$script .= "!(function(w, d) {";
$script .= "'use strict';";
$script .= "var ad = { user: '".$user_id."', campaign_id: '".$bcamp_id."', seat_id: '".$seat_id."', width: '".$width."', height: '".$height."', id: 'iranad-' + ~~(Math.random() * 999999 ) },";
$script .= "h = d.head || d.getElementsByTagName('head')[ 0 ],";
$script .= "s = location.protocol + '//localhost/banneri/iranad/ia.js';";
$script .= "if (typeof w.anetworkParams != 'object')";
$script .= "w.anetworkParams = {};";
$script .= "d.write('<div id=\"' + ad.id + '\" style=\"display: inline-block\"></div>');";
$script .= "w.anetworkParams[ ad.id ] = ad;";
$script .= "d.write('<script type=\"text/javascript\" src=' + s + ' async></script>');";
$script .= "})(this, document);";
$script .= "</script>";
$response = \Response::json($script, $statusCode);
return $response;
我認爲這是逃避的腳本。如何解決這個問題?
FYI:這是Laravel 5.3
框架,我參與的工作
如果您使用的是AJAX,您希望'echo'而不是'return' – saravanabawa
如果您沒有使用Ajax,而是在控制器上設置所需的參數並在您的視圖文件上創建JavaScript代碼。 json在數組上工作。 –