试图将三个参数从一个 php 文件传递​​到另一个文件

Trying to pass three parameters from one php file to another

我正在尝试将三个参数从一个 php 文件传递​​到另一个文件。其中两个参数位于在单击按钮以调用第二个 php 文件之前很久就已经确定的变量中,但是一个将在单击按钮时从文本框中获取。

到目前为止,我在第一个 php 文件中有以下(片段)。现有变量中的两个参数在 URL 中显示得很好,但我不知道如何获取要包含的学号。 URL 刚好有 "studentNumber=?&club=..."

谢谢!

   <input type="text" id="studentNum" placeholder="Student Number">
   <input type="button" value="Add Student" onclick="window.location = '<?php $url = 'http://npapps.peelschools.org/editor/add.php?studentNumber='.$_GET["StudentNum"].'&club='.$club.'&type='.$type.''; echo $url;?>'" />

如果您使用 $_GET["StudentNum"],它必须来自 HTML-形式或 html-link:

<a href="form.html?StudentNum=1337">example</a>

<form method="GET"><input name="StudentNum" value="1337"></form>

祝你好运

您当前页面的 URL 需要有 studentNum 作为查询参数才能使用 $_GET。例如,如果当前页面 URL =

http://npapps.peelschools.org/myotherpage.php?studentNum=100

那么你可以$_GET["studentNum"]。此外,如果您通过 ajax

访问此 URL
http://npapps.peelschools.org/myotherpage.php

那么它必须作为数据参数传递。

查明页面的 URL 是您显示的 HTML 所在的位置,如果 studentNum 尚未作为查询参数或数据参数传递,您将获得那里(例如锚标记 href)然后将该参数添加到 URL.

真的有必要用window.location吗?我会鼓励你使用这样的东西

function doSubmit() {
  document.getElementById("myformid").submit();
}
<form id="myformid" action="receivingPHP.php" method="POST">
  <input id="studentnr" type="text" value="42" />
  <button onclick="doSubmit()">Send</button>
</form>

当然 Whosebug 服务器上没有 receivingPHP.php 文件,所以如果您尝试这个脚本,您将看到一个白页(在右上角显示 close 的地方关闭它)

最终对其进行了修改,以便所有信息都以表格形式发送,而不是试图将其嵌入按钮中。秘密来自 w3schools,在那里我想出了如何在表单的隐藏输入元素中隐藏已知参数,如下所示:

<form action="add.php" method="GET">
     <input name="studentNo" type="text" placeholder="Student Number"  />
     <input name="club" type="hidden" value="<?php echo htmlspecialchars($club); ?>" />
     <input name="type" type="hidden" value="<?php echo htmlspecialchars($type); ?>" />
     <input type="submit" value="Add Student" />
</form>