1. 数据库
<?php
$dbhost = 'localhost'; //要需要连接的数据库地址,localhost表示本机的数据库.
$dbuser = 'root';//所选数据库的用户名
$dbpassword= 1990418; //所选数据库的密码
$dbname = 'my_db'; //所选数据库的库名
$connect =mysql_connect($dbhost,$dbuser,$dbpassword); //连接数据库的方法,返回一个连接对象
mysql_select_db($dbname, $connect); //选择要操作的表
$result = mysql_query("SELECT * FROMPersons");//执行一个数据库操作,返回一个数组对象.
while($row =mysql_fetch_array($result))
{
echo $row['FirstName'] . " " . $row['LastName'];
echo "<br />";
}
mysql_close($connect); //记得关闭数据库连接,释放资源
?>
2. 文件
<?php
if( $_FILES["file"]["error"]==0){ //判断文件上传是否成功,0表示成功
echo "Upload: " . $_FILES["file"]["name"] . "<br />";//文件名
echo "Type: " . $_FILES["file"]["type"] . "<br />";//文件类型
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br/>";//文件大小
echo "Stored in: " . $_FILES["file"]["tmp_name"]."<br/>";//文件缓存路径
// echo $handle =fopen($_FILES["file"]["tmp_name"],"r")."<br/>";//打开文件为只读,"r"表示只读,"w"表示只写,"a"表示可读可写
// echo fread($handle,filesize($_FILES["file"]["tmp_name"]));//读取文件全部内容,与下面的file_get_contents返回结果一样
// echofile_get_contents($_FILES["file"]["tmp_name"]);//读取文件全部内容
$move_file =move_uploaded_file($_FILES["file"]["tmp_name"], "a/abc.txt");
//把缓存文件移动到自己项目的目录下,"a/abc.txt"表示移动到项目下的a文件夹下的abc.txt文件上.若a文件夹不存在会报错.若要存放到项目上级文件夹下,可用 "../abc.txt"
if($move_file) {//判断文件移动是否成功
echo "success";
} else {
echo "fail";
}
// fclose($handle);
}
?>
<html>
<form action="file.php"name="fileform" method="post"enctype="multipart/form-data">
<!-- 必须为enctype="multipart/form-data"-->
<input type="file"name="file" >
<input type="submit"name="upload" value="上传" >
</form>
</html>
3. 网络接口api
<?php
$output = array();
$a = @$_GET['a'] ? $_GET['a'] : '';
$uid = @$_GET['uid'] ? $_GET['uid'] : 0;
if (empty($a)) {
$output = array('data'=>NULL, 'info'=>'坑爹啊!', 'code'=>-201);
exit(json_encode($output));
}
//走接口
if ($a == 'get_users') {
//检查用户
if($uid== 0) {
$output = array('data'=>NULL, 'info'=>'The uid is null!', 'code'=>-401);
exit(json_encode($output));
}
//假设 $mysql 是数据库
$mysql = array(
10001 => array(
'uid'=>10001,
'vip'=>5,
'nickname' => 'Shine X',
'email'=>'979137@qq.com',
'qq'=>979137,
'gold'=>1500,
'powerplay'=> array('2xp'=>12,'gem'=>12,'bingo'=>5,'keys'=>5,'chest'=>8),
'gems'=> array('red'=>13,'green'=>3,'blue'=>8,'yellow'=>17),
'ctime'=>1376523234,
'lastLogin'=>1377123144,
'level'=>19,
'exp'=>16758,
),
10002 => array(
'uid'=>10002,
'vip'=>50,
'nickname' => 'elva',
'email'=>'elva@ezhi.net',
'qq'=>NULL,
'gold'=>14320,
'powerplay'=> array('2xp'=>1,'gem'=>120,'bingo'=>51,'keys'=>5,'chest'=>8),
'gems'=> array('red'=>13,'green'=>3,'blue'=>8,'yellow'=>17),
'ctime'=>1376523234,
'lastLogin'=>1377123144,
'level'=>112,
'exp'=>167588,
),
10003 => array(
'uid' => 10003,
'vip' => 5,
'nickname' => 'Lily',
'email' => 'Lily@ezhi.net',
'qq' => NULL,
'gold' => 1541,
'powerplay'=> array('2xp'=>2,'gem'=>112,'bingo'=>4,'keys'=>7,'chest'=>8),
'gems' => array('red'=>13,'green'=>3,'blue'=>9,'yellow'=>7),
'ctime' => 1376523234,
'lastLogin'=> 1377123144,
'level' => 10,
'exp' => 1758,
),
);
$uidArr = array(10001,10002,10003);
if(in_array($uid,$uidArr, true)) {
$output = array('data' => NULL, 'info'=>'The user does notexist!', 'code' => -402);
exit(json_encode($output));
}
//查询数据库
$userInfo = $mysql[$uid];
//输出数据
$output = array(
'data' => array(
'userInfo' => $userInfo,
'isLogin' => true,//是否首次登陆
'unread' => 4,//未读消息数量
'untask' => 3,//未完成任务
),
'info' => 'Here is the messagewhich, commonly used in popup window', //消息提示,客户端常会用此作为给弹窗信息。
'code' => 200, //成功与失败的代码,一般都是正数或者负数
);
exit(json_encode($output));
} elseif ($a == 'get_games_result') {
//...
die('您正在调 get_games_result 接口!');
} elseif ($a == 'upload_avatars') {
//....
die('您正在调 upload_avatars 接口!');
}
在浏览器中输入下面地址进行测试:
http://localhost/a/api.php?a=get_games_result&uid=10002
http://localhost/a/api.php?a=get_users&uid=10002
http://localhost/a/api.php?a=upload_avatars&uid=10001
4.