【问题标题】:Change Values on Page A from Page B via php or JScript [closed]通过php或JScript从页面B更改页面A上的值[关闭]
【发布时间】:2018-05-17 08:43:09
【问题描述】:

由于我正在构建一个游戏托管面板并且我不想手动编辑所有内容,因此我需要一些可以通过另一个面板更改页面上某些内容的东西。 假设我有一个我的 PageA:
/面板A\
游戏:GAMENAME
插槽:插槽
价格:价格

/面板B\
.......
等等。

我已经尝试了一些关于 php 会话和变量的东西,但没有真正完成这项工作。所以我正在寻找的是一种方法来更改通过 PageB 分隔的每个面板的 PageA 上的变量(GAMENAME、SLOTS 等)。 因为假设托管页面的另一个管理员需要编辑价格。他将继续使用 PageB,然后使用他的凭据登录,然后只需转到 PanelC 并更改价格变量,保存并注销 PageB。 那可能吗? 我现在确实搜索了几个小时+我对如何完成这项工作一无所知。 提前谢谢你

【问题讨论】:

  • 如果您无法解决这个问题,您将如何创建游戏?将设置从您喜欢的任何页面/会话/浏览器/位置存储在数据库中,并让“游戏”从同一个数据库加载这些设置。如果您需要它,请定期使用 ajax 或页面刷新检查更改。
  • 它是一个游戏主机面板。显示游戏服务器价格的网站。这不是游戏。
  • 您应该阅读教程并学习基础知识。这不是 badadviceoverflow.com。至少阅读How to Ask
  • 您基本上是在询问动态内容网站的工作原理。在提出过于宽泛的问题之前先做一些基础研究

标签: javascript php html session variables


【解决方案1】:

虽然借助 include()require() 的力量这是可能的,但您描述的情况听起来会受益来自数据库。我建议建立一个数据库,并使用类似于以下结构的表:

游戏

ID | Name   | Price
-------------------
1  | Game A | $20
2  | Game B | $30 

然后,您将使用将自己的“标识符”传递到数据库查询的各个页面。下面是使用 MySQLi 的一种方法示例:

game.php?id=1 // Sample pages
game.php?id=2 // Sample pages

$id = $_GET['id']; // Work out which game you're actively viewing

// Grab the information for the target game from the database
$stmt = $mysqli->prepare("SELECT Name, Price FROM games WHERE id = ?");
$stmt->bind_param("i", $id);
$stmt->execute();
$stmt->bind_result($name, $price);

您现在有两个变量,$name$price,它们将为您提供您网站上任何游戏的相关名称和价格。这些可以直接输出到页面,以便向用户展示相关信息。

至于编辑,您会以同样的方式进行;而不是SELECT 语句,您将使用UPDATE(或INSERT)语句。不要忘记,您需要确保管理员在允许任何UPDATE 语句被执行之前实际上已经过身份验证!

另外,请注意上面使用 parameterised queries,如果您想避免 SQL injection,您必须使用它。如果您为管理员构建编辑功能,这些查询也需要参数化。

希望这会有所帮助! :)

【讨论】:

  • 非常感谢您的回答。我自己都没想过 mysql :") 我会尝试一下并找到方法。
【解决方案2】:

解决此问题的一种方法是将全局变量放在单独的文件 (global.php) 中,然后您可以从每个“面板”访问这些变量。

例子:

// in global.php

$price = $100;
$slots = 4;

然后从 panelA.php 和 panelB.php 调用它们

// in panelA.php or panelB.php

require_once("global.php");
$myslotsvalue = $slots;
$mypricevalue = $price;

未测试。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-14
    • 1970-01-01
    • 1970-01-01
    • 2017-02-09
    • 2014-03-22
    相关资源
    最近更新 更多