将 laravel 中的数据库值与 javascript 值进行比较

Posted

技术标签:

【中文标题】将 laravel 中的数据库值与 javascript 值进行比较【英文标题】:Compare database value from laravel to a javascript value 【发布时间】:2016-06-15 11:02:46 【问题描述】:

我有一个简单的座位表,上面有一个指定的 IP 地址。它是通过javascript生成的。而且我有一个数据库,偶尔会由 IP 地址和计算机名称填充。我使用 Laravel 查询数据库。

Routes.php

Route::get('seatplan', 'SeatplanController@seatplan');

控制器

public function seatplan()


$ipadd = Client::all();
return View::make('seatplan',['ipadd' => $ipadd]);


刀片

@foreach($ipadd as $ipadds)
    $ipadds->ipadd
    <br />
@endforeach

如何比较它们,以便在数据库中插入新数据时,我可以比较 IP 地址并显示计算机名称。 这是我的 js

var cols = document.getElementsByClassName("col");
var seatNum = 1;
var n = "192.168.240.";

for (var i = cols.length - 1; i >= 0; i--) 
  if (i % 2 == 0) 
  for (var j = 0; j < cols[i].children.length; j++) 
    cols[i].children[j].innerhtml = n.concat(seatNum);
    seatNum++;
  
 else 
  for (var j = cols[i].children.length - 1; j >= 0; j--) 
    cols[i].children[j].innerHTML = n.concat(seatNum);
    seatNum++;
   
  


http://codepen.io/anon/pen/eZNzoV

http://i.imgur.com/WNaVkX0.png?1

【问题讨论】:

【参考方案1】:

你的问题不是很清楚,但我理解你想要做的是确定哪些座位被占用,对吗?

如果是这样,只需从您的 PHP 数据生成一个 JS 变量。不要做foreach,而是做:&lt;script&gt;var takenSeats = &lt;?php json_encode($ipadd) ?&gt;&lt;/script&gt;。我不知道Laraval,所以我使用纯PHP,但重点是使用json_encode,这样您的PHP数组将呈现为JS数组并分配给全局 JS 变量。

然后更新你的 JS 以拥有(例如):

var text = n.concat(seatNum);
if (takenSeats.indexOf(ip) !== -1) 
  ip += ' taken';

cols[i].children[j].innerHTML = text;

由于此代码需要初始化 takenSeats 变量,请确保将 json_encode 放在之前。

这里是a fork of your codepen illustrating this

【讨论】:

您说得对,先生!在 PHP 中获取变量后,是否将 var takeSeats = [] 留空? 如果你说的是codepen中的代码,你应该删除。由于 codepen 仅是 HTML/CSS/JS(没有 PHP),因此我不得不通过这种方式初始化变量。但是一旦你用 PHP 生成了变量,就删除它。 takenSeats = [] 你清空你的数组,你不会想要那个:) 啊我明白了.. 所以这些值只是存储在 var takeSeats = ? 是的,这就是为什么首先有这个很重要,否则在你的JS代码中,它将是undefined 酷!我会找到关于 laravel 部分的方法。谢谢先生:D

以上是关于将 laravel 中的数据库值与 javascript 值进行比较的主要内容,如果未能解决你的问题,请参考以下文章

用逗号将每个值与laravel中的多个选择分开

laravel 获取要传递给 laravel Blade 的数据,但是是 json 格式

如何将数据值与数组值匹配

如何将表单输入中的用户 ID 值与数据库中的记录相匹配?

将整数文本字段值与java中的mysql数据进行比较

如何将数据库中的值与 python 输入进行比较