0

我在 html 中有一个表格,用户可以在其中单击一行,并将该行的数据属性传递给屏幕上加载的 PHP 文件。我希望这个 PHP 文件包含一些与传递的变量相关的数据。

例如,这是定义变量的简单 jQuery:

$(document).on('click', 'tr', function() {
    var id = $(this).attr("data-recordId");
    $('#section2').load('data_entry_form.php?id='+id);
});

这是旨在使用 id 变量并获取关联元素(根据 SQL 查询)的 PHP,其中 id = 到 fee_source_id。PHP有什么问题?它不工作。我想简单地回显/显示条件fee_source_id = :id为真的 SQL 查询的结果。

<html>
<form>
<?php

require_once 'config.php';

$dbh = new PDO($dsn, $dbuser, $dbpass);

$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$dbh->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);

$id = $_GET['id'];

$sth = $dbh->prepare('
    SELECT a_aif.aif_id,
      a_aif.fee_source_id,
      a_aif.company_name_per_sedar,
      a_aif.document_filing_date
    FROM  a_aif
    WHERE a_aif.fee_source_id = :id');
$sth->bindParam(':id', $id, PDO::PARAM_STR);
$sth->execute();

?>
</form>
</html>
4

1 回答 1

0

您将需要获取结果集的行。然后回显您需要的字段。

如果您要返回数组,则使用 $.getJSON而不是 $('#section2').load可能会有所帮助

$sth = $dbh->prepare('
        SELECT a_aif.aif_id,
          a_aif.fee_source_id,
          a_aif.company_name_per_sedar,
          a_aif.document_filing_date
        FROM  a_aif
        WHERE a_aif.fee_source_id = :id');
    $sth->bindParam(':id', $id, PDO::PARAM_STR);
    $sth->setFetchMode(PDO::FETCH_ASSOC);
    $sth->execute();
    $row  = $sth-> fetch(); // returns 1 row
    //$data[] = $row; Returns all of array 
    //$id = $row['id'];// Returns indivadual fiels in array

    echo $data;
于 2013-01-06T12:25:48.113 回答