繁体   English   中英

PHP GET($ _GET)总是打印变量名而不是值

[英]PHP GET ($_GET) always prints name of variable and not value

我想做的是从自动完成菜单(ui.item.label)中获取所选术语的值,将其存储在变量中并将该值发送到我的数据库。 为此,我还有一个名为“ proceed.php”的php文件,它将我们连接到数据库,并将数据插入到表中。

但是我似乎始终无法通过外观来传递变量“ $ selected”以继续进行操作 ,无论我做什么,浏览器都会显示$ vari ,即,此处传递的变量proceed1.php?var=$vari

背景故事-你可能会注意到我已经赋值的变量瓦里苹果。 但是,我只看到$ vari作为浏览器上的输出,而不是苹果。

任何帮助将不胜感激。

非常感谢你。

look.php

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">
  <script src="//code.jquery.com/jquery-1.10.2.js"></script>
  <script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
  <script>
  $(function() {
    $( "#route" ).autocomplete({
      source: 'search.php',
      select: function( event , ui ) {
      $selected=ui.item.label;}   
    });
  });
  $vari="apple";
  </script>

</head>
<link rel="stylesheet" type="text/css" href="look.css" media="screen" /> 
<body> 
<div class="ui-widget">
  <label for="route">Router Name: </label>
  <input id="route">
  <br><br><br>
  <a href='proceed1.php?var=$vari' id=btn2 class="btn">Proceed</a>
</div>
</body>
</html>

进行

<?php
$dbHost = 'localhost';
$dbUsername = 'root';
$dbPassword = '';
$dbName = 'searchrouters';
//connect with the database
$db = new mysqli($dbHost,$dbUsername,$dbPassword,$dbName);
//get search term
$vari = $_GET['var'];
echo $vari;
?>

更新

谢谢,评论中提供的解决方案有效。 但是现在当我尝试获取所选变量的值时:

 <?php
  $vari=$_GET['selected'];
 ?>

然后将其传递给下一页:

<a href='proceed1.php?var=<?php echo $vari;?>' id=btn2 class="btn">Proceed</a>

我在浏览器上收到以下错误:

未定义的索引:在第19行的C:\\ wamp \\ www \\ look.php中选择

您不能在jquery中声明php变量。

尝试这个

<script>
  $(function() {
    $( "#route" ).autocomplete({
      source: 'search.php',
      select: function( event , ui ) {
      $selected=ui.item.label;}   
    });
  });
  </script>
<?php
  $vari="apple";
?>

<a href="proceed1.php?term=<?php echo $vari;?>" id=btn2 class="btn">Proceed</a>

您应该在这里更改$vari="apple"; script标签并在php标签内使用

<?php $vari="apple"; ?>

然后像这样获取变量$vari

<a href="proceed1.php?term=<?php echo $vari;?>" id=btn2 class="btn">Proceed</a>

您需要在两个地方修改代码

<script>
  $(function() {
    $( "#route" ).autocomplete({
      source: 'search.php',
      select: function( event , ui ) {
         $selected=ui.item.label;
         $('#btn2').attr({'href':'proceed1.php?var='+$selected});
       } 
    }); 
  });
  </script>
<?php
  $vari="apple";
?>

<a href="proceed1.php?term=<?php echo $vari;?>" id=btn2 class="btn">Proceed</a>

当您需要访问变量时,只需使用$_GET['var']无论您想在何处使用HTML的php,都需要在<?php php code here ?>使用<?php php code here ?>

这是一个演示

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM