【问题标题】:How to get a data from one php file and retrieve it in another php file如何从一个 php 文件中获取数据并在另一个 php 文件中检索它
【发布时间】:2020-06-05 17:16:53
【问题描述】:

提出一个三年前的问题。 How to get a user id from one php file and retrieve it in another php file

根据我自己的经验,我尝试从一个文件中获取一个 id 以在另一个文件中执行它以从另一个网站检索一些数据。每当页面加载时,我都可以在浏览器上看到 url 中的值,但是当我尝试使用它时,该值返回为空。请检查下面我尝试过的内容,并建议我是否可以使用 javascript 或 jquery 来完成它,或者只使用 PHP 来完成它。

一个.php

<?php

$aa = b.php;

$bar = 1234;

echo “<a href=$aa?$bar target=new window>”Click here”</a>”;

?>

b.php

<?php

$foo = $_GET[$bar];

// this one returns empty. But bar is seen on the url as ?bar
echo $bar;
?>

【问题讨论】:

  • 您忘记在 url:echo "&lt;a href=\"$aa?bar=$bar\" target=\"new window\"&gt;Click here&lt;/a&gt;"; 中添加 bar 变量名并始终将标签属性括在双引号中(需要时将其转义)
  • 我不知道将它再次放入变量中很重要。
  • 是的,这很重要,否则您的 URL 中有一个“没有值的变量”(1) 或“没有分配给变量的值”(2)。 1) 是浏览器解析 URL 的方式,2) 也许是用户/程序员的观点

标签: javascript php jquery file get


【解决方案1】:

你如何回显锚标记对我来说似乎不太好,可能更像:

echo '<a href="'.$aa.'?bar='.$bar.'" target="new window">Click here</a>';

您可以访问以下值:

$_GET['bar']

你必须回显$foo而不是$bar

【讨论】:

  • 为什么使用双引号连接而不是解析变量更好?
  • 我一直都是这样,而且我认为在html中,属性中必须有“”,如果整个字符串都用双引号括起来就不行了。
  • 是的,你可以通过转义双引号来做到这一点:echo "&lt;a href=\"$aa?bar=$bar\" target=\"new window\"&gt;Click here&lt;/a&gt;"; 我喜欢解析变量而不是连接,但谁知道哪种方法更好?
  • 是的,你是对的。我习惯了串联,对我来说似乎更干净,但这是一个品味问题:)
【解决方案2】:

检查添加的 cmets...这是如何完成的...

<?php
//a.php

$b_php = "b.php"; //file name
$parm = "?bar="; //parameter
$parm_data = "1234"; //DATA
echo "<a href='$b_php$parm$parm_data' target='_blank'>Click here</a>";
?>

//b.php

<?php 
if(isset($_GET["bar"])){ //check if the variable parameter is set or not
$foo = $_GET["bar"]; // $_GET["$bar"] only works if variable exists in the file
echo $foo; //echo $foo
}else{
echo "Empty!";
}
?>

它返回空,因为您试图回显变量$bar,但它不存在。 还可以查看 GETPOST 表单以获取从 HTMLJSJquery 到 PHP 的数据。

【讨论】:

  • 不错的答案,缩进会更好,也许,1) a.php 和 b.php 的单独代码 2) 添加和选项以及使用三元运算符获取变量的解释。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多