重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这是由于数据库连接数过多导致的,说明之前建立的连接你没有释放。
成都创新互联公司专注于达日企业网站建设,成都响应式网站建设,成都商城网站开发。达日网站建设公司,为达日等地区提供建站服务。全流程按需求定制设计,专业设计,全程项目跟踪,成都创新互联公司专业和态度为您提供的服务
看到你的需求是实时获取数据库里面的内容,可以考虑使用内存数据库,这样返回的效率高,也会避免过多连接的错误。
可以使用redis和memcache来解决这个问题。代码如下,记得首先要安装redis,并且要安装php-redis扩展。
?php
$redis = new Redis();
$redis-connect('127.0.0.1', 6379);//serverip port
$redis-auth('mypassword');//my redis password
$redis -set( "test" , "Hello World");
echo $redis -get( "test");
你的构造方法是__construct($host,$user,$password,$datebase)
但是你在new的时候,少了这些参数
$db = new Config();
把这些参数加上就正确了。
$db = new Config($host,$user,$password,$datebase);
或者你直接把__construct($host,$user,$password,$datebase)
改成
__construct()
php5.6以后已经弃用了mysql_函数,估计你是版本太高了,高于5.6版本的可以用mysqli_函数,具体写法请查阅PHP文档
1. 我觉得
include("conn/conn.php");
这句代码最好不要写在 checkinput() 函数代码里,因为这样可能conn/conn.php可能就会执行多次。
2. 从代码上看,有两处地方需要检查:
(1) conn/conn.php 里连接数据库是否正确?
(2) "select * from tb_manager where name='".$this-name."' and pwd='".$this-pwd."'" 看这句SQL语句是否能得到正确结果?
你应该把这个插入代码做成存储过程,把数据作为参数,不需要每次插入数据都生成一个存储过程。
exec是执行单条语句的,应该只执行了第一条,后面多的都没有执行。
你可以看下数据库里是否成功插入了数据