搭建PHP网站,连接已有的sqlite数据库,然后执行某一条select命令,查询结果反馈到网页上。

img


上图是我做的一个基于vb+datagrid环境下执行指定规则(也就是select语言)读取sqlite数据库。
我想将这个功能移植到网页版去,这样就彻底实现功能的网络化处理了。
我现有的资源是:
1、一个具有php功能的虚拟空间。
2、本地2020wh.db数据库。
是否协助帮忙解决这个软件的网络化功能。
基本如下:

img

这个太简单了啊,只需要建立一个动态网站

$filename = "xxx.db"
$db = new SQLite3($filename);
if (!$db) {
    exit("连接失败:". $db->lastErrorMsg())
}

// 查询当前表的所有数据
$sql = 'select * from 表名';
$query = $db->query($sql);
$rel = $query->fetchAll(PDO::FETCH_ASSOC);

# 接口输出
echo json_decode($rel, true);
$db->close();

前端调用当前接口就会显示这个表的所有数据的

你需要的事代码吧!

搭个php网站,访问sqlite数据库,数据输出到php网页。

https://blog.csdn.net/weixin_39936558/article/details/111818640?spm=1005.2026.3001.5635&utm_medium=distribute.pc_relevant_ask_down.none-task-blog-2~default~OPENSEARCH~Rate-12.pc_feed_download_top3ask&depth_1-utm_source=distribute.pc_relevant_ask_down.none-task-blog-2~default~OPENSEARCH~Rate-12.pc_feed_download_top3ask

你可以看看:

http://phpa.96448.cn/
https://blog.csdn.net/Feng_xiaoqi/article/details/103978386

个人给你个方案:
首先已经定位 你要采用B/S架构。根据你的需求(搭建PHP网站,连接已有的sqlite数据库,然后执行某一条select命令,查询结果反馈到网页上。),你要做的是,第一步,需要写一个HTML页面,不如index.html,这个页面展示你从数据库的查询结果;然后后端你是打算用PHP写,那就更简单了,楼上有人已经写了一个例子,只需要你将查询的结果返回给index.html,然后最主要的是你的index.html 可以使用jquery ajax (可以看下教程,看看怎么往服务端发请求,很简单的) 去 服务端拿数据,服务端已经加载过你写的PHP了,它收到你前端的请求后就会执行对应的函数处理。我写的可能有点啰嗦,但是你可以参考下

下面这段代码,不明白可以问题,前提是要会搭建php,和能够运行php文件,下图是运行结果,html的css样式可以随便调

img


<?php

class MyDB extends SQLite3
{
    function __construct()
    {
        $this->open('phpdb.db');
    }
}
$db = new MyDB();
if(!$db){
    echo $db->lastErrorMsg();
}
//sql语句 创建个company表
//$sql =<<<EOF
//      CREATE TABLE company
//      (id INT PRIMARY KEY     NOT NULL,
//      name           TEXT    NOT NULL,
//      age            INT     NOT NULL,
//      address        CHAR(50),
//      salary         REAL);
//EOF;

//执行sql语句
//$ret = $db->exec($sql);
//执行结果

//if(!$ret){
//    echo $db->lastErrorMsg();
//}

//插入数据
//$sql = "INSERT INTO company (id,name,age,address,salary)
//      VALUES (2, 'Lina', 28, 'California', 18000.00 );";
//$ret = $db->exec($sql);
//if(!$ret){
//    echo $db->lastErrorMsg();
//}


//查询数据
$sql =<<<EOF
      SELECT * from company;
EOF;
//查询出来的数据,拿来遍历
$data = $db->query($sql);
if(!$data){
    echo $db->lastErrorMsg();
}
$tt = '';
while($row = $data->fetchArray(SQLITE3_ASSOC)){
    $tt .= "<tr>
            <td>".$row['id']."</td>
            <td>".$row['name']."</td>
            <td>".$row['age']."</td>
            <td>".$row['address']."</td>
            <td>".$row['salary']."</td>
        </tr>";
}

$db->close();
?>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>职称统计表</title>
    <style>
        .table-c table{border-right:1px solid #F00;border-bottom:1px solid #F00}
        .table-c table td{border-left:1px solid #F00;border-top:1px solid #F00}
    </style>
</head>
<body>
<div class="class="table-c"">
    <table  width="400" border="0" cellspacing="0" cellpadding="0">
        <tr>
            <td>ID</td>
            <td>名称</td>
            <td>年龄</td>
            <td>地址</td>
            <td>薪水</td>
        </tr>
        <?php
            echo $tt;
        ?>
    </table>
</div>

</body>
</html>




这里假设你的数据库表字段分别为schooltype schoolname schoolcode schoolmidnum schoolhigh schoollittle
你的数据库名称是school, 表名为schoolinfo

<?php
/***
//应用举例
require_once('cls_sqlite.php');
//创建实例
$DB=new SQLite('school.db'); //这个数据库文件名字任意
//读取数据
print_r($DB->getlist('select * from schoolinfo order by id desc'));
***/

class SQLite
{
 function __construct($file)
 {
  try
  {
   $this->connection=new PDO('sqlite:'.$file);
  }
  catch(PDOException $e)
  {
   try
   {
    $this->connection=new PDO('sqlite2:'.$file);
   }
   catch(PDOException $e)
   {
    exit('error!');
   }
  }
 }
 function __destruct()
 {
  $this->connection=null;
 }
 function query($sql) //直接运行SQL,可用于更新、删除数据
 {
  return $this->connection->query($sql);
 }
 function getlist($sql) //取得记录列表
 {
  $recordlist=array();
  foreach($this->query($sql) as $rstmp)
  {
   $recordlist[]=$rstmp;
  }
  return $recordlist;
 }
 function Execute($sql)
 {
  return $this->query($sql)->fetch();
 }
 function RecordArray($sql)
 {
  return $this->query($sql)->fetchAll();
 }
 function RecordCount($sql)
 {
  return count($this->RecordArray($sql));
 }
 function RecordLastID()
 {
  return $this->connection->lastInsertId();
 }
}
?>

页面查询,将结果渲染到页面??

就是通常的前端调接口(这是你的需求是前端指定sql)

直接写一个查询数据库的api接口就可以了,然后让前端调用一下就可以了

其实我需要解决的是两个问题,一是如何在PHP语言环境下,网页里读取sqlite数据库。二是如何通过select执行指定的语句,然后将查询结果反馈到网页上。

后端写个接口,读取select语句,前端嵌入接口数据,就可以展示表格数据了

这个理论上是可以的,不过需要再学习网络数据传输相关的知识,直接简单粗暴的传输网络会有很大问题的

应该会有帮助