草庐IT

带有变量的PHP简单html dom解析器div id

我是PHP新手,遇到了一些小问题。如何使用简单的htmldom解析器搜索变量?我的id是“ti”,有几个同名的div。我只需要第一个。如果我把ti而不是$variable放到代码中,代码就可以工作。谢谢!find('div[id=$variable]',0);if($ret){echo$ret->innertext;}?> 最佳答案 您需要使用双引号(即"而不是')在PHP字符串中嵌入变量,如下所示:$ret=$html->find("div[id=$variable]",0); 关于带

php - 循环中不唯一 id 的可能性是多少

我正在遍历一个数组,并为每条记录生成带有uniqid的唯一标识符:foreach($emailsByCampaignas$campaign=>$emails){$campaignHex=$this->strToHex($campaign);$values="(";for($i=0;$iescape($emails[$i]).",'".uniqid(true)."'),(";}}官方文档说uniqid是根据微秒生成id的。循环的两个周期将在不到两秒内通过并导致不唯一ID的可能性有多大? 最佳答案 uniqid()根据自Unix纪元-1

php - 我应该在应用程序前端隐藏数据库主键(id)吗

我正在开发一个允许版主编辑用户信息的应用程序。所以,目前,我有这样的URLhttp://xxx.xxx/user/1/edithttp://xxx.xxx/user/2/edit我在这里有点担心,因为我直接公开了数据库中的用户表主键(id)。我只是从URL中获取ID(例如:从上面的URL中获取1和2),使用ID查询数据库并获取用户信息(当然,我清理了输入,即来自URL的ID)。请注意:我正在验证每个请求以检查版主是否有权编辑该用户这就是我正在做的。这样安全吗?如果没有,我应该怎么做?我可以想到一个替代方案,即为具有25个字符键的用户表设置一个单独的列,并使用URL中的键和查询数据库中的

php - Laravel 5:如何在路由中使用 Auth::user()->id

我尝试使用phpLaravel框架创建一个应用程序。当我在我的路由文件中使用Auth::user()->id时>我收到错误消息“尝试获取非对象的属性”。那么我该如何解决呢?这是我的路由文件`'Auth\AuthController','password'=>'Auth\PasswordController',]);$common_variable=App\MyModel::where('site_id',Auth::user()->id)->count();view()->share(compact('common_variable'));` 最佳答案

php - 是否有可能在 PHP 中使用 file_get_contents 破坏 CSRF token 验证

在每个session的表单上使用token的CSRF预防方法是一种流行的方法。但是,如果PHP的file_get_contents可以获取跨域文件表单的内容,我不明白这种token方式如何保护-->它可以获取表单上的token并使用它。那么这种token方式是如何工作的呢? 最佳答案 如果我很好地理解你的问题,你正在想象这样一个可能的漏洞利用:攻击者创建一个PHP页面,该页面将向目标用户呈现虚假表单攻击者的PHP脚本将执行file_get_contents从他试图利用的目标站点下载表单(HTML),并从下载的HTML中删除CSRFt

javascript - 如何将 javascript 变量作为 $FILE 发送到 PHP 服务器

我们在服务器上有PHP代码,该代码将文件接收到$_FILE中,然后根据用户/安全考虑存储它们。在客户端,我们目前可以将文件按原样发送到服务器,或者我们希望在本地处理文件(在浏览器的js中的内存中),然后将文件传递到服务器。我们可以使用JSON将处理后的文件发布到服务器,但是这样做存在问题。我们更愿意将客户端的javascript变量的内容发送到服务器以在$_FILE中接收。(我们不能假设客户端将能够在本地保存文件。)我们是否必须以某种方式模仿FORM提交?我们如何发送一个javascript变量以作为PHP$_FILE接收?谢谢!更新Blob看起来绝对是正确的方向,但我们注意到Blob

php - 由于 'cannot be blank' 验证规则,在 save() 上出现 'file' 错误

我在需要图像文件时遇到此错误:“预览不能为空”。尽管我填写了这个字段。我的规则:publicfunctionrules(){return[[['name','preview','date','author_id'],'required','on'=>'update'],[['name','preview','date','author_id'],'required','on'=>'create'],[['date_create','date_update','author_id'],'integer'],[['preview'],'file','skipOnEmpty'=>'false

php - PHP函数parse_ini_file()真的有那么危险吗?

一些托管服务提供商禁用了PHP函数parse_ini_file()。任何在那里使用它的尝试都将失败,并显示错误“parse_ini_file()出于安全原因已被禁用”。这种配置是如此普遍,以至于作为最流行的CMS之一的Joomla避免直接使用parse_ini_file()而是将任务分为两步:使用file_get_contents()读取文件内容使用parse_ini_string()解析值,这是奇怪的允许,因此不被视为安全风险(WTF?)我的问题是,如何使用parse_ini_file()可以被视为安全威胁,或者如何禁用PHP函数parse_ini_file()可以提高安全性?会不会

php - 拉拉维尔 : phpunit cannot open file ExampleTest. PHP

您好,我在LaravelPHPUnit中退出了新版本,出现以下错误:Laravel:phpunitcannotopenfileExampleTest.php我不知道为什么会收到此错误。我在全局范围内安装了PHPUnit,当我在终端中运行“phpunit”时,它运行良好。但我想在特定文件上运行它,例如:phpunitExampleTest提前致谢。 最佳答案 确保您位于项目根目录并引用测试文件夹中的文件。例子:phpunittests/ExampleTest.php 关于php-拉拉维尔:

PHP 无法从 URL 获取文本(file_get_content,CURL 不起作用)

我正在尝试从以下网址获取文本。http://stp.stheadline.com/data/indexNewsMarquee.json我尝试了几种方法,但都没有用。我现在真的很绝望,请帮助我并提前致谢。附言我已经在我的ini.php中启用了allow_url_fopen。附言我正在使用XAMPPv3.3.2和PHPv5.6.23以下是我尝试过(但失败了)的代码curl$ch=curl_init();curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);curl