-1

我正在尝试从 mysql 数据库中显示 html 列表。要从 mysql 获取数据,我正在使用 json 和 javascript。但它什么也没显示!

我的html页面是

<!DOCTYPE html>
<html class="ui-mobile-rendering">
<head>
<title></title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="css/jquery.mobile-1.0.1.min.css"/>
</head>
<body>
<div id="tenant" data-role="page">

    <div data-role="header">
        <a href="index.html" data-icon="back" class="back ui-btn-left">Back</a>
        <h1>My Lease</h1>
    </div>

    <div data-role="content">

        <ul id="actionList" data-role="listview"  data-inset="true">
        </ul>
    </div>  
    </div>
<script src="js/tenantlease.js"></script>
<script src="lib/jquery-1.7.1.min.js"></script>
<script src="js/jqm-config.js"></script>
<script src="lib/jquery.mobile-1.0.1.min.js"></script>
<script src="lib/underscore-min.js"></script>
<script src="lib/backbone-min.js"></script>
<script src="js/main.js"></script>
</body>
</html>

我的 php 文件是。当我从带有 id 的浏览器调用时,它工作正常。

<?php
session_start();
include 'connection.php';
$email=$_SESSION["PM"];

$sql = "select * from phpap105_tenantinfo where TenantEmailAddress=:id";
try {
$dbh = new PDO("mysql:host=$dbhost;dbname=$dbname", $dbuser, $dbpass);  
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $dbh->prepare($sql);  
$stmt->bindParam("id", $_GET[id]);
$stmt->execute();
$employee = $stmt->fetchObject();  
$dbh = null;
echo '{"item":'. json_encode($employee) .'}'; 
} catch(PDOException $e) {
echo '{"error":{"text":'. $e->getMessage() .'}}'; 
}
?>

我的 javascript 文件是

    $('#tenant').live('pageshow', function(event) {
//var id = getUrlVars()["id"];
var id = 'mukul_kuet@yahoo.com';
$.getJSON('tenantlease.php?id='+id, displayEmployee);
    });

   function displayEmployee(data) {
var employee = data.item;
//console.log(employee);


if (employee.TenantFirstName) {
    $('#actionList').append('<li><h3>First Name</h3>' +
            '<p>' + employee.TenantFirstName + '</p></a></li>');
}
if (employee.TenantLeaseSigned) {
    $('#actionList').append('<li><h3>Lease Sign</h3>' +
            '<p>' + employee.TenantLeaseSigned + '</p></a></li>');
}
    $('#actionList').listview('refresh');
   }

请帮助我如何在 html 页面中获取数据。在此先感谢您的任何帮助。

4

1 回答 1

0

好问题。您需要做的是 Step-Debug JavaScript,您将看到问题所在。

如果这是您部分熟悉或完全不熟悉的东西……我强烈推荐给您,它将打开一个发展力量的新世界。

例如...

  1. 在 Chrome 中打开
  2. 右键单击并选择 -> 检查元素。
  3. 在脚本选项卡下,打开您的 JavaScript 文件。
  4. 在左边距,您可以单击“条形”区域来设置断点,该断点将显示为一个圆点。
  5. 在所有函数中设置断点...。
  6. 点击刷新。JavaScript 的执行将在您的第一个有效断点处停止。
  7. 此时,您可以检查变量以查看它们是否是您认为的值。

如果您没有看到断点,那是因为您的“pageshow”事件不工作。

这是有关此的信息。

这是另一个例子。

我的猜测是你会发现 1) 页面显示没有被调用,2) 对你的 php 的调用格式异常,或者你的回调没有被回调。

断点将可视化所有这些。

另外,检查您的回调函数,如果它缺少大括号(它在您的帖子中)并且失败,它可能为空。如果发生这种情况,Chrome 开发工具的控制台中会出现红色错误消息。

这是一个强大的工作流程。希望有帮助。

于 2012-09-13T06:33:20.430 回答