简体   繁体   English

在PHP中的Javascript中回显PHP变量

[英]Echo PHP variable in Javascript in PHP

This may seem like an odd question, and it may have been answered elsewhere...but frankly I'm not quite sure how to phrase a search any better. 这似乎是一个奇怪的问题,并且可能已经在其他地方回答了……但是坦率地说,我不太确定如何更好地表达搜索词。

Essentially, I am trying to write an entire HTML and Javascript page in PHP (this way I can easily call and manipulate SQL queries...I know it doesn't make a lot of sense, but it's my last resort for an upcoming deadline). 本质上,我试图用PHP编写整个HTML和Javascript页面(通过这种方式,我可以轻松地调用和操作SQL查询...我知道这没有多大意义,但这是我在即将到来的截止日期前的最后选择)。

Anyways, I want to call/append to a PHP variable (the SQL query) in my Javascript...Something like this: 无论如何,我想在我的Javascript中调用/附加到PHP变量(SQL查询)...类似这样的事情:

mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB");
$myquery = "SELECT  `xxx`, `yyy` FROM `$tbl_name`";
$query = mysql_query($myquery);
$data = array();

for ($i = 0; $i < mysql_num_rows($query); $i++) {
    $data[] = mysql_fetch_assoc($query);
}

$data1 = json_encode($data);

echo '<!DOCTYPE html>
      <html>
          <head></head>
          <body>
              <script>
                  data_arr = {$data1}
                  ...
                  ...

This doesn't seem to be working though. 不过,这似乎不起作用。 I've tried: 我试过了:

    data_arr = {$data1}

and

    data_arr = {'.$data1.'}

No luck so far. 到目前为止没有运气。 Is there anything I can do? 有什么我可以做的吗?

Change the quotes to double quotes then use the data_arr = {$data1} one. 将引号更改为双引号,然后使用data_arr = {$data1} Single quotes dont recognize values at all. 单引号根本不识别值。

Try this, this might work: 试试这个,这可能起作用:

PHP: PHP:

<?php $data1 = "hello"; ?>

JS: JS:

var data_arr = {"<?=$data1?>"}

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

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