使用PHP将文件上传到MySQL数据库

2022-10-11 21:04:08 166 0
魁首哥

您可能想知道为什么要将文件“放入”数据库,而不是仅仅放在文件系统上。那么大多数时候,你不会。

在您的PHP应用程序需要存储整个文件的情况下,首选方法是将文件保存到服务器的文件系统中,并将文件的物理位置存储在数据库中。这通常被认为是存储文件的最简单和最快捷的方式。

使用PHP将文件上传到MySQL数据库

但是,您可能会发现自己处于需要将文件与数据库中其他数据保持一致的情况。这给你 – 或者说:MySQL – 完全控制文件数据,而不仅仅是文件在服务器上的位置。

这种方法有一些缺点,如:降低了性能,增加了PHP代码和数据库结构的复杂性。这是您在实际应用中使用之前应仔细考虑的内容。

话虽如此,本文演示了如何将文件从浏览器上传到 MySQL ,以及如何将文件发送回浏览器。

开始之前

要顺利完成,您应该熟悉以下内容:

  • PHP基础知识

  • MySQL基础知识

  • 在PHP中使用My sql (mysqli)

  • HTML表单以及如何在PHP中处理POST数据。

战斗计划

与所有计划一样,在我们开始撰写之前,我们需要稍微计划一点。所以我们知道我们在写作之前要写什么。

在开始该程序之前,我们需要设计数据库。这不是一个复杂的设计,因为我们不是在说创建一些复杂的文件系统。我们只需要一个单独的表格,其中包含一个用于我们文件的BLOB字段和各种其他字段来存储我们文件中的信息,如名称,大小,类型。

接着。该程序的第一阶段是将文件从我们的用户获取到我们的PHP可以与它进行交互的服务器上。这是该过程中最简单的部分,只需要一个基本的HTML表单。

第二阶段涉及阅读上传的文件,确保已成功上传并将其添加到数据库。这与上传文件到文件系统时使用的过程类似,但使用MySQL函数而不是文件系统函数。

第三阶段是列出已经上传并保存在数据库中的所有文件,并附上一个链接,以便下载。这里唯一的问题是文件不存在于服务器上,所以我们如何创建一个链接呢?这是第4阶段处理的一个问题,我们在阶段3中需要做的是创建一个链接,该链接将嵌入到URL中的文件的ID。

第四个也是最后一部分是对这个过程最令人困惑的部分。我们获取文件并将其发送到客户端浏览器的部分。

我们从使用MySQL函数和第3阶段发送的ID开始,从数据库中获取文件数据。然后我们设置几个标题,让浏览器知道预期的内容,最后发送文件的内容。

现在,以此摘要为指导,让我们开始编写我们的程序。

阶段0:构建数据库

数据库很简单。一个具有文件数据的BLOB字段的表和与文件相关的各种信息的几个字段:

如您所见,我们存储文件名,包括扩展名。

我们有mime类型,我们使用它来让浏览器知道我们正在处理什么样的文件。

文件的大小(以字节为单位)。

最后数据本身在一个MediumBlob字段中。

阶段1:上传文件

