我指导我网站的用户通过两步选择,一个接一个地显示html选择元素。第一个用于选择训练师,第二个用于选择怪物。在这之后,我想要显示一个战斗屏幕,上面有关于训练师和怪物的信息。因此,我想将信息存储在全局数组中。我试图使用POST数组,但是一旦我包含了战斗内容,它就会被覆盖。
在我的小项目中,我使用通过
包含的config.php文件require_once('config.php');
它还包括我的functions.php。在这个配置文件中,我声明了一个这样的数组:
$wahl = array('trainer' => 'test', 'monster' => 'test' );
现在在一个函数中,我将一些内容写入此数组的新索引:
function trainernameBelegen($t) {
global $con;
global $wahl;
$sql = "SELECT * FROM `trainer` WHERE t_id = '".$t."'";
$result = mysqli_query($con, $sql);
$row = mysqli_fetch_array($result);
$wahl['trainer'] = $row['name'];
echo $wahl['trainer'];
}
这是在第一次选择后执行并且正常工作。我测试了回显数组,我得到了我期望的值。
在第二次选择之后,数组被覆盖并再次显示“test”和“test”。
这是index.php的内容部分
<?php require_once( 'config.php');
if (isset($_POST['s_tselect'])) {trainernameBelegen($_POST['trainerwahl']);}
if (!isset($_POST['monsterauswahl'])) {require_once('startseite.php');}
else {require_once('battle.php');}
?>
首先需要config.php,然后检查教练是否已被选中,如果是,则调用将教练名称放入全局数组的函数。如果没有选择怪物,则显示startseite.php(带有那些选择器) - 否则就是战斗画面。
非常感谢任何帮助!