在需要输出网站用户注册数,或者插入数据之前判断是否有重复记录的时候,就需要获取满足条件的MySQL查询的记录数目。
第一种方法:查询时候直接统计
复制代码
代码如下:
$sql="SELECT
COUNT()
AS
count
FROM
TABLE
WHERE
id='$id'";
$result=mysql_fetch_array(mysql_query($sql));
$count=$result['count'];
第二种方法:先取出,后统计
复制代码
代码如下:
$sql="SELECT
FROM
TABLE
WHERE
id='$id'";
$result=mysql_fetch_array(mysql_query($sql));
$count=count($result);//或者$count=mysql_num_rows($result);
不过直接使用MySQL的COUNT()在数据量庞大的时候,效率的优势是十分显著的,因为后者需要二次计算,所以还是最好使用前者进行数据条数的统计。
这篇文章主要介绍了php实现redis数据库指定库号迁移的方法,涉及对于redis数据库的 *** 作技巧,非常具有实用价值,需要的朋友可以参考下
本文实例讲述了php实现redis数据库指定库号迁移的方法,分享给大家供大家参考。具体如下:
redis普通的数据库迁移,只能整个redis
save,或者利用主从,当然也可以安装一个redis-dump,不过比较麻烦,这里提供一种php的脚本,实现指定库号的迁移,其实也就是遍历根据存储类型,读出来,插入新库,效果是这样:
代码如下:
[root@localhost
~]#
php
1php
1/407
101/407
201/407
301/407
401/407
PHP实例代码如下:
代码如下:
<php
$from
=
'100252:6379/7';
$to
=
'127001:6379/7';
$from_redis
=
redis_init($from);
$to_redis
=
redis_init($to);
$keys
=
$from_redis->keys('');
$count
=
0;
$total
=
count($keys);
foreach($keys
as
$key){
if(++$count
%
100
==
1){
echo
"$count/$totaln";
}
$type
=
$from_redis->type($key);
switch($type){
case
Redis::REDIS_STRING:
$val
=
$from_redis->get($key);
$to_redis->set($key,
$val);
break;
case
Redis::REDIS_LIST:
$list
=
$from_redis->lRange($key,
0,
-1);
foreach($list
as
$val){
$to_redis->rPush($key,
$val);
}
break;
case
Redis::REDIS_HASH:
$hash
=
$from_redis->hGetAll($key);
$to_redis->hMSet($key,
$hash);
break;
case
Redis::REDIS_ZSET:
$zset
=
$from_redis->zRange($key,
0,
-1,
true);
foreach($zset
as
$val=>$score){
$to_redis->zAdd($key,
$score,
$val);
}
break;
}
}
function
redis_init($conf){
$redis
=
new
Redis();
preg_match('/^([^:]+)(:[0-9]+)/(+)/',
$conf,
$ms);
$host
=
$ms[1];
$port
=
trim($ms[2],
':');
$db
=
$ms[3];
$redis->connect($host,
$port);
$redis->select($db);
return
$redis;
}
>
希望本文所述对大家的php程序设计有所帮助。
就应该数据库进行数据存储,安全!赞功能很简单,既然是要对文章做功能,那么互动角色就是会员,考虑一个问题,会员需要不需要登录才能点赞,如果不需要登录也可以点赞,你需要有个匿名会员。
那么表方面三个:一个文章表,一个赞表,一个会员表
数据存储:
会员点击了赞,相应的数据存到赞的表里面,这个三个表怎么关联的呢?其核心是赞表,这个表里面存有文章的id号和会员的id号,形成关系。
数据读取:
文章内容读取时候,根据文章的id,从赞的表调取相关数据统计,ok。
使用程序无法实现这种功能,因为无法保证事务的一致性,比如:A数据库中的a表复制到B数据库中的a表的过程中,A数据库中的a表的一条记录被删除,这样就无法实现数据的一致性!正确的做法是使用MySQL复制的功能!很简单,只需要几步配置即可!
<php
$localhost = 'localhost';//本地的基本是用localhost
$dbname = 'dbname';//数据库名
$user = 'user';//用户名
$pw = 'pw';//密码
$pdo = new PDO("mysql:host="$localhost";dbname="$dbname"",$user,$pw);
$pdo->query('set names utf8');
$username = $_POST['username'];
$userpassword = $_POST['userpassword'];
$sql = 'SELECT userpassword FROM `userinf` WHERE `username`="' $username '"';
$row = $pdo->query($sql)->fetch();//查询数据库
if($userpassword == $row['userpassword'])
{
@header("Location: >
编辑:(可以新建一个页面用来处理编辑事件)
以下是编辑核心代码
获取传递过来的参数
$id=$_POST["id"];
$programname=$_POST["programname"];
$date=$_POST["date"];
$time=$_POST["time"];
$type=$_POST["type"];
$channel=$_POST["channel"];
$detail=$_POST["detail"];
$tuijian=$_POST["tuijian"];
进行更新 *** 作
$sql="update program set programname='$programname',date='$date',time='$time',type='$type',time='$time',channel='$channel',detail='$detail',tuijian='$tuijian' where id=$id";
删除:和编辑类似
$sql="delete from program where id=$id";
if(mysql_query($sql)){
echo "<script language=javascript>alert('删除成功');windowlocation='news_listphp'</script>";
}else{
echo "<script language=javascript>alert('删除失败');windowlocation='news_listphp'</script>";
}
>
以上就是关于PHP查询数据库中满足条件的记录条数(两种实现方法)全部的内容,包括:PHP查询数据库中满足条件的记录条数(两种实现方法)、php实现redis数据库指定库号迁移的方法、php用数据库怎么实现赞功能等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)