php - 我可以从服务器端选择的数据直接将数据注入(inject) session 存储吗?

标签 php mysql html session-storage

我想知道是否可以在 mysql 数据库上进行服务器端选择并将结果直接注入(inject) HTML5 session 存储而不使用 ajax。场景如下:

假设服务器端脚本正常,因此:

    header( "Content-type: application/json" );

    $jsondata = array();

    while ($Row = mysql_fetch_array($params))
    {
    $jsondata[]= array('field1'=>$Row["field1"], 
                           'field2'=>$Row["field2"],
                           'field3'=>$Row["field3"],
                           'field4'=>$Row["field4"]);
    };

    echo json_encode(array("eeData" => $jsondata));

通常,如果这是 ajax,我会等待响应,然后我可以解析结果并以这种方式处理它。但该方法是在客户端发起的,实际上是对服务器的第二次请求。

但是,我想知道这是否可以在页面的绝对初始请求中实现,即在第一次请求时,获取数据并以某种方式在页面首次提供的同时将其直接注入(inject) session 存储.

原理不明之处请大家指正。

最佳答案

网络服务器究竟应该如何进入浏览器来存储这些数据?在 websockets api 变得更加广泛之前,服务器向客户端发送数据的唯一方式是在客户端发起请求时。您不能只是“接触”浏览器并将数据填充到其中。

如果您希望在初始页面请求期间这样做,您始终可以将数据嵌入到正在发送的页面中

<script>
    var data_to_store = <?php echo json_encode($your_structure) ?>;
</script>

它会创建一个“胖”页面,但它会在同一个请求中发送数据。任何其他方法都需要与服务器建立第二个连接。

关于php - 我可以从服务器端选择的数据直接将数据注入(inject) session 存储吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7367653/

相关文章:

php - 未使用的 Composer 软件包会对性能或安全性产生影响吗?

php - 如何从 PHP 向通常使用 AJAX 调用访问的服务发送 POST 请求?

python - 如何最适合在网络服务器上运行的API检查其公共(public)可用性/状态

html - 导航栏中的链接颜色是不可更改的

javascript - JavaScript文件放在head中时构造 'CustomElement'错误失败

php - Laravel 搜索属于

Python、MySQL 使用变量时不插入。可以就地使用变量的精确值,并且它可以工作

php - 导出 php mysql 时出现语法错误

html - IE分页问题

php - 使用 PHP 和 $_GET ['' 在 <a href> 中传递多个变量]