(PHP 4 >= 4.3.0, PHP 5, PHP 7)
pg_select — Wählt Datensätze aus
$connection
, string $table_name
, array $assoc_array
[, int $options = PGSQL_DML_EXEC
[, int $result_type = PGSQL_ASSOC
]] ) : mixed
pg_select() wählt die Datensätze aus der Tabelle
table_name aus, die den Elementen
(field=>value) in assoc_array
entsprechen. Wenn die Abfrage erfolgreich war, wird ein assoziatives
Array mit allen Zeilen und Werten aus table_name
zurückgegeben, die mit den Zeilen und Werten in assoc_array identisch sind.
Falls options angegeben wurde, wird
pg_convert() mit den angegebenen Flags auf
assoc_array angewendet.
connectionPostgreSQL Verbindungskennung.
table_nameName der Tabelle, aus der die Zeilen ausgewählt werden.
assoc_array
Ein array, dessen Schlüssel Feldnamen von
table_name sind und dessen Werte mit den
entsprechenden Werten in table_name
übereinstimmen müssen, damit die Zeile zurückgegeben werden kann.
options
Eine beliebige Kombination aus PGSQL_CONV_FORCE_NULL,
PGSQL_DML_NO_CONV, PGSQL_DML_ESCAPE, PGSQL_DML_EXEC,
PGSQL_DML_ASYNC oder PGSQL_DML_STRING.
Falls PGSQL_DML_STRING in den options
enthalten ist, wird der Abfragestring zurückgegeben. Werden
PGSQL_DML_NO_CONV oder
PGSQL_DML_ESCAPE angegeben, wird
pg_convert() intern nicht aufgerufen.
Gibt bei Erfolg TRUE zurück. Im Fehlerfall wird FALSE zurückgegeben. Gibt einen string zurück, falls
PGSQL_DML_STRING im Parameter
options übergeben wurde.
Beispiel #1 pg_select() Beispiel
<?php
$db = pg_connect('dbname=foo');
// Das ist sicher, da $_POST automatisch konvertiert wird
$rec = pg_select($db, 'post_log', $_POST);
if ($rec) {
echo "Datensätze ausgewählt\n";
var_dump($rec);
} else {
echo "Falsche Eingabe\n";
}
?>
| Version | Beschreibung |
|---|---|
| 7.1.0 |
Der result_type-Parameter wurde hinzugefügt.
|
| 5.6.0 |
Nicht länger experimentell. Die PGSQL_DML_ESCAPE
Konstante wurde hinzugefügt, wie auch Unterstützung für TRUE/FALSE
und NULL Datentypen.
|
| 5.5.3/5.4.19 |
Direkte SQL-Injection in table_name und indirekte
SQL-Injection in Bezeichner wurden behoben.
|