微信公众号开发第二课 百度BAE搭建和数据库使用

上一节主要是一些准备知识,本课仍是准备知识,开发微信也能够不使用数据库,可是要想搭建一些查询类应用,就可能使用到数据库操做,因此本节主要涉及到百度BAE上面的数据库表的建立,插入数据,修改数据,删除数据,删除表,以及事务操做。javascript

 

开发前去bae建立应用,而后添加数据库MySQL,就会自动生成一个数据库名称,是一串字符串。php

这里使用mysqli,测试,MySQL差很少。java

	$dbname = "tIXZeAfkXSSgYzKuMwGZ";//百度bae数据库 这就是生成的数据库,要替换成本身的
	 
	/*从环境变量里取出数据库链接须要的参数*/
	$host = getenv('HTTP_BAE_ENV_ADDR_SQL_IP');
	$port = getenv('HTTP_BAE_ENV_ADDR_SQL_PORT');
	$user = getenv('HTTP_BAE_ENV_AK');
	$pwd = getenv('HTTP_BAE_ENV_SK');
	
	$db= new mysqli($host,$user,$pwd,$dbname,$port);
	if(mysqli_connect_errno()){
		die("coonet error").mysqli_connect_errno();
	}else{
		echo 'ok';
	}
$db->query("set names utf8");

 这就是百度bae数据库链接,接着就能够使用mysqli相关数据库方法去操做了。mysql


1.建立表sql

$sql = "create table if not exists t_mysql(
	id int(10) primary key AUTO_INCREMENT,
	no int(10),
	name VARCHAR(255))";
$result = $db->query($sql);
if($result){
	echo "建立表成功";
}

 2.插入数据库

$sql ="insert into t_mysql(id,no,name) values(null,1,'你好')";
$result = $db->query($sql);
if($result){
	echo '插入成功';
}

 3.修改数组

$sql ="update t_mysql set name='重活' where id=1";
$result = $db->query($sql);
if($db->affected_rows>0 && $result){
	echo '修改为功';
}

 4.删除服务器

$sql ="delete from t_mysql where id=4";
$result = $db->query($sql);
if($result && $db->affected_rows>0){
	echo '删除成功';
}

 5.查询微信

$sql = "select * from t_mysql";
$result = $db->query($sql);
if($result){
	$row = $result->fetch_row(); //索引数组 $r[0]
	print_r($row);
}

 6.删除表测试

$sql = "drop table if exists t_mysql";
$result = $db->query($sql);
if($result){
	echo "删除表成功";
}

 7.事务(注意只有innoDB引擎支持 myisam不支持事务)

$db->autocommit(FALSE);
$result1 = $db->query("insert into t_mysql values(null,3,'2333')");
$result2 = $db->query("insert into t_mysql values(null,5,'44433')");
if($result1 && $result2){
	$db->commit();
	echo 'ok';
}else{
	$db->rollback();
}

 上面就是BAE的基本操做,其实就是通常php操做数据库,足够在上边搭建通常的微信应用了。
文件下载http://files.cnblogs.com/logoove/bae_mysqli.zip

外篇

mysql数据库链接代码

<?php

	$dbname = "tIXZeAfkXSSgYzKuMwGZ";//百度bae数据库
	 
	/*从环境变量里取出数据库链接须要的参数*/
	$host = getenv('HTTP_BAE_ENV_ADDR_SQL_IP');
	$port = getenv('HTTP_BAE_ENV_ADDR_SQL_PORT');
	$user = getenv('HTTP_BAE_ENV_AK');
	$pwd = getenv('HTTP_BAE_ENV_SK');
	
	/*接着调用mysql_connect()链接服务器*/
	$link = @mysql_connect("{$host}:{$port}",$user,$pwd,true);
	if(!$link) {
	  die("Connect Server Failed: " . mysql_error());
	}
	/*链接成功后当即调用mysql_select_db()选中须要链接的数据库*/
	if(!mysql_select_db($dbname,$link)) {
	  die("Select Database Failed: " . mysql_error($link));
	}
	else{
		echo 'ok';
	}
	mysql_query("set names utf8");//设置编码utf8
?>
相关文章
相关标签/搜索