Как получить доступ к выбранным c атрибутам записи в приложении Heroku, используя надстройку Postgresql и PHP объекты данных (PDO)? - PullRequest
1 голос
/ 06 апреля 2020

В следующем коде с W3schools.com, какие изменения нужно будет сделать, чтобы получить доступ к отдельным атрибутам записи для каждой возвращаемой записи? То есть я не буду sh изменять запрашиваемые атрибуты, а получаю доступ к частям каждой записи отдельно для форматирования вывода.

Это намного проще с MySQLi / MySQLi Procedural, но я хочу адаптировать свою базу данных для работы с дополнением Heroku PostgreSQL.

Заранее спасибо.

'' '

<!DOCTYPE html>
<html>
<body>

<?php
echo "<table style='border: solid 1px black;'>";
 echo "<tr><th>Id</th><th>Firstname</th><th>Lastname</th></tr>";

class TableRows extends RecursiveIteratorIterator {
    function __construct($it) {
        parent::__construct($it, self::LEAVES_ONLY);
    }

    function current() {
        return "<td style='width: 150px; border: 1px solid black;'>" . parent::current(). "</td>";
    }

    function beginChildren() {
        echo "<tr>";
    }

    function endChildren() {
        echo "</tr>" . "\n";
    }
}

$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDBPDO";

try {
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $stmt = $conn->prepare("SELECT id, firstname, lastname FROM MyGuests");
    $stmt->execute();

    // set the resulting array to associative
    $result = $stmt->setFetchMode(PDO::FETCH_ASSOC);

    foreach(new TableRows(new RecursiveArrayIterator($stmt->fetchAll())) as $k=>$v) {
        echo $v;
    }
}
catch(PDOException $e) {
    echo "Error: " . $e->getMessage();
}
$conn = null;
echo "</table>";
?>

</body>
</html>

' ''

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...