十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
?php
创新互联是一家专业提供温泉企业网站建设,专注与成都网站建设、网站制作、H5场景定制、小程序制作等业务。10年已为温泉众多企业、政府机构等服务。创新互联专业网站建设公司优惠进行中。
//建立数据库链接,
mysql_connect("localhost", "mysql_user", "mysql_password") or
die("Could not connect: " . mysql_error());
//选择数据库
mysql_select_db("mydb");
//查询sql语句
$result = mysql_query("SELECT id, name FROM mytable");
//输出查询结果
while ($row = mysql_fetch_array($result)) {
echo $row['id'] ,"br /", $row['name'];
}
//释放结果内存
mysql_free_result($result);
?
先找到config.php文件,如图:
然后打开配置文件并在其中配置数据库的信息,如下代码:
?php
return array(
//'配置项'='配置值'
'DB_TYPE' = 'mysql', // 数据库类型
'DB_HOST' = '127.0.0.1', // 服务器地址
'DB_NAME' = 'tpshow', // 数据库名
'DB_USER' = 'root', // 用户名
'DB_PWD' = 'root', // 密码
'DB_PORT' = '3306', // 端口
'DB_PREFIX' = 'tp_' // 数据库表前缀
);
然后在应用的Home的Controller中,如下图的文件
?php
namespace Home\Controller;
use Think\Controller;
class IndexController extends Controller {
public function index(){
$db = M("show"); // 实例化show对象
$data = $db-find();//读取一条数据
dump($data);//打印数据
}
}
/*定义变量dbh,mysql_connect()函数的意思是连接mysql数据库,"@"的意思是屏蔽报错*/
if(!$dbh){die("error");}
/*die()函数的意思是将括号里的字串送到浏览器并中断PHP程式(Script)。括号里的参数为欲送出的字串。*/
@mysql_select_db("ok",$dbh);
/*选择mysql服务器里的一个数据库,这里选的数据库名为ok*/
$q="SELECT*FROMabc";
/*定义变量q,"SELECT*FROMabc"是一个SQL语句,意思是读取表abc中的数据*/?/!--=========方法一=========--/?$rs=mysql_query($q,$dbh);
/*定义变量rs,函数mysql_query()的意思是:送出query字串供MySQL做相关的处理或者执行.由于php是从右往左执行的,所以,rs的值是服务器运行mysql_query()函数后返回的值*/
if(!$rs){die("Validresult!");}
echo"table";
echo"trtdID/tdtdName/td/tr";
while($row=mysql_fetch_row($rs))echo"trtd$row[0]/tdtd$row[1]/td/tr";
/*定义量变(数组)row,并利用while循环,把数据一一写出来.
函数mysql_fetch_row()的意思是:将查询结果$rs单列拆到阵列变数中.
$row[0]和$row[1]的位置可以换*/
echo"/table";?/!--=========方法二=========--/?$rs=mysql_query($q,$dbh);
while($row=mysql_fetch_object($rs))echo"$row-id$row-name/";
/*id和name可以换位置*/?/!--=========方法三=========--/?$rs=mysql_query($q,$dbh);
/*id和name可以换位置*/?!--=========方法三最快=========--?@mysql_close($dbh);
describe tablename; //获取表结构信息
describe tablename fieldname; //获取表的某个字段结构信息
比如:describe users username; //获取users表的username字段的结构信息
返回:array(
'Field' ='username',
'Type' ='varchar(50)',
'Null' ='NO',
'Key' ='UNI',
'Default' ='',
'Extra' =''
)
方法1、最常见的方法是:$_POST['fieldname'];
说明:只能接收Content-Type:
application/x-www-form-urlencoded提交的数据
解释:也就是表单POST过来的数据
方法2、file_get_contents("php://input");
说明:
允许读取
POST
的
原始数据
。
和
$HTTP_RAW_POST_DATA
比起来,它给内存带来的压力较小,并且不需要任何特殊的
php.ini
设置。
php://input
不能用于
enctype="multipart/form-data"。
解释:
对于未指定
Content-Type
的POST数据,则可以使用file_get_contents(“php://input”);来获取原始数据。
事实上,用PHP接收POST的任何数据都可以使用本方法。而不用考虑Content-Type,包括
二进制文件
流也可以。
所以用方法二是最保险的方法
方法3、$GLOBALS['HTTP_RAW_POST_DATA'];
说明:
总是产生
$HTTP_RAW_POST_DATA
变量包含有原始的
POST
数据。
此变量仅在碰到未识别
MIME
类型的数据时产生。
$HTTP_RAW_POST_DATA
对于
enctype="multipart/form-data"
表单数据不可用
如果post过来的数据不是PHP能够识别的,可以用
$GLOBALS['HTTP_RAW_POST_DATA']来接收,
比如
text/xml
或者
soap
等等
解释:
$GLOBALS['HTTP_RAW_POST_DATA']存放的是POST过来的原始数据。
$_POST或
$_REQUEST
存放的是
PHP以key=value的形式格式化以后的数据。
但$GLOBALS['HTTP_RAW_POST_DATA']中是否保存POST过来的数据取决于centent-Type的设置,即POST数据时
必须显式示指明Content-Type:
application/x-www-form-urlencoded,POST的数据才会存放到
$GLOBALS['HTTP_RAW_POST_DATA']中