gpt4 book ai didi

php - ext js 存储/模型示例 .net - 将 php/mysql 转换为 .netwebservier/sql

转载 作者:行者123 更新时间:2023-11-29 21:21:21 26 4
gpt4 key购买 nike

下午好,

我正在学习 MASTERING EXT JS 的教程,并且一直坚持从数据库检索数据。 这本书一直在使用 PHP 和 MYSQL 的示例...我不知道。我使用 .net Web 服务器和 SQL,因此我尝试将教程中的示例转换为我在 .net Web 服务器上执行此操作的方式。

JSON 格式的结果应该是这样的

    {
"data"[
{
"id":1",
"text" : "menu1",
"items": [
{"id": 2",
"text: "submenu2
},
{
"id":"3",
"text":"submenu3"
}

他们给我的 php 代码是这样的

php 文件 1

$permissions = retrievePermissions($userName); $modules = retrieveModules($permissions); $result = retrieveMenuOptions($modules, $permissions);

php文件2

function retrievePermissions($userName){

require('../db/db.php');

$sqlQuery = "SELECT p.menu_id menuId FROM User u ";
$sqlQuery .= "INNER JOIN permissions p ON u.groups_id = p.groups_id ";
$sqlQuery .= "INNER JOIN menu m ON p.menu_id = m.id ";
$sqlQuery .= "WHERE u.username = '$userName' ";

$permissions = [];

if ($resultDb = $mysqli->query($sqlQuery)) {
while($user = $resultDb->fetch_assoc()) {
$permissions[] = $user['menuId'];
}
}

$resultDb->free();
$mysqli->close();

return $permissions; }

function retrieveModules($permissions){

require('../db/db.php');

$inClause = '(' . join(',',$permissions) . ')';

$sqlQuery = "SELECT id, text, iconCls FROM menu WHERE menu_id IS NULL AND id in $inClause";

$modules = [];

if ($resultDb = $mysqli->query($sqlQuery)) {
while($module = $resultDb->fetch_assoc()) {
$modules[] = $module;

}
}

$resultDb->free();
$mysqli->close();

return $modules; }

function retrieveMenuOptions($modules, $permissions){

require('../db/db.php');

$inClause = '(' . join(',',$permissions) . ')';

$result = [];

foreach ($modules as $module) {

$sqlQuery = "SELECT * FROM menu WHERE menu_id = '";
$sqlQuery .= $module['id'] ."' AND id in $inClause";

// check if have a child node
if ($resultDb = $mysqli->query($sqlQuery)) {

// determine number of rows result set
$count = $resultDb->num_rows;

if ($count > 0){

$module['items'] = array();

while ($item = $resultDb->fetch_assoc()) {
$module['items'][] = $item;
}

}
$result[] = $module;
}
}

$resultDb->close();
$mysqli->close();

return $result;

我试图弄清楚如何使用我的 .net webservice/SQL 而不是 php/MySQL 返回相同的 json 格式。 看起来它有 3 个独立的功能。并将结果数组作为下次查询的参数。

基础知识看起来很​​简单...就像 retreivePermissions...它是一个简单的 SELECT WHERE 语句。 retrieveModules 似乎是第一个结果的内部联接。 但最后一个...retrieveMenuOptions,它将两个结果作为参数拉入,并返回结果。

这就是我不明白的...我怎样才能以相同的 JSON 结果格式从 SQL 中提取结果。

我说得有道理吗?

最佳答案

我有一个使用 .NET Web API Controller 的示例。不完全是网络服务,但您会明白的。在这里查看:http://jorgeramon.me/2015/ext-js-grid-search-with-net-and-mysql-backend/

关于php - ext js 存储/模型示例 .net - 将 php/mysql 转换为 .netwebservier/sql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35708792/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com