Javascript 在两个HTML和PHP之间交换变量

Javascript 在两个HTML和PHP之间交换变量,javascript,php,html,mysql,session-variables,Javascript,Php,Html,Mysql,Session Variables,我正在尝试对mikrotik热点做一个单独的表单,该设备不允许在其内部使用PHP,我需要将变量从设备携带到外部PHP页面,该页面将保存客户数据并在热点中启用试用 在这个设备中,它承载了一个HTML页面,其中包含以下代码 <html> <head><title>...</title></head> <body> $(if chap-id) <noscript> <center><b>Java

我正在尝试对mikrotik热点做一个单独的表单,该设备不允许在其内部使用PHP,我需要将变量从设备携带到外部PHP页面,该页面将保存客户数据并在热点中启用试用

在这个设备中,它承载了一个HTML页面,其中包含以下代码

<html>
<head><title>...</title></head>
<body>
$(if chap-id)
<noscript>
<center><b>JavaScript required. Enable JavaScript to continue.</b></center>
</noscript>
$(endif)
<center>If you are not redirected in a few seconds, click 'continue' below<br>
<form name="redirect" action="http://10.2.3.100/cadastro.html?mac=$(mac)" method="post">
<input type="hidden" name="mac" value="$(mac)">
<input type="hidden" name="ip" value="$(ip)">
<input type="hidden" name="username" value="$(username)">
<input type="hidden" name="link-login" value="$(link-login)">
<input type="hidden" name="link-orig" value="$(link-orig)">
<input type="hidden" name="error" value="$(error)">
<input type="hidden" name="chap-id" value="$(chap-id)">
<input type="hidden" name="chap-challenge" value="$(chap-challenge)">
<input type="hidden" name="link-login-only" value="$(link-login-only)">
<input type="hidden" name="link-orig-esc" value="$(link-orig-esc)">
<input type="hidden" name="mac-esc" value="$(mac-esc)">
<input type="submit" value="continue">
</form>
<script language="JavaScript">
<!--
    document.redirect.submit();
//-->
</script></center>
</body>
</html>

...
$(如果是chap id)
JavaScript是必需的。允许JavaScript继续。
$(endif)
如果几秒钟内没有重定向,请单击下面的“继续”
我在google中学习了搜索,我可以通过在URL末尾插入变量,将变量发送到另一个页面,所以好的,我将发送启动试用所需的变量$MAC

接收它的页面是一个用HTML编写的表单页面,我无法接收此页面中的变量,我需要接收此变量以发送到另一个页面,在PHP中是最后一个将表单保存在MySQL中的页面,并在发送到Mikrotik后,将与客户端MAC的链接发送给Mikrotik,以允许其在internet上浏览

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>CADASTRO DE CLIENTES COM BANCO DE DADOS E PHP</title>
<style type="text/css">


</head>

<body>
<p id="demo"></p>
<script type"text/javascript">
var qs = new QueryString();
var v1 = qs.get("mac");
document.getElementById("demo").innerHTML = v1;
</script>


<form id="cadastro" name="cadastro" method="post" action="cadastro.php" onsubmit="return validaCampo(); return false;">
  <table width="625" border="0">
    <tr>
      <td width="69">Nome:</td>
      <td width="546"><input name="nome" type="text" id="nome" value="$(mac)" size="70" maxlength="60" />
        <span class="style1">*</span></td>
    </tr>
    <tr>
      <td>Email:</td>
      <td><input name="email" type="text" id="email" size="70" maxlength="60" />
      <span class="style1">*</span></td>
    </tr>

    <tr>
      <td colspan="2"><p>
        <input name="cadastrar" type="submit" id="cadastrar" value="Concluir meu Cadastro!" /> 
        <br />
          <input name="limpar" type="reset" id="limpar" value="Limpar Campos preenchidos!" />
          <br />
          <span class="style1">* Campos com * s&atilde;o obrigat&oacute;rios!          </span></p>
      <p>&nbsp; </p></td>
    </tr>
  </table>
</form>
</body>
</html>

达多银行客户卡

var qs=new QueryString(); var v1=qs.get(“mac”); document.getElementById(“demo”).innerHTML=v1; 诺姆: * 电邮: *

*Campos com*sã;o obrigató;里奥斯

现在进入PHP页面

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>

<body>
<?php 
// RECEBENDO OS DADOS DO PC DO USUARIO
   $mac=$_POST['mac'];

// RECEBENDO OS DADOS PREENCHIDOS DO FORMULÁRIO !
$nome   = $_POST ["nome"];  //atribuição do campo "nome" vindo do formulário para variavel  
$email  = $_POST ["email"]; //atribuição do campo "email" vindo do formulário para variavel

//Gravando no banco de dados !

//conectando com o localhost - mysql
$conexao = mysql_connect("localhost","root","senha");
if (!$conexao)
    die ("Erro de conexão com localhost, o seguinte erro ocorreu -> ".mysql_error());
//conectando com a tabela do banco de dados
$banco = mysql_select_db("cadhotspot",$conexao);
if (!$banco)
    die ("Erro de conexão com banco de dados, o seguinte erro ocorreu -> ".mysql_error());



$query = "INSERT INTO `clientes` ( `nome` , `email`  ) 
VALUES ('$nome', '$email', '$sexo' '')";

mysql_query($query,$conexao);

echo "Seu cadastro foi realizado com sucesso!<br>Agradecemos a atenção.";
?>
Mac: <?php echo $mac ?><br>

<meta http-equiv="refresh" content="60; url=<?php echo $linkloginonly; ?>?dst=<?php echo $linkorigesc; ?>&username=T-<?php echo $mac; ?>">


</body>
</html>

无标题文件

要将mac的值转发到php页面,请尝试在表单中添加以下JS代码。这将创建一个隐藏字段,提交时将mac值发布到php页面

<script type="text/javascript">
var qs = new QueryString();
var v1 = qs.get("mac");
document.write('<input type="hidden" name="mac" value="' + v1  + '">')
</script>

var qs=new QueryString();
var v1=qs.get(“mac”);
文件。写入(“”)

html页面中缺少一些结尾标记。

您可以使用javascript作为示例吗?然后你可以读取url中的参数。这看起来非常不安全。您确定您的用户参数正确吗
$\u POST
数据从不直接进入查询
mysql\u query
是一个过时的接口,不应在新的应用程序中使用,并将在未来的PHP版本中删除。一个现代的替代品。如果您是PHP新手,可以通过以下指南来帮助您解释最佳实践。我从未接触过使用PHP编写的任何内容,我当然想学习,但我必须等到明天才能完成此工作。好的,我已经将其插入到我的cadastro.html中,但是我在PHP中插入了什么来命名此变量?
<script type="text/javascript">
var qs = new QueryString();
var v1 = qs.get("mac");
document.write('<input type="hidden" name="mac" value="' + v1  + '">')
</script>