0

下面是我的代码:

index.php 文件

index.php 文件的 javascript

function Result()
{
  var marks = 55;
  document.getElementById("hdnmarks").innerHTML= marks; 
  window.location = "results.php";
}

index.php 的 HTML

<input type="hidden" name="hdnmarks" id="hdnmarks">

描述:我有一个带有 url 的网页localhost/index.php。在 index.php 中,我有一个提交按钮,点击它我调用Resultjavascript 方法设置标记 = 55 并将其放入隐藏字段并将我带到results.php页面。

results.php中,我必须在数据库中插入标记值。但是我应该如何访问标记,因为这些标记存储在隐藏字段中index.php文件的隐藏字段中?

我想在会话中打上标记,但是我应该如何在 javascript 函数中维护 PHP 会话?我的意思是在移动到之前我应该​​在哪里和什么时候在课程中打分results.php

4

4 回答 4

2

你的问题有两个部分

1)

但是我应该如何访问这些标记,因为它们存储在 index.php 文件的隐藏字段中?

标准方法是使用表格

<form action="index.php" method=POST>
  <input type="hidden" name="hdnmarks" id="hdnmarks">
</form>

使用按钮或 javascript 提交该表单以将数据发布到 index.php

在 index.php 中

<?php

$marks = $_POST['hdnmarks'];

?>

2)

我的意思是,在转到 results.php 之前,我应该在何时何地在会话中添加标记?你必须启动会话并创建一个会话变量

索引.php

<?php
session_start();
$marks = $_POST['hdnmarks'];
$_SESSION['marks'] = $marks;
?>

结果.php

<?php session_start() ?>
...
//javascript code
var marks = <?php echo $_SESSION['marks'] ?>
...

注意:这不是将数据从一个传递到另一个的好方法,也不是将数据从 php 传递到 javascript 的好方法,如果您使用的是数据库,会话也没有用处

于 2013-11-09T09:03:15.310 回答
2

你可以像这样在你的页面上开始会话<?php session_start();?>并为这样的会话创建隐藏字段

<input type="hidden" name="mysession" id="mysession">

并修改像这样的javascript函数

function Result(){
  var marks = 55;
  document.getElementById("mysession").innerHTML= <?php echo session_id();?>; 
  document.getElementById("hdnmarks").innerHTML= marks; 
  document.getElementById('Form').submit();
}

用您的表单名称更改表单名称

于 2013-11-09T08:55:19.463 回答
0

只是 Javascript 使用这个:

function getCookie(name) {
  var value = "; " + document.cookie;
  var parts = value.split("; " + name + "=");
  if (parts.length == 2) return parts.pop().split(";").shift();
}

getCookie('PHPSESSID');
于 2015-03-28T09:57:07.143 回答
0

$_SESSION只要访问会话的 javascript 代码包含在.php文件中,我们就可以从 javascript 访问 php 。这种 javascript 代码称为内联 javascript。

//index.php

<html>

  <script>
     const userId = '<?php echo $_SESSION["user_id"]; ?>'
     console.log('The user id is', userId)
  </script>
  <script src="other.js"></script>

</html>

//other.js

console.log('Once again, the user id is', userId)

将生成的 html 将具有已设置 userId 的脚本。可以从内联脚本之后的其他脚本访问该变量。

于 2021-09-20T10:48:07.773 回答