【问题标题】:How do I use a js variable in a echo php function call?如何在 echo php 函数调用中使用 js 变量?
【发布时间】:2019-08-19 19:05:41
【问题描述】:

我的实际应用是从 db 到元素 id 进行内容替换。我是从文本文件(其中 1558 个)中知道的,而且效果很好。我*只是想试试这个方法。提前谢谢你

此附加代码显示了我尝试过的内容。 php 函数中的回声显示我将其放入函数中。警报显示发送值和返回值有效。

<html>
<head>
<script type="text/javascript">
   var b = "MyText.txt";
</script>
</head>
</html>

<?php

function add($str){
    echo "My strtest file is : " . $str . " ";  
    echo  " ";
    $MyTexkFile =  "<html><head></head><div> <p> This is my html text display </p></div id = \'mydiv\'><body><body></html>";

    echo "The string is " . " " . $MyTexkFile . " ";    
    $newstr = $str . " Add some text to str";
//return $MyTexkFile ;
//return $str;
return $newstr;
}
?>
<script>
function phpadd(b) {
alert(b);
var a = "1234";
alert(a);
  var padd = '<?php echo add("3579.txt")?>';  
  console.log(padd );
}
</script>
<button onclick='phpadd("4567.txt")'>add</button>

正如我上面所说,在我尝试传递 js 变量(a 或 b)之前,代码可以正常工作。我试过单引号和双引号。有和没有波浪号。 我的错误:SyntaxError: '' 文字未在脚本 jsToPhpFunction.php:15:97 结束之前终止。为什么是这样?我可以做些什么来让变量通过吗?

【问题讨论】:

  • ab 传递给什么?如果您尝试在 php 方法中使用 javascript 变量,则不能。 PHP 在客户端得到响应之前在服务器上运行。一旦客户端获得有效载荷,它将执行页面上的任何javascript,此时它对php的直接访问为零
  • Javascript 是客户端,php 是服务器端。
  • 您尝试执行的操作不起作用,不建议这样做。
  • 您需要显示产生错误的代码
  • Taplar,我理解你,但是,正如我在声明中所说,如果你查看代码,我有一个引用的文本值。恰好是一个文本文件名。作为调用参数,在括号内。在运行时,回显显示文本文件名使其进入 php 函数。然后使用console.log,函数返回值返回到js脚本。我想知道,如果我可以使用引用的文本文件名并看到它工作,为什么我不能将引用的文件名分配给 var a 或 b 并让它工作?

标签: javascript php variables


【解决方案1】:

不确定这是否是您想要实现的目标?


<?php

if(isset($_POST['submit'])){

    $str = $_POST['hiddenVal'];

  echo "My strtest file is : " . $str . " ";  
  echo  " ";
  $MyTexkFile =  "<html><head></head><div> <p> This is my html text display </p></div id = \'mydiv\'><body><body></html>";

  echo "The string is " . " " . $MyTexkFile . " ";    
  $newstr = $str . " Add some text to str";

}
?>
<script>
function phpadd(a) {
    document.getElementById("hiddenVal").value = a;
}
</script>
<form action="" method="post">
<input type="text" name="hiddenVal" style="display:none" id="hiddenVal" />
<button name="submit" onclick='phpadd("4567.txt")'>add</button>
</form>

【讨论】:

  • 不,拉尔夫,这不是我想要的。该代码确实将一个值发送到一个 php 函数并从该函数接收一个值。不管有多少人说你不能那样做,那段代码确实做到了。我问了,请赐教。允许我手动将我的文本文件的引用名称输入到 php 函数调用的括号中并使其正常工作的机制是什么。
  • Ralph,我很抱歉,您的代码确实完成了我想要完成的工作,谢谢。但是,这不是我在上次评论中所说的那样。
  • @HalEgbert 恐怕我也尝试了所有方法,但无法将文本作为函数参数输入。我认为您可以编辑代码并想出一个解决方法,因为我认为它无法直接执行。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-05-02
  • 1970-01-01
  • 2014-04-02
  • 1970-01-01
  • 2020-03-24
  • 2013-11-23
  • 2015-08-14
相关资源
最近更新 更多