我有个问题。我想在我的数据库中插入每个访问者的ipad地址和访问日期,但每次刷新页面或打开新闻时都会插入ip。我的代码:新闻控制器:
public function __construct(){
$this->beforeFilter('csrf', array('on'=>'post'));
$sIpAddress = Visitors_lib::getIp();
$dDateVisit = time("Y/m/d H:i:s");
$oVisitor = new 'Visitors();
$bInsert = $oVisitor->addVisitor($sIpAddress,$dDateVisit);
}
访问者型号:
public function addVisitor($sIpAdress,$dDate){
$oVisitor = new Visitors();
$oVisitor->ipaddress = $sIpAdress;
$oVisitor->date = $dDate;
$oVisitor->save();
}
所以我只想插入一个ip。在这种情况下,当我点击新闻时,ip会插入数据库,因此对于访问者来说,1次点击=1次插入。
在输入之前检查它是否已经存在:
public function addVisitor($ipaddresse, $date)
{
if ( ! $this->where(compact('ipaddresse'))->first())
{
static::create(compact('ipaddresse', 'date'));
}
}