php – MySQL数据库试图更新信息但不出现在网站上

我在Symfony有一个链接MySQL数据库的网站.该网站有一些麻烦,所以我必须更新数据库中的信息.问题是,当我在数据库上更新时,它会在那里保持更新,但在网站上它没有显示任何变化.

例如,用户注册.我去数据库更改电子邮件,以便我可以使用相同的电子邮件注册一个帐户.数据库使用新电子邮件进行更新,但在网站上显示旧电子邮件仍在使用中.

我知道我正在更新正确的数据库,因为当我在网站上注册一个新客户端时,它会出现在数据库中.关于为什么会发生这种情况的任何想法?

就像Angel Iliikov在评论中提到的那样,它很可能是一个缓存问题.以下建议假定您可以访问命令行 – 这是典型的Symfony用户应该使用的命令行.如果您还没有,大多数托管服务提供商都允许您获得 SSH访问权限.

清除以下缓存:

1. Symfony的缓存

Symfony会在缓存文件中存储大量数据,以防止它从头开始处理请求.当Symfony应用程序变得不稳定时,一个非常常见的解决方法是清除此缓存并重试.清除此缓存的标准方法是在项目的根目录下运行控制台命令:

$app/console cache:clear

如果您遇到问题,David Soussan answer会提供有关此问题的更多信息.

2.教条的缓存

根据评论者在another question(由我格式化):

The doctrine cache is often stored in apc rather than in the file
system so removing the cache files would not help. The general app/console cache:clear is only for the symfony (app) cache. I don’t think it clears the doctrine cache(s).

-caponica

备用PHP缓存(APC)是PHP.ini中启用的可选组件.如果它恰好被启用,那么Doc​​trine也可能在那里缓存信息.

previously mentioned question上接受的答案提供了清除Doctrine缓存的答案:

06001

-amitchhajer

3.您的浏览器缓存

这不太可能导致任何问题.但是,如果您正在通过HTTP发送缓存标头 – 应用程序可能已正确更新数据,但您的浏览器正在显示页面.

每个浏览器都有不同的清除缓存的方法. Google为how to do it Chrome提供支持,Mozilla为how do it in Firefox提供支持.

如果清除缓存无法解决您的问题,则可能是您的应用程序或工作流程出现问题,需要进行调试.你可以尝试一些事情:

>确保您确实更新了正确的数据库.确认一下
在两个单独的DB客户端上.
> Create your own Symfony command你唯一要做的就是查询数据库.如果它返回正确的结果,则应检查其他组件是否使用相同的查询.如果没有,请检查您的配置/参数以确保您使用正确的数据库.

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...