
正文
php罗列数据库数据 php数据表
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
php调用数据库字段
php罗列数据库数据我说一下几个步骤php罗列数据库数据:
1、首先你得有一个存储这些数据php罗列数据库数据的数据库表,比如数据库表的结构是这样的。
数据库表名为:user
字段:编号(id),姓名(name),手机(mobile),产品名称(productName) 主键为id
2、实现你需要的功能:
第一步:你需要连接数据库,有一个连接数据库的文件:conn.php。内容如下:
// 我假设你的数据库是mysql的,假设你的数据库用户名为root,密码为123456,根据你数据库的实际情况改写成你的。数据库名称假设为db_889888658
?php
$conn=mysql_connect("localhost","root","123456") or die("数据库连接失败,请检查用户名或密码");
mysql_select_db("db_889888658",$conn);
mysql_query("SET NAMES 'gb2312'");
?
第二步:你需要一个添加数据的表单,就相当于一个注册或添加数据的页面。如文件为:add.html内容如下:
form action="reg.php" method="post"
input type="text" name="name"br/
input type="text" name="mobile"br/
input type="text" name="productName"/br
input type="submit" name="submit" value="添加数据"
/form
第三步:写一个处理你表单提交的数据的文件reg.php。内容如下:
?php
include "conn.php";
if(isset($_POST["submit"])){
$name=$_POST["name"];
$mobile=$_POST["mobile"];
$productName=$_POST["productName"];
$sql="INSERT INTO 'user'(id,name,mobile,productName) VALUES (NULL,$name,$mobile,$productName)";
$query=mysql_query($sql);
$num=mysql_affected_rows($conn);
if($num=1){
echo "scriptalert('数据添加成功');location.href='add.html';/script";
}else{
echo "scriptalert('数据添加失败');history.back();/script";
}
}
?
第四步,第三步已经实现你说的第一个功能。下面说一下你的第二个功能。写一个表单,输入你要查询的手机号,点击“查询”按钮查询你想要的字段。
?php
if($_POST["submit"]){
$mobile=$_POST["mobile"];
if(!empty($mobile)){
include "conn.php";
$sql="SELECT * FROM 'user' WHERE 'mobile'='$mobile'";
$query=mysql_query($sql);
while($rs=mysql_fetch_array($query)){
$str="查询结果:br/";
$str.="用户名:".$rs["name"]." ";
$str.="产品名:".$rs["name"]." ";
}
echo "您查询的手机号为".$mobile."的数据信息如下:br/";
echo $str;
}else{
echo "请输入手机号";
}
}
?
form action="" method="post"
请输入您要查询的手机号:input type="text" name="mobile" input type="submit" name="submit" value="查询"
/form
相关问答
Q1: PHP操作mysql数据库的步骤
PHP访问MySQL数据库:
因为连接数据库需要较长的时间和较大的资源开销,所以如果在多个网页中都要频繁地访问数据库,则可以建立与数据库的持续连接。即调用mysql_pconnect()代替mysql_connect()。
基本步骤:
1.连接服务器:mysql_connect();
2.选择数据库:mysql_select_db();
3.执行SQL语句:mysql_query();
查询:select
显示:show
插入:insert
into
更新:update
删除:delete
4.关闭结果集:mysql_free_result($result);
5.关闭数据库:mysql_close($link);
Q2: php列出数据库
?php
if (! mysql_connect('127.0.0.1','root','123456')) exit('数据库链接失败!');
$sql='select * from ku.biao';
$res=mysql_query($sql);
if (! $res) exit("执行查询失败,SQL:$sql错误:".mysql_error());
echo 'table border=1trth会员IDth注册名称';
while($row=mysql_fetch_row($res)) echo "trtd$row[0]td$row[1]";
echo '/table';
mysql_free_result($res);
mysql_close();
?
你执行后拷屏我看,不可能只列出一个,应该是列出所有。
Q3: php从数据库中读取数据实现页面一行三列排列,求代码????????
?php
$sql="select * from vs_court order by id desc limit 3";
$query=mysql_query($sql);
echo "tabletrth第一列/thth第二列/thth第三列/th/tr";
while($array=mysql_fetch_array($query)){
?
tr
td height="120"img src="?php echo $row["thunbnail"]?" //td
td height="20" align="center" class="ty-qtitle"?php echo $array["tag"];?/td
td height="20" align="center" class="ty-qtitle"第三列值td
/tr
/table ?php } ?
Q4: PHP 读取多条数据库中数据 还是这个问题 不是调用Mysql ,调用MSSQL 怎么写呢?
为了能让PHP连接MSSQL,系统需要安装MSSQL,PHP,且在PHP.ini中的配置中,将
;extension=php_mssql.dll前面的;去掉
1.连接MSSQL
$conn=mssql_connect("实例名或者服务器IP","用户名","密码");
//测试连接
if($conn)
{
echo "连接成功";
}
2.选择要连接的数据库
mssql_select_db("dbname");
3.执行查询
$rs = mssql_query("select top 1 id,username from tbname",$conn);
或者直接执行update,insert等语句,可以不用为返回结果赋值
mssql_query("update tbname set username='niunv' where id=1");
4.获取记录集行数
echo mssql_num_rows($rs);
5.获取记录集
if($row=mssql_fetch_array($rs))
{
$id = $row[0];//获取ID字段值
$username = $row[1];//获取username字段值
}
6.获取新增记录的ID
将id字段设置为IDENTITY字段,执行insert语句以后,就会产生一个 @@IDENTITY 全局变量值,查询出来就是最后一条新增记录的ID了.
mssql_query("insert into tbname(username) values ('nv')",$conn);
$rs = mssql_query("select @@IDENTITY as id",$conn);
if($row=mssql_fetch_array($rs))
{
echo $row[0];
}
7.释放记录集
mssql_free_result($rs);
8.关闭连接
mssql_close($conn);
注:用PHP操作MSSQL比在ASP连接MYSQL要简单,所以,当需要MSSQL与MYSQL并存时,用PHP连接MSSQL来操作MYSQL与 MSSQL并存比较简单好用.如果是ASP连接MYSQL,需要安装一个MYSQL驱动,默认windows的ODBC没有安装,很遗憾...
1.在web服务器上至少安装了mssql的客户端
2.打开php.ini把;extension=php_mssql.dll 前面的分号去掉
有必要话:需要制定extension_dir
3.推荐使用 php=4.0.9 =5.0.3目前 我还没有连接成功过4.010和 5.0.3
4.数据库的 连接分页可以 到 phpe.net上获取到相应的class
下面是我根据那里 修改的 一个class
?php
/**
*mssql 数据库连接类
**/
class SQL{
var $server;
var $userName;
var $passWord;
var $dataBase;
var $linkID = 0;
var $queryResult;
var $lastInsertID;
var $pageNum = 0;//分页用---共有几条数据
var $ER;
/**
*构造函数
**/
function SQL($Server='',$UserName='',$PassWord='',$DataBase=''){
$this-server = $Server;
$this-userName = $UserName;
$this-passWord = $PassWord;
$this-dataBase = $DataBase;
}
/**
*数据库连接
**/
function db_connect(){
$this-linkID = mssql_pconnect($this-server,$this-userName,$this-passWord);
if(!$this-linkID){
$this-ER = "db_connect($this-server,$this-userName,$this-passWord) error";
return 0;
}
if (!mssql_select_db($this-dataBase,$this-linkID)) {
$this-ER = "mssql_select_db($this-dataBase,$this-lastInsertID) error";
return 0;
}
return $this-linkID;
}
/**public
* function: Check the database, if exist then select
* exist: return 1
* not exist: return 0
*/
function selectDatabase(){
if(mssql_select_db($this-dataBase))
return 1;
else
return 0;
}
/**
*数据操作
**/
function query($Str){
if ($this-linkID == 0) {
$this-ER = "数据库还没有连接!!";
}
$this-queryResult = mssql_query($Str);
//$this-queryResult = mssql_query($Str,$this-linkID);
if (!$this-queryResult) {
$this-ER = "$Str.没有操作成功,query error!!";
return 0;//****************对于php 4.3.9以上版本的错误用1
}
return $this-queryResult;
}
/**
*数据获取
**/
function fetch_array($result){
if($result != "") $this-queryResult = $result;
$rec =mssql_fetch_array($this-queryResult);
if(is_array($rec)){
return $rec;
}
//$this-ER = "没有获取数据!";
return 0;
}
/**public
* function: Free the Query Result
* success return 1
* failed: return 0
*/
function freeResult($result=""){
if($result != "") $this-queryResult = $result;
return mssql_free_result($this-queryResult);
}
/**
*获取影响的的行数
*获取操作过的行数
**/
function num_rows($result=""){
if ($result != "") {
$this-queryResult = $result;
$row = mssql_num_rows($this-queryResult);
return $row;
}
}
/**
*获取查询结果---多个
**/
function result_ar($str=''){
if (empty($str)) {
return 0;
}
$back = array();
$this-queryResult = $this-query($str);
while ($row = $this-fetch_array($this-queryResult)) {
$back[] = $row;
}
return $back;
}
/**
*数据库信息分页
*$Result 数据库操作
*str ==sql语句
*page ==第几页
*showNum ==显示几页
*/
function page($Str,$Page=0,$ShowNum=5){
$back = array();//返回数据
$maxNum = 0;
if ($Str == "") {
$this-ER = "没有数据";
return 0;
}
$this-queryResult = $this-query($Str);
if($this-queryResult){
if($Page==""){
$nopa=0;
}else{
$nopa = ($Page-1)*$ShowNum;
if ($nopa0) {
$nopa = 0;
}
}
$maxNum=$this-num_rows($this-queryResult);
$k=0;
$i=0;
$dd=$this-fetch_array($this-queryResult);
while($dd$nopa=$maxNum$i$ShowNum){
if($nopa = $maxNum) $nopa = $maxNum;
mssql_data_seek($this-queryResult,$nopa);
$row=$this-fetch_array($this-queryResult);
$nopa++;
$i++;
$back[] = $row;
if ($nopa =$maxNum) {
break;
}
}
}
$this-pageNum = $maxNum;
return $back;
}
/**
*分页的html页码
*/
function page_html($DataNum=0,$Page=1,$ShowNum=3,$web,$Post=''){
if ($DataNum == 0) {
$back = "没有要查询的数据";
}else {
if ($ShowNum=0) {
$ShowNum = 3;
}
if ($Page=0) {
$Page = 1;
}
if (empty($web)) {
$web = "#";
}
$pageNum = ceil($DataNum/$ShowNum);
if ($Page = 1) {
$top = "首页";
}else {
$top = "a href='".$web."?page=0".$Post."' target='_self'首页 /a";
}
if ($Page !==1) {
$upPage = "a href='".$web."?page=".($Page-1)."".$Post."' target='_self'上一页/a";
}else {
$upPage = "上一页";
}
if ($Page $pageNum) {
$downPage = "a href='".$web."?page=".($Page+1)."".$Post."' target='_self'下一页/a";
}else {
$downPage = "下一页";
}
if ($Page == $pageNum) {
$foot = "尾页";
}else {
$foot = "a href='".$web."?page=".$pageNum."".$Post."' target='_self' 尾页/a";
}
$back = EOT
共 $pageNum 页
第 $Page/$pageNum 页 $top $upPage $downPage $foot
EOT;
}
return $back;
}
}//end class
?
Q5: php如何统计mysql数据库列中有逗号隔开的字段内多个值的个数
如果你要达到你说的这种效果,需要对数据库表进行重新设计,你现在这种设计不合理!
如果无法改变数据表的话,就需要PHP来进行处理,这需要把数据表里的所有行全取出来,然后根据切开的单个值组成数组,统计数组里值的个数,再排名。
下面简单的写一下代码,未经测试,主要看解决思路
$rank = $_pie = array();
$result = mysql_query(‘‘SELECT * FROM table’’); // table为你实际数据表名称
while ($row = mysql_fetch_assoc($result))
{
if (!empty($row['code']))
{
$_pie = explode(',', $row['code']);
foreach ($_pie as $_v) {
$rank[$_v]++; // 统计加1
}
}
}
if (!empty($rank))
{
rsort($rank); // 排序
$index = 0;
foreach ($rank as $key = $val) {
$index++;
echo $index . "\t" . $key . "\t" . $val . "\n"; // 输出样式
}
}
以上php方式应该可以达到你想要的结果,但不能做为实际生产解决方式,因为如果数据表里的数据多的话,这样做是非常不理想的,所以建议重新设计数据表!!
如你描述,跟网站中热门标签所需效果差不多,可以参考一些开源程序中热门标签的解决方案!!
php罗列数据库数据的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于php数据表、php罗列数据库数据的信息别忘了在本站进行查找喔。







