php+mysql怎样处理用户上传的图片、文件和文本内容?
计划设置一个页面,有文本<inputtype="textareaname="txtcon"/>和上传文件<inputtype="file"name="filecon">可...
计划设置一个页面,有文本<input type="textarea name="txtcon"/>和上传文件<input type="file" name="filecon">可以上传文件或图片(寻思是否设置两个,一个判断只提交图片,一个只允许提交文件如DOC、XLS、ZIP等),总之用户提交后把文本内容、图片(或文件路径)均保存在mysql数据库的一个字段(如content)内,这样就遇见了问题,向mysql数据库写入时是把他们一起写入的,如insert into tb_con value(null,'".$_POST['txtcon'].$filepath."')......这样写入数据库对么??在显示他们时该怎么处理??比如我要显示每一行都是标题图片,后面是文本标题。一般是怎样处理这样问题的?谢谢了
展开
3个回答
推荐于2016-04-02 · 知道合伙人软件行家
关注
展开全部
据我的理解:
1、你要先确定数据库字段的类型,假设,这个字段是文本型,那么就不能输入其他类型的数据(也就是说,你不能把图片的内容保存到文本类型的字段里)。
2、根据你的需要:
假设用户上传的文件(文本或是图片等)你想将其内容都保存在数据库里,那么,我的考虑是设置两个字段,一个字段保存文件内容,另一个字段指示内容的类型(是文本还是图片等)。
假设你并不想保存内容到数据库里,而是将内容作为外部数据(以文件形式),当用户上传时保存到服务器特定的目录里,那么你可以设置一个字段,用来保存文件路径名称,当你调用时可以直接判断其后缀名来确定显示(某些程序就是这么设计的),也可以再设置一个字段,用来保存文件类型。
1、你要先确定数据库字段的类型,假设,这个字段是文本型,那么就不能输入其他类型的数据(也就是说,你不能把图片的内容保存到文本类型的字段里)。
2、根据你的需要:
假设用户上传的文件(文本或是图片等)你想将其内容都保存在数据库里,那么,我的考虑是设置两个字段,一个字段保存文件内容,另一个字段指示内容的类型(是文本还是图片等)。
假设你并不想保存内容到数据库里,而是将内容作为外部数据(以文件形式),当用户上传时保存到服务器特定的目录里,那么你可以设置一个字段,用来保存文件路径名称,当你调用时可以直接判断其后缀名来确定显示(某些程序就是这么设计的),也可以再设置一个字段,用来保存文件类型。
追问
数据库保存的不是文件二进制数据,保存的是路径,不过我将文本内容和图片路径一起写在了一个字段里。。如字段内容:aaaaaaaaupload/13251111.jpgaaaaaaaaaaaa...前后aaaa为文本内容,中间upload/13251111.jpg为图片路径,这样合适吗?调用时是不是需要用正则?分两个字段?如数据库设置为id title content pathinfo等几个字段?
追答
我不太推荐你使用这种混合在一起的做法,原因:一是这样很易造成混乱,分不清;二是数据库设计也不赞成这种容易造成冗余的字段设计;三是使用的时候也不方便。
如果你保存的是路径的话,而且对于文本内容想要直接保存到数据库里,我建议你设计两个字段,一个是文本字段varchar,定义长度,用于保存路径;另一个是备注字段text,用于保存文本内容。
展开全部
一般就文字什么的直接存数据库,图片或文件就存路径+文件名,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你百度,w3cschool在线教程
里面有教PHP的
找到PHP上传这块看一下就可以了
里面有教PHP的
找到PHP上传这块看一下就可以了
追问
我问的不是怎样上传,是混合着文本和文件路径的内容,在数据库中怎样保存和调取,数据库的结构该怎样设计?页面调取时怎样处理?
追答
数据库设计就是,给一个图片名称字段即可,调用的时候,因为你在上传的时候,肯定是写了一个路径了,所以调用的时候就是如:
/upload/images/ 这个是你上传时候的路径,
$rs['images'] 这个是数据库调用出来的
放在一起就是
即可
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询