[CodeIgniter]:在控制器中执行重定向功能之前的延迟时间

时间:2017-09-05 07:17:09

标签: php codeigniter

我需要延迟执行重定向功能以显示警报消息。我已经使用了睡眠功能,但结果是它在从视图调用方法之前只是延迟了。不要在方法上执行某些行,延迟并执行下一行。

这是我的代码:

$("select#pdp-width-select").val('83720')[0].dispatchEvent(event);

2 个答案:

答案 0 :(得分:0)

php sleep()函数延迟执行整个程序。所以你的程序等待3秒,而不是从脚本顶部执行(Javascript也在等待后执行)。

您可以使用标题功能,如下所示:

header( "refresh:3; url=your_url_here" ); 

有关睡眠功能的更多信息http://php.net/manual/en/function.sleep.php

答案 1 :(得分:0)

使用javascript执行此操作更简洁:

if($thisJumlah != 0) {
    echo '<script language="javascript">' .
     'alert("Warning! The role you are to going delete has some employees");' .
     'setTimeout(function(){ window.location.href = "/role"; }, 3000);' .
     '</script>';
}
else
{
    $this->modelapp->delete($tableName, $idName, $thisID);
    redirect('role');
}

首先,您使用 setTimeout 提醒您的消息,您将延迟重定向3000毫秒(3秒)到您的网址“/ role”。