草庐IT

symfony-dependency-injection

全部标签

php - 使用 str_replace 是否足以防止 SQL 注入(inject)攻击?

编辑如果您打算回答这个问题,请至少阅读它。不要简单地看标题,然后谷歌'sqlinjectionphp',并将结果粘贴为答案首先,我很清楚有很多资源可用于如何最好地防止SQL注入(inject),但我的问题具体是关于是否只需很少的努力就足够了。我签约的一个组织最近被告知,他们之前的承包商开发的合作伙伴(PHP)网站被发现存在重大安全问题(我个人最喜欢的是在URL中使用字符串“紧急”,您可以获得未经身份验证的信息访问站点中的任何页面...)我被要求审查PHP站点的安全性并突出显示任何主要问题。我从以前使用该站点的经验中知道,编码标准确实很糟糕(例如,跨页面重复的大量代码,差异约为5%,数百

php - 使用 Symfony 获取未登录用户的安全 token

我如何才能为任何用户获取安全token,而不仅仅是当前登录的用户?我希望能够对从数据库中获取的用户调用isGranted() 最佳答案 isGranted()来自安全服务,因此在不调整session状态的情况下很难/没有必要使用它来获取角色。不要误会我的意思,这绝对有可能......这会起作用,例如:publicfunctionstrangeAction(){//GetyourUser,howeveryounormallygetit$user=$userRepository->find($id);//Savethecurrentto

php - 使用 Symfony 从 Doctrine 模型创建数据库

我已经使用SQLCREATEDATABASE命令创建了一个新数据库来托管我的应用程序表。我现在将使用Doctrine从我的Symony2.1项目生成数据库。我已经有了正确的映射YML-PHP实体,但是当我尝试使用命令时phpapp/vendorsdoctrine:schema:create它在我的应用程序中运行的查询失败。我不明白的是为什么它似乎在尝试启动我的包,但显然它失败了,因为我执行的查询找不到表。如何生成新数据库?Basetableorviewnotfound:1146Table'mydatabase.mytable_menu'doesn'texist

php - 如何覆盖 symfony2 中的注销操作

我知道默认情况下symfony2安全Controller可以执行注销操作。当我们像这样提供注销路径时,它工作正常。但是我需要执行一些操作,比如在发生注销时将一些数据存储到数据库中。那么我该如何实现呢。如果有任何想法请帮助我。 最佳答案 您需要在routing.yml或注释中为注销操作定义新规则(由您决定)logout_user:pattern:/logoutUserdefaults:{_controller:YourBundle:YourController:logout}然后它只是像这样为这个Action编写代码:publicfu

php - 在 Symfony 2 中创建 2 个具有相同形式的不同实体

是否可以创建2个具有相同表单和操作的相关实体?如果是,如何?我想在第一步注册中创建一个新用户及其相关问卷。谢谢,卢卡 最佳答案 您可以为相关实体(调查问卷)创建一个表单类型,并将其用作用户表单类型中的字段类型。这称为表单嵌套。//src/Acme/DemoBundle/Form/Type/QuestionnaireType.phpnamespaceAcme\DemoBundle\Form\Type;useSymfony\Component\Form\AbstractType;useSymfony\Component\Form\For

php - 使用 safemysql 类来防止 SQL 注入(inject)是个好主意吗?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。我想知道是否有人对这个脚本/类有经验safemysql?(本脚本的开发者除外)它被宣布为mysql查询最安全的方式,可以防止站点遭受sql注入(inject)......我真的很喜欢你使用它的方式。但它真的“安全”吗?这是好的代码吗?…关闭mysql连接怎么样,这在这个脚本中没有发生…不是必要的吗?很乐意与您讨论这个问题!

php - symfony2 错误:sessionHandler::read()

我在生产服务器中遇到了这个错误。在本地服务器上一切正常。request.CRITICAL:UncaughtPHPExceptionErrorException:Warning:SessionHandler::read():open(C:/Inetpub/vhosts//tanur.ir/vhosts/tanur.ir/private/session\sess_3olhvc8osdevomrh72bhsra4k6,O_RDWR)failed:Nosuchfileordirectory(2)inC:\Inetpub\vhosts\tanur.ir\httpdocs\Symfony\vend

php - 检查用户是否在 symfony 中被重定向?

我的symfony项目中有一条路线受到限制,所以如果我尝试在未登录的情况下前往那里,我将被重定向到登录页面。我想区分什么时候我试图在没有登录的情况下进入限制区域,什么时候我直接进入登录页面。关于如何在symfony中执行此操作的任何线索?更新通过区分,我的意思是通过某种方式来检查用户是否通过直接转到该url登陆了登录页面,或者用户是否因为试图访问受限页面而登陆了登录页面。 最佳答案 Thomas的解决方案很好。这是一个替代方案。知道这一点并且只有在未登录的情况下您才会被重定向,您可以使用附加参数让您的安全防火墙重定向。安全.yml.

php - Symfony 2 Embedded Forms: Catchable Fatal Error: Argument 1 passed to Entity::addProperty must be an instance of XX\MyClass, 数组给定

我已经读过this和this和其他人,但没有人解决我的问题。我已经删除了所有可能的内容并将范围缩小到一个字段:地址。当我尝试关注thistutorial时,如果我遵循它,一切都会正常,从一个全新的新项目开始。但是当我在我的其他项目中手动执行时,我得到了这个错误:“可捕获的fatalerror:传递给BN\Bundle\MyBundle\Entity\PersonTeacher::addAdresse()的参数1必须是BN\Bundle\MyBundle\Entity\Adresse的实例,C:\Users\Olivier\PhpstormProjects\中给出的数组My\My\src

php - symfony2 和 swiftmailer 的内存泄漏

我正在使用symfony2命令作为cron作业来向站点成员发送批量电子邮件。实际代码:$output->writeln('Before:'.(memory_get_usage()/1024/1024));$mailer->send($m);$output->writeln('After:'.(memory_get_usage()/1024/1024));我的结果:Before:182.38MBAfter:183.73MB每次我发送电子邮件时,swiftmailer都会额外消耗1+MB的内存。这似乎不对,但每次发送新消息时内存都会增加。我在这里做错了什么吗?