快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

[精]任何数据存入mysql,及从中提取的程序

PHP代码:--------------------------------------------------------------------------------

<?php
// 文件名:filedb.php 将文件储存到数据库中
/*
将文件上传存入 MySQL 数据库的例子
数据表的结构如下:
CREATE TABLE files (
id int(4) NOT NULL auto_increment,
filename varchar(64),
filesize int(16),
filetype varchar(64),
filecontent longblob,
remark text,
PRIMARY KEY (id)
);
*/
// 设定系统参数变量,根据需要修改
$DB_SERVER = "127.0.0.1"; # 数据库连接字
$DB_USER = "root"; # 用户名
$DB_PASS = ""; # 密码
$DB_NAME = "article"; # 数据库名
$TABLE_NAME = "files"; # 数据表名
$HANDLER_SCRIPT = "mysql数据库显示文件.php"; # 处理数据的脚本文件名
$PHP_SELF=$_SERVER[\\'PHP_SELF\\'];
?>
<html>
<head>
<title>将文件存入数据库</title>

<style>
caption { background-color: #E6F4FF; font-size:14px}
td { background-color: #E6F4FF; font-size:12px}
th { background-color: #FFCC00; font-size:12px}
div {font-size:12px}
</style>
</head>
<body>
<form enctype=\\'multipart/form-data\\' method=\\'post\\'>
<table cellspacing=1 cellpadding=5 >
<caption>文件存入数据库治理器</caption>
<input type=\\'hidden\\' name=\\'MAX_FILE_SIZE\\' value=10489760>
<tr>
<td>上传文件:</td>
<td><input type=\\'file\\' name=\\'userfile\\'></td>
</tr>
<tr valign=top>
<td>文件说明:</td>
<td><textarea name=\\'description\\' rows=\\'4\\' cols=\\'40\\'></textarea></td>
</tr>
<tr>
<td colspan=2 align=center><input type=\\'submit\\' name=\\'submit\\' value=\\' 上传 \\'>
</tr>
</table>
</form>
<?php
if (isset($_POST["submit"])) // 表单被提交后执行以下代码
{
if (!is_uploaded_file($_FILES[\\'userfile\\'][\\'tmp_name\\'])) // 检查文件是否上传成功
{
die("文件上传失败!");
}
$link = mysql_connect($DB_SERVER, $DB_USER, $DB_PASS) // 连接数据库
or die("连接数据库失败!");
mysql_select_db($DB_NAME);
$filename = addslashes($_FILES[\\'userfile\\'][\\'name\\']); # 为了准确保存入数据库,
$filesize = addslashes($_FILES[\\'userfile\\'][\\'size\\']); # 对所有的插入数据都要
$filetype = addslashes($_FILES[\\'userfile\\'][\\'type\\']); # 进行 addslashes 操作
// 读入上传的文件并做预处理 #
$tmp_name = $_FILES[\\'userfile\\'][\\'tmp_name\\'];
$fd = fopen ($tmp_name, "rb");
$contents = fread ($fd, filesize ($tmp_name));
fclose ($fd);
$filecontent = addslashes($contents);
$tmp_name = $_FILES[\\'userfile\\'][\\'tmp_name\\'];
$fd = fopen ($tmp_name, "rb");
$contents = fread ($fd, filesize ($tmp_name));
fclose ($fd);
$filecontent = addslashes($contents);
$remark = addslashes($_POST[\\'description\\']);

$query_string = "INSERT INTO $TABLE_NAME VALUES (\\'\\', \\'$filename\\', \\'$filesize\\', \\'$filetype\\', \\'$filecontent\\', \\'$remark\\')";
$result = mysql_query($query_string) or die("数据插入失败!"); # 进行数据插入操作
echo "<div id=\\'info\\'>保存成功!<br>/n";
echo "文件名 :{$_FILES[\\'userfile\\'][\\'name\\']}<br>/n";
echo "文件大小:{$_FILES[\\'userfile\\'][\\'size\\']} 字节<br>/n";
echo "文件类型:{$_FILES[\\'userfile\\'][\\'type\\']}</div>/n";
echo "<input type=/"submit/" value=刷新 onclick=/"window.location=\\'$PHP_SELF\\'/">";
}
echo "
<table border=2 bordercolor=#055AA0 cellspacing=0 width=840 cellpadding=0 style=/"border-collapse: collapse ;LEFT: 0px; WORD-WRAP: break-word; word-break:break-all/" >
<tr>
<th width=>ID</th>
<th>文件名</th>
<th>文件大小</th>
<th>文件类型</th>
<th>说明</th>
<th>连接</th>
<th>删除</th>
</tr>/n";
$link = mysql_connect($DB_SERVER, $DB_USER, $DB_PASS) // 显示数据库已有记录
or die("连接数据库失败!");
mysql_select_db($DB_NAME);
$query_string = "SELECT * FROM $TABLE_NAME ORDER BY id"; # 取出所有记录,无分页显示功能
$result = mysql_query($query_string) or die("查询出错!");
while ($row = mysql_fetch_array($result))
{
$remark = nl2br(htmlspecialchars($row["remark"])); # 为了准确显示说明,需要作预处理
echo "<tr>
<td>$row[id]</td>
<td>$row[filename]</td>
<td align=right>$row[filesize]</td>
<td>$row[filetype]</td>
<td>$remark</td>
<td nowrap><a href=\\'$HANDLER_SCRIPT?action=show&id=$row[id]\\' target=_blank>点击查看</td>
<td nowrap><a href=\\'#\\' OnClick=\\'window.open(/"$HANDLER_SCRIPT?action=del&id=$row[id]/");location.href=/"$_SERVER[PHP_SELF]/";\\'>点击删除</td>
</tr>/n";
}
echo "</table>/n";

?>
</body>
</html>



<?php
// 文件名:filehandle.php 用来显示文件或删除记录
// 系统参数变量
$DB_SERVER = "127.0.0.1"; # 数据库连接字
$DB_USER = "root"; # 用户名
$DB_PASS = ""; # 密码
$DB_NAME = "article"; # 数据库名
$TABLE_NAME = "files"; # 数据表名

if (!empty($_GET["action"])) // 判定页面合法性
{
if ($_GET["action"] == "show") // 页面功能为显示文件
{
if (!empty($_GET["id"])) // 取得 id 号
$id = $_GET["id"];
else
$id = 1; # 假如 id 为空则定义为 1
$link = mysql_connect($DB_SERVER, $DB_USER, $DB_PASS)
or die("连接数据库失败!");
mysql_select_db("$DB_NAME");
// 从数据库中取出文件名,文件类型以及文件本身
$query_string = "SELECT filename, filetype, filecontent FROM $TABLE_NAME WHERE id = \\'$id\\'";
$result = mysql_query($query_string) or die("查询出错!");
if (mysql_num_rows($result) == 0) // 判定查询是否成功
die("查无记录!");
$row = mysql_fetch_array($result); # 取得查询结果
$filecontent = $row["filecontent"]; # 取得文件内容
$filetype = $row["filetype"]; # 取得文件类型
$filename = $row["filename"]; # 取得文件名
header("Content-Type: $filetype"); # 输出 HTTP 头信息,文件的 MIME 类型
header("Content-Disposition: inline; filename=/"$filename/""); # 这样可以给出文件#
header("Content-Disposition: attachment; filename=/"$filename/""); # 这样可以迫使 IE 下载文件而不显示
echo $filecontent; # 输出文件
}
}

?>





返回类别: 教程
上一教程: 来自PHP.NET的入门教程
下一教程: PHP新手上路(八)

您可以阅读与"[精]任何数据存入mysql,及从中提取的程序"相关的教程:
· 一个连接两个不同MYSQL数据库的PHP程序
· 用IE远程创建Mysql数据库的简易程序
· 在线短消息收发的程序,不用数据库
· 一个对数据库进行操作的程序
· 用DBSQL类加快开发MySQL数据库程序的速度
    微笑服务 优质保证 索取样品