php读写二进制数据库 php怎么读取数据库

php如何打开在mysql中取出的二进制数据你好,像制作验证码那样
把字节流扔进一个图片类型的文件里 , 然后就可以了
希望能解决你的问题 , 望采纳
php能不能从数据库读出内容(二进制),然后再转换成视频播放通常的做法都是从数据库里取出数据,然后生成xml或者json的格式,传给播放器就可以了 。我在做视频播放的时候就是采用的这种方式 。现在js和as3是可以交互的 。
php读取mysql数据库中的二进制图片乱码,求指教?。?/h2>Header( "Content-type:application/octet-stream ");
基本上原因都出在这里,根据不同的php版本,有很多不同的写法,研究一下
怎样用php读取sqlserver中存储的二进制图片字段?求高手直接读取出来放过去,但是要注意mysql存储的格式是类型:mediumblob
要变成图片,还需要php代码转化一下
phpmysql 取得数据库中二进制文件 , 生成链接供打开filelist.php
?php
................
$result=mysql_db_query(.........id,filename.........);#查询结果并存入变量中
$rows=mysql_num_rows($result);#得出数据行数
for($i=0;$i$rows;$i){
$total=mysql_fetch_array($result);
echo
"lia
href='https://www.04ip.com/post/filedown.php?fileid=$total[id]filename=$total[filename]'
target
='_blank'
$total[filename]/a/li";
}
...............
?
filedown.php
?php
$fid=$_GET['fileid'];
$fname=$_GET['filename'];
.....................
.....................
$result=mysql_db_query(.........,"select
id,filename,datasize,filedata
from
ftable
where
id='$fid'",.........);
$total=mysql_fetch_array($result);
$file_size=$total[datasize];
header("Content-type:application/octet-stream");
header("Accept-Ranges:bytes");
header("Accept-Length:$file_size");
header("Content-Disposition:attachment;filename=".$total[filename]);
echo
$total[filedata];
...............
?
======
你说把二进制的字节流取出生成文件保存到磁盘然后给个超链接,
这样做法没意义 , 你既然把它存在库里了那直接stream给用户是最好的方式,否则你还得考虑把它还原到文件夹用户使用完后怎么处理的问题?如果保留那当初就应该同时把它存在文件夹省得者多麻烦,如果不保留那反复生成删除还有共享问题反而加重服务器负担 。要么一次生成定期择优删除 , 又有许多代码有的写了 。。。
php读取数据库信息的几种方法连接到一个 url 地址为localhost 、 端口为 3306 的mysql服务器上 。mysql服务器的帐号是"root",密码是"9999" 。mysql 服务器上有一个数据库 ok ,数据库里有一个表 abc 。表 abc 一共为两列,列名分别是 "id" 和 "name" ,将 abc 里的所有数据读出来 。
?
$dbh = @mysql_connect("localhost:3306","root","9999");
/* 定义变量dbh , mysql_connect()函数的意思是连接mysql数据库, "@"的意思是屏蔽报错 */
if(!$dbh){die("error");}
/* die()函数的意思是将括号里的字串送到浏览器并中断PHP程式 (Script) 。括号里的参数为欲送出的字串 。*/
@mysql_select_db("ok", $dbh);
/* 选择mysql服务器里的一个数据库,这里选的数据库名为 ok */
$q = "SELECT * FROM abc";
/* 定义变量q, "SELECT * FROM abc"是一个SQL语句,意思是读取表abc中的数据 */
?
br /
!--========= 方法一 =========--
br /
?
$rs = mysql_query($q, $dbh);
/* 定义变量 rs ,函数mysql_query()的意思是:送出 query 字串供 MySQL 做相关的处理或者执行.由于php是从右往左执行的,所以,rs的值是服务器运行mysql_query()函数后返回的值 */
if(!$rs){die("Valid result!");}
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";
?
br /
!--========= 方法二 =========--
br /
?
$rs = mysql_query($q, $dbh);
while($row = mysql_fetch_object($rs)) echo "$row-id $row-name br /";
/* id和name可以换位置 */
?
br /
!--========= 方法三 =========--
br /
?
$rs = mysql_query($q, $dbh);
while($row = mysql_fetch_array($rs)) echo "$row[id] $row[name] br /";
/* id和name可以换位置 */
?
!--========= 方法三最快 =========--
?
@mysql_close($dbh);
/* 关闭到mysql数据库的连接 */
?
【php读写二进制数据库 php怎么读取数据库】php读写二进制数据库的介绍就聊到这里吧 , 感谢你花时间阅读本站内容,更多关于php怎么读取数据库、php读写二进制数据库的信息别忘了在本站进行查找喔 。

    推荐阅读