php - 使用 php 将 mysql 数据加载到 javascript 变量时出现奇怪的错误

标签 php javascript mysql html

我访问了一个数据库并获取了数据(为了简单起见,我们假设只有一个数据),该数据是一个数组,并且有一个字段“link”,即一个 url。

我将 $data['link'] 的值传递给 php 变量 $l1;为了进行比较,我还将实际 url 传递给另一个变量 $l2。

然后接下来的两行尝试将值传递给 JavaScript 变量。如果我删除第一行(echo "var link1 =\"$l1\";";),它就可以工作;如果我保留第一行,则不会(未显示警报对话框)。我认为是url的问题,但是$l2的值与$data['link']完全相同,接下来的两行在html页面的源代码中也出现相同。

代码在这里:

<script type="text/javascript">
function readData() {
alert('haha1');
<?php
$l1 = $data['link'];
$l2 = "http://upload.wikimedia.org/wikipedia/commons/1/17/Affenpinscher.jpg";
echo "var link1 = \"$l1\";";
echo "var link2 = \"$l2\";";
?>
alert('haha2');
}
</script>
<body onload="readData();"></body>

有人知道为什么会发生这种情况吗?感谢您的帮助!

最佳答案

我不确定我是否理解了您的疑问。无论如何,根据直觉,我会尝试这样的事情:

<script type="text/javascript">
function readData() {
alert('haha1');
<?php
$l1 = json_encode($data['link']);
$l2 = "http://upload.wikimedia.org/wikipedia/commons/1/17/Affenpinscher.jpg";
echo "var link1 = ".$l1.";";
echo "var link2 = \"$l2\";";
?>
alert('haha2');
}
</script>
<body onload="readData();"></body>

对于 JavaScript,您的 URL 可能“格式错误”;并导致解析错误。 让我们知道情况是否如此...

关于php - 使用 php 将 mysql 数据加载到 javascript 变量时出现奇怪的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8003841/

相关文章:

javascript - AJAX 响应从 JSON 文件返回未定义

mysql - #1066 - 不唯一的表/别名 : But I don't use any alias

php - WordPress 网站 <a href =""></a> 无法使用 lightbox

php - 如何在不破坏字符集的情况下正确地将网站迁移到新服务器?

php - 前端免费 CMS? (或CMF)

PHP 在输入表单之前显示 'Not found"消息

javascript - 从外部 html 文件和 css 生成 pdf

php - 检查客户端浏览器中是否启用了 javascript 的最佳方法是什么?

JavaScript for(x in element) 奇怪的结果

PHP获取数组mysql