Я получаю эту ошибку в PHP Laravel при доступе к данным в лезвии.
Использование неопределенной константы user_id — предполагается «user_id» (это вызовет ошибку в будущей версии PHP) (Просмотр: /home/beatsbaj/public_html/resources/views/user/reset-password.blade.php)
#Here is My Controller's function
public function resetPassword()
{
try
{
$token_id = Crypt::decrypt(Request::segment(2));
$token = Crypt::decrypt(Request::segment(3));
$data = Remembertoken::select('id', 'token_id', 'token', 'user_id')->where('token_id', $token_id)->get()->first();
if(!$data)
{
return abort(404);
}
else if($data)
{
if($data->token != $token)
{
return abort(404);
}
else if($data->token == $token)
{
return view('user.reset-password', ["token_id"=>$token_id, "user_id"=>$data->user_id]);
}
}
}
catch(\Exception $e)
{
abort(404);
}
}
Моя часть Ajax в лезвии, когда я обращаюсь к переменной user_id.
<script>
$(document).ready(function(){
$("#reset-pass-form").submit(function(event) {
event.preventDefault();
var form = $(this);
form = form.serialize(form);
$.ajax({
url:"{{url('/reset-password-now')}}",
type:"post",
data:form,
success:function(response){
console.log(response);
console.log("{{user_id}}"); // Getting Error Here
},
error:function(xhr, ajaxOptions, thrownError){
alert(xhr.status);
},
});
});
});
</script>
console.log("{{user_id}}");
должно бытьconsole.log("{{$user_id}}");
. Если вы опустите$
перед переменной, она будет считаться константой. Поскольку у вас нет константы с именемuser_id
, PHP предполагает, что это строка, и выводит буквальный текстuser_id
. Это поведение может измениться в будущих версиях. - person Magnus Eriksson   schedule 13.09.2018