十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
不要用mysql_fetch_object()这个函数来判断,这个返回来的是个数组;一般情况下是这么来判断的:$query="select * from ".$tablepre."common_members"." where username ='".$_POST['reg_username']."'";$result=mysql_query($query,$link);$num = mysql_num_rows($result); //取得结果集中行的数目if($num){echo 'script type="text/javascript"alert("用户名已被占用 ,请重新输入!");location.replace("../reg/index.php");/script';die();}
清河网站制作公司哪家好,找创新互联建站!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设公司等网站项目制作,到程序开发,运营维护。创新互联建站成立于2013年到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联建站。
ThinkPHP内置的ORM和ActiveRecord模式实现了方便的数据存取操作,而且新版增加的连贯操作功能更是让这个数据操作更加清晰,但是ThinkPHP仍然保留了原生的SQL查询和执行操作支持,为了满足复杂查询的需要和一些特殊的数据操作,SQL查询的返回值因为是直接返回的Db类的查询结果,没有做任何的处理。而且可以支持查询缓存。主要包括下面两个方法:
1、query方法
query方法是用于sql查询操作,和select一样返回数据集,例如:
$Model = new Model() // 实例化一个model对象 没有对应任何数据表
$Model-query("select * from think_user where status=1");
2、execute方法
用于更新和写入数据的sql操作,返回影响的记录数,例如:
$Model = new Model() // 实例化一个model对象 没有对应任何数据表
$Model-execute("update think_user set name='thinkPHP' where status=1");
关于原生SQL操作的一点补充
通常使用原生SQL需要手动加上当前要查询的表名,如果你的表名以后会变化的话,那么就需要修改每个原生SQL查询的sql语句了,针对这个情况,TP还提供了一个小的技巧来帮助解决这个问题。
有的,可以使用strict来过滤非数据表字段。案例如下:
Db::name('user')-strict(true)-insert($data);
只需要在链式调用中使用strict方法并将其参数设置为true即可。
如果开启字段严格检查的话,在更新和写入数据库的时候,一旦存在非数据表字段的值,则会抛出异常。
通过操作数据库语句,然后判断返回值,如果为fasle,就执行CREATE TABLE IF NOT EXISTS `db_database_user` (SQL),这样就实现了你的要求,希望对你有用。