将多维数组从 mysql 传输到 php 再到 javascript
Transferring a multidimensional array from mysql to php to javascript
我似乎遇到了一些麻烦。PHP 部分似乎运行良好,但我似乎无法将信息转移到 JS 部分。这是我目前拥有的:
<!DOCTYPE html>
<html>
<body>
<?php
$servername = "localhost";
$username = "username";
$password = "password";
mysql_connect($servername, $username, $password) or die(mysql_error());
mysql_select_db("stuff") or die(mysql_error());
$result = mysql_query("SELECT Location, Latitude, Longitude FROM Places WHERE Latitude IS NOT NULL GROUP BY Location, Latitude, Longitude");
$places = array();
while (($row = mysql_fetch_array($result, MYSQL_NUM)) !== false) {
$places[] = $row;
}
?>
<script>
function makeTableHTML(myArray) {
var result = "<table border=1>";
for(var i=0; i<myArray.length; i++) {
result += "<tr>";
for(var j=0; j<myArray[i].length; j++){
result += "<td>"+myArray[i][j]+"</td>";
}
result += "</tr>";
}
result += "</table>";
return result;
}
var places = "<?php echo json_encode($places) ?>";
makeTableHTML(places);
</script>
</body>
</html>
我已经测试了 PHP 部分,它工作得很好。我对JS相当陌生,我不确定如何进行测试/调试。任何帮助将不胜感激。
我在这里找到了makeTableHTML函数,希望它能有所帮助,但我没有任何运气。
你的 PHP 似乎在工作。此外,您的javascrip HTML代码生成似乎还可以。但是你没有把表写进 DOM 的地方。
因此,您必须选择一个 DOM 元素并将 makeTableHTML 的结果写入其中。例如:
document.getElementsByTagName("BODY")[0].innerHTML += makeTableHTML(places);
在您的代码示例中,直接使用 PHP 生成表会更有意义。Javascript只有在你想动态改变你的网站时才有意义。
我不知道你想在这里归档什么,但也许你应该看看 ajax 请求。但很难说,不知道你想创造什么。
您还询问了如何调试javascript,当然您可以使用alert((输出代码中的任何变量。但在更复杂的情况下,建议使用调试器。请参阅此处了解如何在 Firefox 中使用它。
相关文章:
- 将数组从PHP传递到Javascript
- 将json从php传递到javascript veriable
- 如何将数据从PHP压缩到Javascript
- 使用Smarty将值从PHP传递到JS
- 如何通过HTML将带有单引号的JSON从PHP传递到Javascript
- 通过php添加到变量won'不起作用
- 将json对象从php传递到javascript
- 如何将值从PHP传递到JS
- 将多个变量从php传递到casperjs
- 如何使用jquery将数据从PHP传输到Javascript
- 将嵌套数组从PHP传递到Javaservlet
- 如何使用AJAX和JSON从一个页面抓取PHP变量到另一个页面
- 将 PHP 输出到 JavaScript 时出现语法错误
- AJAX 中的 PHP 代码到 POST
- 将多维数组从 mysql 传输到 php 再到 javascript
- Laravel PHP-从DB到PHP再到JS到HTML的自定义JSON对象
- HTML到jQuery到PHP,然后从PHP到jQuery再到HTML
- 从html到jquery再到php,再从php到jquery到html,将数据传递到php文件并将数据获取到php文件中
- AJAX到PHP再到mySQL的调试
- 从javascript到php再到mysql发送的整数返回的结果不同