十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
大概的基本流程如下:
成都创新互联公司于2013年创立,先为叙州等服务建站,叙州等地企业,进行企业商务咨询服务。为叙州企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
连接数据库,再加一个判断。
选择数据库
读取表
输出表中数据
下面是代码:
?php
$con
= mysql_connect("localhost","root","abc123");
/*
localhost
是服务器
root
是用户名 abc123
是密码*/
if
(!$con)
{
die("数据库服务器连接失败");
}
/* 这就是一个逻辑非判断,如果错误就输出括号里的字符串
*/
@mysql_select_db("a", $con);
/* 选择mysql服务器里的一个数据库,假设你的数据库名为 a*/
$sql = "SELECT * FROM
qq";
/*
定义变量sql, "SELECT * FROM qq"
是SQL指令,表示选取表qq中的数据 */
$result
= mysql_query($sql);
//执行SQL语句,获得结果集
/*下面就是选择性的输出打印了,由于不清楚你的具体情况给你个表格打印吧*/
//打印表格
echo
"table
border=1";
while(
$row
=
mysql_fetch_array($result)
)
/*逐行获取结果集中的记录,得到数组row */
{
/*数组row的下标对应着数据库中的字段值 */
$id
=
$row['id'];
$name
=
$row['name'];
$sex
=
$row['sex'];
echo
"tr";
echo
"td$id/td";
echo
"td$name/td";
echo
"td$sex/td";
echo
"/tr";
}
echo
"table
/";
?
如果你的switch是表头,就定义这个表头字段,然后输出。
你可以去后盾人平台看看,里面的东西不错
if (isset ( $_POST ['del'] )) {
$XH = $_POST ['XH'];
$table = "t_a";
$cond = " XH='$XH'";
//使用SQL如果存在返回真 true,不存在返回假 false
$is_exist = $daba-query("SELECT COUNT(*) FROM `t_b` WHERE `XH` = '$XH'");
if(!$is_exist){
$res = $data-del ( $table, $cond );
}
if ($res) {
echo "scriptalert('删除成功!');window.close();window.opener.location.reload();/script";
} else {
echo "scriptalert('删除失败!');window.close();window.opener.location.reload();/script";
}
}
Access和Excel都是微软的产品,其最大特点就是有较好的兼容性。所以使用微软的office套件。打开access数据库表,通过简单的拷贝就可以直接复制到excel表格中。
这里不知道你的用途是什么,如果是程序设计需要,需要通过相应的API来实现。各种程序设计语言提供了不同方式与方法。最简单的是微软公司自己的在.net开发环境下提供有dll的动态连接库接口
不知道你是不是在做.net编程,下面的答案也许对你有用,我以前做过,应该对大数据有效
一些系统可能需求把数据导出到Access或者Excel文件格式,以方便的传递数据、打印等。
Excel 文件或者 Access这两种需要导出的文件可能并不是事先就存在的,这就需要我们自己编程生成他们,下面整理一下生成这两个文件的一些方法,只罗列最常用的。并不全。
一、首先生成Excel文件。
方案一、如果用Excel保存的只是二维数据,也就是把他当数据库的来用。
最简单,你不用引用任何额外组件,只需要用 OLEDB 就可以完成创建Excel文件。 范例代码如下。
using System.Data.OleDb;public static void CreateExcelFile2() ...{ string OLEDBConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\aa2.xls;"; OLEDBConnStr += " Extended Properties=Excel 8.0;"; string strCreateTableSQL = @" CREATE TABLE "; strCreateTableSQL += @" 测试表 "; strCreateTableSQL += @" ( "; strCreateTableSQL += @" ID INTEGER, "; strCreateTableSQL += @" UserID INTEGER, "; strCreateTableSQL += @" UserIP VARCHAR , "; strCreateTableSQL += @" PostTime DATETIME , "; strCreateTableSQL += @" FromParm VARCHAR "; strCreateTableSQL += @" ) "; OleDbConnection oConn = new OleDbConnection(); oConn.ConnectionString = OLEDBConnStr; OleDbCommand oCreateComm = new OleDbCommand(); oCreateComm.Connection = oConn; oCreateComm.CommandText = strCreateTableSQL; oConn.Open(); oCreateComm.ExecuteNonQuery(); oConn.Close();}
using System.Data.OleDb;public static void CreateExcelFile2() ...{ string OLEDBConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\aa2.xls;"; OLEDBConnStr += " Extended Properties=Excel 8.0;"; string strCreateTableSQL = @" CREATE TABLE "; strCreateTableSQL += @" 测试表 "; strCreateTableSQL += @" ( "; strCreateTableSQL += @" ID INTEGER, "; strCreateTableSQL += @" UserID INTEGER, "; strCreateTableSQL += @" UserIP VARCHAR , "; strCreateTableSQL += @" PostTime DATETIME , "; strCreateTableSQL += @" FromParm VARCHAR "; strCreateTableSQL += @" ) "; OleDbConnection oConn = new OleDbConnection(); oConn.ConnectionString = OLEDBConnStr; OleDbCommand oCreateComm = new OleDbCommand(); oCreateComm.Connection = oConn; oCreateComm.CommandText = strCreateTableSQL; oConn.Open(); oCreateComm.ExecuteNonQuery(); oConn.Close();}
在你执行创建表的同时,系统如果发现Excel文件不存在,就自动完成了Excel文件的创建。这点如果没接触过的人,可能会不知道的。
至于对其中的增加、修改操作, 跟普通数据库没啥两样,就不描述了。
可以参考以下文章:
方案二、直接生成一个使用间隔符号隔开每一项数据的纯文本文件,但是文件的后缀是 XLS 。
注意:这时候,如果你直接用Excel打开这样的文件,没问题,一切正常,但是如果你用ADO.net 读取这个文件的时候,你的链接引擎不应该是Excel,而是文本文件(Microsoft Text Driver)。也就是链接字符串不应该是
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\aa2.xls;Extended Properties=Excel 8.0;"
而应该是下面的方式:
OLEDB的方式连接字符串:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\11.txt;Extended Properties='text;HDR=No;FMT=TabDelimited'
ODBC的方式读TXT字符串写法:
Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq=C:\\11.txt;Extensions=asc,csv,tab,txt;
请参考以下文章:
方案三、你要创建的Excel文件,有一些Excel自己的特色需要创建,这就需要使用 Com 了,即:Microsoft Excel Object Library了
请添加 Microsoft Excel 11.0 Object Library 对它的引用,根据你装的Office的版本,这个组件库的版本也不一样。
范例代码:
public static void CreateExcelFile() ...{ string FileName = "c:\\aa.xls"; Missing miss = Missing.Value; Excel.Application m_objExcel = new Excel.Application(); m_objExcel.Visible = false; Excel.Workbooks m_objBooks = (Excel.Workbooks)m_objExcel.Workbooks; Excel.Workbook m_objBook = (Excel.Workbook)(m_objBooks.Add(miss)); m_objBook.SaveAs(FileName, miss, miss, miss, miss, miss, Excel.XlSaveAsAccessMode.xlNoChange, miss, miss,miss, miss, miss); m_objBook.Close(false, miss, miss); m_objExcel.Quit(); }
我这里只是简单的创建了Excel文件,没有更多的操作Excel,如果希望看到更多的操作方法,请参考以下几篇文章:
;en-us;306023Product=vcSnet#6
二、生成Access 数据库
Access 毕竟是一个数据库,所以Excel上述第一种方法,无法适用。
创建Access 数据库文件可以使用 ADOX,
ADOX与OleDB的区别:ADOX是 data api 只是一个接口, OLEDB 是数据提供者,API 去调用 数据提供者。
范例代码:
使用前,请添加引用 Microsoft ADO Ext. 2.x for DDL and Security 根据你的操作系统,可能这里的版本也不一样。
using ADOX;using System.IO; public static void CreateAccessFile(string FileName) ...{ if(!File.Exists(FileName)) ...{ ADOX.CatalogClass cat = new ADOX.CatalogClass(); cat.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + FileName +";"); cat = null; } }
上述代码只是生成了Access数据库,适用ADOX你也可以操作数据库,增加表等等操作,具体请参考以下文章:
Oracle(甲骨文)是世界上最为流行的关系数据库。它是大公司推崇的工业化的强有力的引擎。我们先看看其相关的函数:
(1)integer
ora_logon(string
user
,
string
password)
开始对一个Oracle数据库服务器的连接。
(2)integer
ora_open(integer
connection)
打开给出的连接的游标。
(3)integer
ora_do(integer
connection,
string
query)
在给出的连接上执行查询。PHP生成一个指示器,解析查询,并执行之。
(4)integer
ora_parse(integer
cursor,
string
query)
解析一个查询并准备好执行。
(5)boolean
ora_exec(integer
cursor)
执行一个先前由ora_parse函数解析过的查询。
(6)boolean
ora_fetch(integer
cursor)
此函数会使得一个执行过的查询中的行被取到指示器中。这使得您可以调用ora_getcolumn函数。
(7)string
ora_getcolumn(integer
cursor,
integer
column)
返回当前的值。列由零开始的数字索引。
(8)boolean
ora_logoff(integer
connection)
断开对数据库服务器的链接。
以下是向ORACLE数据库插入数据的示例程序:
html
headtitle向ORACLE数据库中插入数据/title/head
body
form
action="?echo
$PHP_SELF;?"
method="post"
table
border="1"
cellspacing="0"
cellpadding="0"
tr
thID/th
thname/th
thDescription/th
/tr
tr
tdinput
type="text"
name="name"
maxlength="50"
size="10"/td
tdinput
type="text"
name="email"
maxlength="255"
size="30"/td
tdinput
type="text"
name="Description"
maxlength="255"
size="50"/td
/tr
tr
align="center"
td
colspan="3"input
type="submit"
value="提交" input
type="reset"
value="重写"/td
/tr
/table
/form
?
//先设置两个环境变量ORACLE_HOME,ORACLE_SID
putenv("ORACLE_HOME=/oracle/app/oracle/product/8.0.4");
putenv("ORACLE_SID=ora8");
//设置网页显示中文
putenv("NLS_LANG=Simplified_Chinese.zhs16cgb231280");
if($connection=ora_logon("scott","tiger"))
{
//库表test有ID,name,Description三项
$sql
=
'insert
into
test(ID,name,Description)
values
';
$sql
.=
'(''
.
$ID
.
'',''
.
$name
.
'',''.
$Description
.
'')';
if($cursor=ora_do($connect,$sql))
{
print("insert
finished!");
}
$query
=
'select
*
from
test';
if($cursor=ora_do($connect,$query))
{
ora_fetch($cursor);
$content0=ora_getcolumn($cursor,0);
$content1=ora_getcolumn($cursor,1);
$content2=ora_getcolumn($cursor,2);
print("$content0");
print("$content1");
print("$content2");
ora_close($cursor);
}
ora_logoff($connection);
}
?
/body
/html
?php
mysql_connect("localhost","root","123456") //填写mysql用户名和密码
or die("Could not connect to MySQL server!");
mysql_select_db("phpcms") //数据库名
or die("Could not select database!");
mysql_query('set names "gbk"'); //数据库内数据的编码
?
我说一下几个步骤:
1、首先你得有一个存储这些数据的数据库表,比如数据库表的结构是这样的。
数据库表名为: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