现在,我们需要从用户那里获取文件。我们设计的表不需要用户的任何其他信息,因此我们将简单地创建一个HTML表单,只有一个“文件”输入字段和提交按钮:

  1. <!DOCTYPE html>

  2. MySQL文件上传示例</ title> </p> </li> <li> <p> <meta http-equiv =“content-type”content =“text / html; charset = UTF-8”> </p> </li> <li> <p></ HEAD> </p> </li> <li> <p><BODY> </p> </li> <li> <p> <form action =“add_file.php”method =“post”enctype =“multipart / form-data”> </p> </li> <li> <p> <input type =“file”name =“uploaded_file”> <br> </p> </li> <li> <p> <input type =“submit”value =“Upload file”> </p> </li> <li> <p> </ FORM> </p> </li> <li> <p> <P> </p> </li> <li> <p> <a href=https://www.zhihuclub.com/%E2%80%9Dlist_files.php%E2%80%9D>查看所有文件</a> </p> </li> <li> <p> </ p> </p> </li> <li> <p></ BODY> </p> </li> <li> <p></ HTML> </p> </li> </ol> </blockquote> <p>注意<form>元素的第三个属性“enctype”。这告诉浏览器如何将表单数据发送到服务器。就这样,当发送文件时,必须设置为“multipart / form-data”。 </p> <p>如果设置任何其他方式,或者根本不设置,您的文件可能不会被正确传输。 </p> <p>在底部,我们将链接到我们将在阶段3中创建的列表。 </p> <p> <strong>阶段2:将文件添加到数据库 </strong> </p> <p>以我们在阶段1中构建的形式,我们将action属性设置为“add_file.php”。这是我们要在这个阶段进行构建的文件。 </p> <p>此文件需要检查文件是否已经上传,确保已经上传了没有错误,并将其添加到数据库中: </p> <blockquote> <ol class="list-paddingleft-2"> <li> <p><?PHP </p> </li> <li> <p>//检查文件是否已上传 </p> </li> <li> <p>if(isset($ _ FILES [‘uploaded_file’])){ </p> </li> <li> <p> //确保文件被发送没有错误 </p> </li> <li> <p> if($ _ FILES [‘uploaded_file’] [‘error’] == 0){ </p> </li> <li> <p> //连接到数据库 </p> </li> <li> <p> $ dbLink = new mysqli(’127.0.0.1’,’user’,’pwd’,’myTable’); </p> </li> <li> <p> if(mysqli_connect_errno()){ </p> </li> <li> <p> die(“MySQL连接失败:”mysqli_connect_error()); </p> </li> <li> <p> } </p> </li> <li> </li> <li> <p> //收集所有必需的数据 </p> </li> <li> <p> $ name = $ dbLink-> real_escape_string($ _ FILES [‘uploaded_file’] [‘name’]); </p> </li> <li> <p> $ mime = $ dbLink-> real_escape_string($ _ FILES [‘uploaded_file’] [‘type’]); </p> </li> <li> <p> $ data = $ dbLink-> real_escape_string(file_get_contents($ _ FILES [‘uploaded_file’] [‘tmp_name’])); </p> </li> <li> <p> $ size = intval($ _ FILES [‘uploaded_file’] [‘size’]); </p> </li> <li> </li> <li> <p> //创建SQL查询 </p> </li> <li> <p> $ query =“ </p> </li> <li> <p> INSERT INTO`file`( </p> </li> <li> <p> `name`,`mime`,`size`,`data`,““ </p> </li> <li> <p> ) </p> </li> <li> <p> 值( </p> </li> <li> <p> ‘{$ name}’,'{$ mime}’,{$ size},'{$ data}’,NOW() </p> </li> <li> <p> )“; </p> </li> <li> </li> <li> <p> //执行查询 </p> </li> <li> <p> $ result = $ dbLink-> query($ query); </p> </li> <li> </li> <li> <p> //检查是否成功 </p> </li> <li> <p> if($ result){ </p> </li> <li> <p> 回应“成功!您的文件已成功添加! </p> </li> <li> <p> } </p> </li> <li> <p> else { </p> </li> <li> <p> echo’错误!无法插入文件’ </p> </li> <li> <p> 。“<PRE> {$ dbLink->误差} </ PRE>”; </p> </li> <li> <p> } </p> </li> <li> <p> } </p> </li> <li> <p> else { </p> </li> <li> <p> echo’文件上传时出错。“ </p> </li> <li> <p> 。’错误代码: ‘。INTVAL($ _ FILES [ ‘uploaded_file’] [ ‘错误’]); </p> </li> <li> <p> } </p> </li> <li> </li> <li> <p> //关闭mysql连接 </p> </li> <li> <p> $ dbLink->接近(); </p> </li> <li> <p>} </p> </li> <li> <p>else { </p> </li> <li> <p> echo’错误!一个文件没有发送! </p> </li> <li> <p>} </p> </li> <li> </li> <li> <p>//回到主页面的链接 </p> </li> <li> <p>echo'<p>点击<a href=https://www.zhihuclub.com/%E2%80%9Dindex.html%E2%80%9D>此处</a>返回</ p>’; </p> </li> <li> <p>?> </p> </li> <li> </li> <li> </li> </ol> </blockquote> <p> <strong>阶段3:列出所有现有文件 </strong> </p> <p>所以,现在我们在我们的数据库中有几个文件,我们需要创建一个文件列表并将它们链接起来,以便它们可以被下载: </p> <blockquote> <ol class="list-paddingleft-2"> <li> <p><?PHP </p> </li> <li> <p>//连接到数据库 </p> </li> <li> <p>$ dbLink = new mysqli(’127.0.0.1’,’user’,’pwd’,’myTable’); </p> </li> <li> <p>if(mysqli_connect_errno()){ </p> </li> <li> <p> die(“MySQL连接失败:”mysqli_connect_error()); </p> </li> <li> <p>} </p> </li> <li> </li> <li> <p>//查询所有现有文件的列表 </p> </li> <li> <p>$ sql =’SELECT`id`,`name`,`mime`,`size`,`created` FROM`file`’; </p> </li> <li> <p>$ result = $ dbLink-> query($ sql); </p> </li> <li> </li> <li> <p>//检查是否成功 </p> </li> <li> <p>if($ result){ </p> </li> <li> <p> //确保在那里有一些文件 </p> </li> <li> <p> if($ result-> num_rows == 0){ </p> </li> <li> <p> echo'<p>数据库中没有文件</ p>’; </p> </li> <li> <p> } </p> </li> <li> <p> else { </p> </li> <li> <p> //打印表的顶部 </p> </li> <li> <p> echo'<table width =“100%”> </p> </li> <li> <p> <TR> </p> </li> <li> <p> < <span class="candidate-entity-word" data-gid="684585">td </span>> <B>名称</ B> </ TD> </p> </li> <li> <p> <TD> <B>默</ B> </ TD> </p> </li> <li> <p> <td> <b>大小(字节)</ b> </ td> </p> </li> <li> <p> <TD> <B>的创</ B> </ TD> </p> </li> <li> <p> <TD> <B>&NBSP; </ B> </ TD> </p> </li> <li> <p> </ TR>’; </p> </li> <li> </li> <li> <p> //打印每个文件 </p> </li> <li> <p> while($ row = $ result-> fetch_assoc()){ </p> </li> <li> <p> 回声“ </p> </li> <li> <p> <TR> </p> </li> <li> <p> <TD> {$行[ ‘名称’]} </ TD> </p> </li> <li> <p> <TD> {$行[ ‘MIME’]} </ TD> </p> </li> <li> <p> <TD> {$行[ ‘尺寸’]} </ TD> </p> </li> <li> <p> <TD> {$行[ ‘创造’]} </ TD> </p> </li> <li> <p> <td> <a href=https://www.zhihuclub.com/%E2%80%99get_file.php?id=%7B$row[%E2%80%98id%E2%80%99]%7D%E2%80%99>下载</a> </ td> </p> </li> <li> <p> </ TR>“; </p> </li> <li> <p> } </p> </li> <li> </li> <li> <p> //关闭表 </p> </li> <li> <p> echo'</ table>’; </p> </li> <li> <p> } </p> </li> <li> </li> <li> <p> //释放结果 </p> </li> <li> <p> $ result->免费(); </p> </li> <li> <p>} </p> </li> <li> <p>其他 </p> </li> <li> <p>{ </p> </li> <li> <p> echo’错误!SQL查询失败:’; </p> </li> <li> <p> echo“<pre> {$ dbLink-> error} </ pre>”; </p> </li> <li> <p>} </p> </li> <li> </li> <li> <p>//关闭mysql连接 </p> </li> <li> <p>$ dbLink->接近(); </p> </li> <li> <p>?> </p> </li> </ol> </blockquote> <p> <strong>阶段4:下载文件 </strong> </p> <p>这部分是通常导致最混乱的部分。 </p> <p>要真正了解如何工作,您必须了解浏览器如何下载文件。当浏览器从HTTP服务器请求文件时,服务器响应将包含关于它所包含的内容的信息。这些信息位称为标题。标题通常包括有关要发送的数据类型的信息,响应的大小以及文件的文件名称。 </p> <p>当然有很多其他的标题,我不会在这里覆盖,但值得研究! </p> <p>现在,这段代码。我们只需读取第3阶段链接发送的ID即可。如果ID有效,我们将获取我们收到的ID的文件信息,发送头文件,最后发送文件数据: </p> <blockquote> <ol class="list-paddingleft-2"> <li> <p><?PHP </p> </li> <li> <p>//确保已经通过了ID </p> </li> <li> <p>if(isset($ _ GET [‘id’])){ </p> </li> <li> <p>//获取ID </p> </li> <li> <p> $ id = intval($ _ GET [‘id’]); </p> </li> <li> </li> <li> <p> //确保该ID实际上是一个有效的ID </p> </li> <li> <p> if($ id <= 0){ </p> </li> <li> <p> 死(’该ID无效!); </p> </li> <li> <p> } </p> </li> <li> <p> else { </p> </li> <li> <p> //连接到数据库 </p> </li> <li> <p> $ dbLink = new mysqli(’127.0.0.1’,’user’,’pwd’,’myTable’); </p> </li> <li> <p> if(mysqli_connect_errno()){ </p> </li> <li> <p> die(“MySQL连接失败:”mysqli_connect_error()); </p> </li> <li> <p> } </p> </li> <li> </li> <li> <p> //获取文件信息 </p> </li> <li> <p> $ query =“ </p> </li> <li> <p> SELECT`mime`,`name`,`size`,`data` </p> </li> <li> <p> FROM`file` </p> </li> <li> <p> WHERE`id` = {$ id}“; </p> </li> <li> <p> $ result = $ dbLink-> query($ query); </p> </li> <li> </li> <li> <p> if($ result){ </p> </li> <li> <p> //确保结果有效 </p> </li> <li> <p> if($ result-> num_rows == 1){ </p> </li> <li> <p> //获取行 </p> </li> <li> <p> $ row = mysqli_fetch_assoc($ result); </p> </li> <li> </li> <li> <p> //打印头 </p> </li> <li> <p> <span class="candidate-entity-word" data-gid="12991428">header </span>(“Content-Type:”。$ row [‘mime’]); </p> </li> <li> <p> header(“Content-Length:”。$ row [‘size’]); </p> </li> <li> <p> header(“Content-Disposition:attachment; filename =”。$ row [‘name’]); </p> </li> <li> </li> <li> <p> //打印数据 </p> </li> <li> <p> echo $ row [‘data’]; </p> </li> <li> <p> } </p> </li> <li> <p> else { </p> </li> <li> <p> echo’错误!没有图像存在该ID。 </p> </li> <li> <p> } </p> </li> <li> </li> <li> <p> //释放mysqli资源 </p> </li> <li> <p> @mysqli_free_result($结果); </p> </li> <li> <p> } </p> </li> <li> <p> else { </p> </li> <li> <p> echo“错误!查询失败:<pre> {$ dbLink-> error} </ pre>”; </p> </li> <li> <p> } </p> </li> <li> <p> @mysqli_close($ DBLINK); </p> </li> <li> <p> } </p> </li> <li> <p>} </p> </li> <li> <p>else { </p> </li> <li> <p> echo’错误!没有身份证通过。 </p> </li> <li> <p>} </p> </li> <li> <p>?> </p> </li> </ol> </blockquote> <p>任何体面的浏览器都应该能够读取标题,并了解这是什么类型的文件,并且它是要下载的,而不是打开。 </p> <p> <strong>终点线 </strong> </p> <p>所以,正如你所看到的,这并不像人们想象的那么复杂。 </p> <p>这段代码当然只是为了演示的目的,我不会建议使用它,而不增加一点额外的安全性。未经编辑,此代码基本上允许任何人上传任何内容到您的服务器,这不是一个好主意! </p> </div> <div class="zhi-con-tag"><a href="https://mip.qiaqa.com/tags/php.html">php</a><a href="https://mip.qiaqa.com/tags/%E6%95%B0%E6%8D%AE%E5%BA%93.html">数据库</a><a href="https://mip.qiaqa.com/tags/%E6%96%87%E4%BB%B6.html">文件</a></div> <div class="zhi-con-action"> <div class="zhi-con-action-item"> <div class="action-button likesBtn" id="likes-147332"><i class="ri-heart-3-line"></i> 喜欢 0</div> <div class="icon-button favsBtn" id="favs-147332"> <i class="ri-star-line"></i> 收藏 </div> <div class="icon-button fenBtn"><i class="ri-share-circle-line"></i> 分享 <div class="fenxme"><span class="menu-arrow"></span> <ul> <li><a href="https://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url=https://mip.qiaqa.com/php/147332.html&title=%E4%BD%BF%E7%94%A8PHP%E5%B0%86%E6%96%87%E4%BB%B6%E4%B8%8A%E4%BC%A0%E5%88%B0MySQL%E6%95%B0%E6%8D%AE%E5%BA%93&desc=%E6%82%A8%E5%8F%AF%E8%83%BD%E6%83%B3%E7%9F%A5%E9%81%93%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E5%B0%86%E6%96%87%E4%BB%B6%E2%80%9C%E6%94%BE%E5%85%A5%E2%80%9D%E6%95%B0%E6%8D%AE%E5%BA%93%EF%BC%8C%E8%80%8C%E4%B8%8D%E6%98%AF%E4%BB%85%E4%BB%85%E6%94%BE%E5%9C%A8%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E4%B8%8A%E3%80%82%E9%82%A3%E4%B9%88%E5%A4%A7%E5%A4%9A%E6%95%B0%E6%97%B6%E5%80%99%EF%BC%8C%E4%BD%A0%E4%B8%8D%E4%BC%9A%E3%80%82%E5%9C%A8%E6%82%A8%E7%9A%84PHP%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E9%9C%80%E8%A6%81%E5%AD%98%E5%82%A8%E6%95%B4%E4%B8%AA%E6%96%87%E4%BB%B6%E7%9A%84%E6%83%85%E5%86%B5%E4%B8%8B%EF%BC%8C%E9%A6%96%E9%80%89%E6%96%B9%E6%B3%95%E6%98%AF%E5%B0%86%E6%96%87%E4%BB%B6%E4%BF%9D%E5%AD%98%E5%88%B0%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%9A%84%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E4%B8%AD%EF%BC%8C%E5%B9%B6%E5%B0%86%E6%96%87...&summary=%E6%82%A8%E5%8F%AF%E8%83%BD%E6%83%B3%E7%9F%A5%E9%81%93%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E5%B0%86%E6%96%87%E4%BB%B6%E2%80%9C%E6%94%BE%E5%85%A5%E2%80%9D%E6%95%B0%E6%8D%AE%E5%BA%93%EF%BC%8C%E8%80%8C%E4%B8%8D%E6%98%AF%E4%BB%85%E4%BB%85%E6%94%BE%E5%9C%A8%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E4%B8%8A%E3%80%82%E9%82%A3%E4%B9%88%E5%A4%A7%E5%A4%9A%E6%95%B0%E6%97%B6%E5%80%99%EF%BC%8C%E4%BD%A0%E4%B8%8D%E4%BC%9A%E3%80%82%E5%9C%A8%E6%82%A8%E7%9A%84PHP%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E9%9C%80%E8%A6%81%E5%AD%98%E5%82%A8%E6%95%B4%E4%B8%AA%E6%96%87%E4%BB%B6%E7%9A%84%E6%83%85%E5%86%B5%E4%B8%8B%EF%BC%8C%E9%A6%96%E9%80%89%E6%96%B9%E6%B3%95%E6%98%AF%E5%B0%86%E6%96%87%E4%BB%B6%E4%BF%9D%E5%AD%98%E5%88%B0%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%9A%84%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E4%B8%AD%EF%BC%8C%E5%B9%B6%E5%B0%86%E6%96%87..." target="_blank" title="分享空间"><i class="ri-qq-fill"></i> 分享空间</a></li> <li><a class="weibo-share" href="https://service.weibo.com/share/share.php?url=https://mip.qiaqa.com/php/147332.html&title=%E4%BD%BF%E7%94%A8PHP%E5%B0%86%E6%96%87%E4%BB%B6%E4%B8%8A%E4%BC%A0%E5%88%B0MySQL%E6%95%B0%E6%8D%AE%E5%BA%93&pic=&appkey=&searchPic=true" target="_blank" title="分享微博"><i class="ri-weibo-fill"></i> 分享微博</a></li> <li><span class="ewm"><img src="https://mip.qiaqa.com/zb_users/theme/ZhiMedia/function/api.php?act=poster&url=https://mip.qiaqa.com/php/147332.html" alt="https://mip.qiaqa.com/php/147332.html" /></span><span>手机扫一扫</span></li> </ul> </div> </div> <div class="action-hai"><span class="haibao" id="147332"><i class="ri-camera-lens-line"></i> 海报</span></div> <div class="action-eyes"><i class="ri-message-2-line"></i> 0 条评论</div> <div class="action-eyes"><i class="ri-eye-line"></i> 166</div> </div> </div> <section class="zhi-prevnext"> <a href="https://mip.qiaqa.com/jingyan/148908.html" title="上一篇:四季豆能不能吃(烹饪四季豆时需注意的事项都有啥)">上一篇:四季豆能不能吃(烹饪四季豆时需注意的事项都有啥)</a> <a href="https://mip.qiaqa.com/php/147334.html" title="下一篇:二分查找(PHP)">下一篇:二分查找(PHP)</a> </section> </div> <div class="zhi-wd-xiang"> <h3>相关文章</h3> <ul> <li><a href="https://mip.qiaqa.com/ask/198862.html" target="_blank">php字符串增加1如何实现</a></li> <li><a href="https://mip.qiaqa.com/ask/198861.html" target="_blank">php如何判断字符串是否有中文</a></li> <li><a href="https://mip.qiaqa.com/ask/198860.html" target="_blank">php如何实现字符串去掉头尾</a></li> <li><a href="https://mip.qiaqa.com/ask/198859.html" target="_blank">php字符串的组成是什么</a></li> <li><a href="https://mip.qiaqa.com/ask/198858.html" target="_blank">php如何让Swoole/Pool进程池实现Redis持久连接</a></li> <li><a href="https://mip.qiaqa.com/ask/198854.html" target="_blank">php字符串长度不一致如何解决</a></li> <li><a href="https://mip.qiaqa.com/ask/198850.html" target="_blank">php时区不正确如何解决</a></li> <li><a href="https://mip.qiaqa.com/ask/198846.html" target="_blank">php+fread()乱码如何解决</a></li> <li><a href="https://mip.qiaqa.com/ask/198845.html" target="_blank">php explode报错如何解决</a></li> <li><a href="https://mip.qiaqa.com/ask/198844.html" target="_blank">linux Centos如何安装PHP7</a></li> </ul> </div> <div class="zhi-wd-comm"> <div class="zhi-wd-comm-count"> <p style="text-align: center;">本站已关闭游客评论,请登录或者注册后再评论吧~</p> </div> <label id="AjaxCommentBegin"></label> <div class="cat-comments"> <label id="AjaxCommentBegin"></label> <label id="AjaxCommentEnd"></label> </div> </div> </div> </div> <div class="zhi-right"> <div class="side-box"> <div class="widget" id="divPrevious"> <h3>最近发表</h3> <ul> <li><a title="丰田bz3才是真正的大菜(丰田章男终于想通了)" href="https://mip.qiaqa.com/a/273965.html">丰田bz3才是真正的大菜(丰田章男终于想通了)</a></li> <li><a title="开吊车一个月休息几天(开吊车会苦多长时间)" href="https://mip.qiaqa.com/a/273964.html">开吊车一个月休息几天(开吊车会苦多长时间)</a></li> <li><a title="高铁官方回应卖不卖卫生巾(记者帮20块钱5片高铁上售卖卫生巾了)" href="https://mip.qiaqa.com/a/273963.html">高铁官方回应卖不卖卫生巾(记者帮20块钱5片高铁上售卖卫生巾了)</a></li> <li><a title="7个你不知道的汽车小知识(6个奇葩的汽车冷知识)" href="https://mip.qiaqa.com/a/273962.html">7个你不知道的汽车小知识(6个奇葩的汽车冷知识)</a></li> <li><a title="与汽车相关的七大谣言(那些超级奇葩的汽车谣言)" href="https://mip.qiaqa.com/a/273961.html">与汽车相关的七大谣言(那些超级奇葩的汽车谣言)</a></li> <li><a title="小鹏汽车2023在售(小鹏汽车的狂奔与失落)" href="https://mip.qiaqa.com/a/273960.html">小鹏汽车2023在售(小鹏汽车的狂奔与失落)</a></li> <li><a title="搞笑式说车(只知道别摸我不知道)" href="https://mip.qiaqa.com/a/273959.html">搞笑式说车(只知道别摸我不知道)</a></li> <li><a title="汽车服务门店开业营销方案(汽车服务门店短信营销的正确做法)" href="https://mip.qiaqa.com/a/273958.html">汽车服务门店开业营销方案(汽车服务门店短信营销的正确做法)</a></li> <li><a title="大学学习轨道交通信号有什么发展(这条地铁线的学霸含量)" href="https://mip.qiaqa.com/a/273957.html">大学学习轨道交通信号有什么发展(这条地铁线的学霸含量)</a></li> <li><a title="五十多岁学车能学会吗(五十多岁适合学车)" href="https://mip.qiaqa.com/a/273956.html">五十多岁学车能学会吗(五十多岁适合学车)</a></li> </ul> </div><div class="widget" id="divzhihotcon"> <h3>热评文章</h3> <ul> <li><a href="https://mip.qiaqa.com/baike/112130.html" title="保利为什么叫央企之王(保利是国企还是央企)">保利为什么叫央企之王(保利是国企还是央企)</a></li><li><a href="https://mip.qiaqa.com/jingyan/16928.html" title="恢复外国人入境时间表(中国取消14天隔离政策了吗)">恢复外国人入境时间表(中国取消14天隔离政策了吗)</a></li><li><a href="https://mip.qiaqa.com/hot/7442.html" title="香港哪些明星是反港分子(已背叛祖国的明星名单)被国家拉入黑名单明星">香港哪些明星是反港分子(已背叛祖国的明星名单)被国家拉入黑名单明星</a></li><li><a href="https://mip.qiaqa.com/jingyan/33703.html" title="身份造假与销售话术(记者卧底世纪佳缘 揭秘“红娘”)">身份造假与销售话术(记者卧底世纪佳缘 揭秘“红娘”)</a></li><li><a href="https://mip.qiaqa.com/jingyan/20393.html" title="PyCharm怎么连接配置mysql数据库?">PyCharm怎么连接配置mysql数据库?</a></li><li><a href="https://mip.qiaqa.com/baike/36524.html" title="如何将cda格式文件转换为mp3格式(cda格式怎么转换成mp3)">如何将cda格式文件转换为mp3格式(cda格式怎么转换成mp3)</a></li> </ul> </div><div class="widget" id="divzhihotart"> <h3>热门文章</h3> <ul> <li><div class="zhihotcon-img"><a target="_blank" href="https://mip.qiaqa.com/baike/112130.html" title="保利为什么叫央企之王(保利是国企还是央企)"><img src="https://mip.qiaqa.com/zb_users/cache/thumbs/a4779cbcdac7ebf6224393945dc33957-260-180-1.jpg" alt="保利为什么叫央企之王(保利是国企还是央企)" /></a></div><div class="zhihotcon-title"><h4><a href="https://mip.qiaqa.com/baike/112130.html" title="保利为什么叫央企之王(保利是国企还是央企)">保利为什么叫央企之王(保利是国企还是央企)</a></h4><p><i class="ri-time-line"></i> 2022-07-06</p></div></li><li><div class="zhihotcon-img"><a target="_blank" href="https://mip.qiaqa.com/jingyan/16928.html" title="恢复外国人入境时间表(中国取消14天隔离政策了吗)"><img src="https://mip.qiaqa.com/zb_users/cache/thumbs/2578fae51899089a615b5ec61a885c5b-260-180-1.jpg" alt="恢复外国人入境时间表(中国取消14天隔离政策了吗)" /></a></div><div class="zhihotcon-title"><h4><a href="https://mip.qiaqa.com/jingyan/16928.html" title="恢复外国人入境时间表(中国取消14天隔离政策了吗)">恢复外国人入境时间表(中国取消14天隔离政策了吗)</a></h4><p><i class="ri-time-line"></i> 2021-06-19</p></div></li><li><div class="zhihotcon-img"><a target="_blank" href="https://mip.qiaqa.com/hot/7442.html" title="香港哪些明星是反港分子(已背叛祖国的明星名单)被国家拉入黑名单明星"><img src="https://mip.qiaqa.com/zb_users/cache/thumbs/44a6f75b2e0362ab2099e5c6777ebfa5-260-180-1.jpg" alt="香港哪些明星是反港分子(已背叛祖国的明星名单)被国家拉入黑名单明星" /></a></div><div class="zhihotcon-title"><h4><a href="https://mip.qiaqa.com/hot/7442.html" title="香港哪些明星是反港分子(已背叛祖国的明星名单)被国家拉入黑名单明星">香港哪些明星是反港分子(已背叛祖国的明星名单)被国家拉入黑名单明星</a></h4><p><i class="ri-time-line"></i> 2021-04-20</p></div></li><li><div class="zhihotcon-img"><a target="_blank" href="https://mip.qiaqa.com/jingyan/33703.html" title="身份造假与销售话术(记者卧底世纪佳缘 揭秘“红娘”)"><img src="https://mip.qiaqa.com/zb_users/theme/ZhiMedia/var/nopic.png " alt="身份造假与销售话术(记者卧底世纪佳缘 揭秘“红娘”)" /></a></div><div class="zhihotcon-title"><h4><a href="https://mip.qiaqa.com/jingyan/33703.html" title="身份造假与销售话术(记者卧底世纪佳缘 揭秘“红娘”)">身份造假与销售话术(记者卧底世纪佳缘 揭秘“红娘”)</a></h4><p><i class="ri-time-line"></i> 2021-12-08</p></div></li><li><div class="zhihotcon-img"><a target="_blank" href="https://mip.qiaqa.com/jingyan/20393.html" title="PyCharm怎么连接配置mysql数据库?"><img src="https://mip.qiaqa.com/zb_users/cache/thumbs/a3b0b48ade92d5e11fe516f869de5d1d-260-180-1.jpg" alt="PyCharm怎么连接配置mysql数据库?" /></a></div><div class="zhihotcon-title"><h4><a href="https://mip.qiaqa.com/jingyan/20393.html" title="PyCharm怎么连接配置mysql数据库?">PyCharm怎么连接配置mysql数据库?</a></h4><p><i class="ri-time-line"></i> 2021-06-29</p></div></li><li><div class="zhihotcon-img"><a target="_blank" href="https://mip.qiaqa.com/baike/36524.html" title="如何将cda格式文件转换为mp3格式(cda格式怎么转换成mp3)"><img src="https://mip.qiaqa.com/zb_users/cache/thumbs/e93e1dd991aafa07edab580414a8e1ea-260-180-1.jpg" alt="如何将cda格式文件转换为mp3格式(cda格式怎么转换成mp3)" /></a></div><div class="zhihotcon-title"><h4><a href="https://mip.qiaqa.com/baike/36524.html" title="如何将cda格式文件转换为mp3格式(cda格式怎么转换成mp3)">如何将cda格式文件转换为mp3格式(cda格式怎么转换成mp3)</a></h4><p><i class="ri-time-line"></i> 2021-12-11</p></div></li> </ul> </div> </div> </div> </div> <div class="zhi-user-modal"> <div class="zhi-user-modal-container"> <ul class="zhi-switcher"> <li><a href="javascript:void(0);">用户登录</a></li> <li><a href="javascript:void(0);">注册新用户</a></li> </ul> <div id="zhi-login"> <form method="post" action="#" class="zhi-form"> <p class="fieldset"> <label class="image-replace zhi-username" for="edtUserName">用户名</label> <input type="text" class="full-width has-padding has-border" placeholder="用户名" id="edtUserName" name="edtUserName" size="20" value="" tabindex="1" /> </p> <p class="fieldset"> <label class="image-replace zhi-password" for="edtPassWord">密码</label> <input type="password" class="full-width has-padding has-border" placeholder="密码" id="edtPassWord" name="edtPassWord" size="20" tabindex="2" /> </p> <p class="fieldset"> <input type="checkbox" name="chkRemember" id="chkRemember" tabindex="98" /> <label for="chkRemember">记住登录状态</label> <a class="fieldsetrig" href="https://mip.qiaqa.com/?user=repass">忘记密码?</a> </p> <p class="fieldset"> <input id="btnPost" name="btnPost" type="submit" value="登录" class="full-width" tabindex="99"/> <input type="hidden" name="username" id="username" value="" /> <input type="hidden" name="password" id="password" value="" /> <input type="hidden" name="savedate" id="savedate" value="1" /> </p> </form> </div> <div id="zhi-singup"> <form method="post" action="#" class="zhi-form" id="formsing"> <p class="zhi-singup-set"> <label class="image-replace zhi-username">用户名</label> <input class="full-width has-padding has-border" id="zhanghao" name="zhanghao" type="text" placeholder="输入用户名"> </p> <p class="zhi-singup-set"> <label class="image-replace zhi-email">邮箱</label> <input class="full-width has-padding has-border" id="email" name="email" type="text" placeholder="输入mail"> </p> <p class="zhi-singup-set"> <label class="image-replace zhi-password">密码</label> <input class="full-width has-padding has-border" id="zpassword" name="zpassword" type="password" placeholder="输入密码"> </p> <p class="zhi-singup-set"> <label class="image-replace zhi-password">确认密码</label> <input class="full-width has-padding has-border" id="repassword" name="repassword" type="password" placeholder="确认密码"> </p> <p class="zhi-singup-set"> <input name="code" type="text" maxlength="6" class="form-control" placeholder="图形验证码" autocomplete="off" required=""> <span class="fieldset-code" style="width:96px;"> <img src="https://mip.qiaqa.com/zb_system/script/c_validcode.php?id=singin" id="singin" onclick="javascript:this.src='https://mip.qiaqa.com/zb_system/script/c_validcode.php?id=singin&tm='+Math.random();" alt="图形验证码"/> </span> </p> <p class="zhi-singup-set"> <input type="checkbox" name="xieyi" id="xieyi" tabindex="98" /> <label for="xieyi">我已阅读并同意 <a href="">用户协议</a></label> </p> <p class="zhi-singup-set"> <input id="btnSin" class="full-width" type="submit" value="注册新用户"> </p> </form> </div> <a href="javascript:void(0);" class="zhi-close-form"></a> </div> </div> <div class="zhiback" id="zhiback"> <div class="askBox"> <div class="ask-group"> <form action="https://mip.qiaqa.com/zb_users/theme/ZhiMedia/function/cmd.php?act=ask" method="POST" id="formask"> <div class="ask-item"> <div class="ask-item-img"> <img src="https://mip.qiaqa.com/zb_users/avatar/0.png?1688754308" alt="" /> </div> <input type="text" id="asktitle" name="asktitle" placeholder="请输入问题标题"> </div> <div class="ask-item"> <textarea name="askcon" id="askcon"> 请输入问题背景及详细信息... </textarea> </div> <div class="ask-footer"> <div class="ask-item-as"> <input type="hidden" name="csrfToken" value="5af961129bcb79b88ff54a377ec23570"> <input type="submit" class="ask-item-btn" value="发布" /> </div> </div> </form> </div> <button aria-label="关闭" type="button" class="ask-close"><i class="ri-close-line"></i></button> </div> </div> <div id="backbox" class="backbox"> <div class="back genight"><i class="ri-sun-fill"></i></div> <div class="back" id="totop"><i class="ri-arrow-up-s-line"></i></div> </div> <div class="zhi-menu-m"> <button type="button" class="btn-close" aria-label="Close"><i class="ri-close-line"></i></button> <div class="logo"> <a href="https://mip.qiaqa.com/"><img src="https://mip.qiaqa.com/logo.png" alt="恰卡编程网"/></a> </div> <div class="zhi-menu-search"> <form name="search" method="post" action="https://mip.qiaqa.com/zb_system/cmd.php?act=search"> <input name="q" size="11" class="zhi-menu-search-input" type="text" placeholder="请输入关键词" autocomplete="off"> <button class="zhi-menu-search-submit" type="submit"><i class="ri-search-2-line"></i></button> </form> </div> <nav id="mnav"></nav> </div> <footer class="zhi-footer"> <div class="inner"> <div class="zhi-footer-center"> <div class="footer-center-left"> <p class="footer-center-info"> 恰卡编程网--程序员编程资料和编程经验分享平台,从入门到进阶,非常详细。学习Java级其他网络编程语言的人很多,借助本站教程,相信你能很快精通并出类拔萃。 </p> </div> <div class="footer-center-right"> <div class="footer-center-weixin"> <img src="https://mip.qiaqa.com/zb_users/theme/ZhiMedia/include/ewm.png" alt="微信公众号"/> </div> <div class="zhi-footer-tubiao"> <ul> <li> <a href="https://weibo.com/" target="_blank"><i class="ri-weibo-fill"></i></a> </li> <li> <a href="http://wpa.qq.com/msgrd?v=3&uin=5733401&site=im.qq.com&menu=yes" target="_blank"><i class="ri-qq-fill"></i></a> </li> <li> <a href="mailto:5733401@qq.com"><i class="ri-mail-line"></i></a> </li> </ul> </div> </div> </div> <div class="zhi-footer-bottom"> <p>Copyright © 2018-2022 恰卡网 qiaqa.com 版权所有 <a rel="nofollow" class="ico-ico" href="http://www.beian.gov.cn/portal/recordQuery?token=9c5a0517-c8ae-4a6b-b2c7-0dbf41cd45f0" target="_blank">苏ICP备18042295号</a> </p> </div> </div> </footer> <script> var _hmt = _hmt || []; (function() { var hm = document.createElement("script"); hm.src = "https://hm.baidu.com/hm.js?a88faa5532b1e037da0ed2f1324c3674"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s); })(); </script> <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https'){ bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else{ bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(bp, s); })(); </script><link href="https://mip.qiaqa.com/zb_users/theme/ZhiMedia/style/css/fanbox.css" rel="stylesheet" type="text/css" /> <script src="https://mip.qiaqa.com/zb_users/theme/ZhiMedia/script/lightbox.js"></script> <script src="https://mip.qiaqa.com/zb_users/theme/ZhiMedia/script/jquery.form.js"></script> <script src="https://mip.qiaqa.com/zb_users/theme/ZhiMedia/script/zhimedia.js?v=1.3.3"></script> </body> </html><!-- 缓存生成时间: 2023-07-08 02:25:07 by ZBlogCache 0.02 ms , 0 query , 841kb memory , 0 error -->