Forum und email

pg_send_execute

(PHP 5 >= 5.1.0)

pg_send_execute — Envoie une requête pour exécuter une requête préparée avec des paramètres donnés, sans attendre le(s) résultat(s)

Description

bool pg_send_execute ( resource $connection , string $stmtname , array $params )

Envoie une requête pour exécuter une requête préparée avec des paramètres donnés, sans attendre le(s) résultat(s).

Cette fonction est similaire à pg_send_query_params(), mais la commande qui sera exécutée est spécifiée en nommant une requête préalablement préparée, au lieu de donner une chaîne en tant que requête. Les paramètres de la fonctions sont gérés de la même manière que pg_execute(). Comme pg_execute(), la fonction ne fonctionnera pas sur les versions antérieures à PostgreSQL 7.4.

Liste de paramètres

connection

La ressource de connexion de la base de données PostgreSQL. Lorsque connection n'est pas présent, la connexion par défaut est utilisée. La connexion par défaut est la dernière connexion faite par pg_connect() ou pg_pconnect().

stmtname

Le nom de la requête préparée à exécuter. Si une chaîne vide est spécifiée (""), alors la requête qui n'est pas nommée est exécutée. Le nom doit avoir été précédemment préparé en utilisant pg_prepare(), pg_send_prepare() ou une commande SQL PREPARE.

params

Un tableau de valeurs de paramètres pour substituer les variables $1, $2, etc. dans la requête préparée originale. Le nombre d'éléments présents dans le tableau doit concorder avec le nombre de variables à remplacer.

Valeurs de retour

Retourne TRUE en cas de succès, FALSE en cas d'échec. Utilisez pg_get_result() pour déterminer le résultat de la requête.

Exemples

Example#1 Exemple avec pg_send_execute()

<?php
  $dbconn 
pg_connect("dbname=publisher") or die("Connexion impossible");

  
// Prépare une requête pour l'exécution
  
if (!pg_connection_busy($dbconn)) {
    
pg_send_prepare($dbconn"my_query"'SELECT * FROM magasins WHERE nom = $1');
    
$res1 pg_get_result($dbconn);
  }

  
// Exécute la requête préparée. Notez qu'il n'est pas nécessaire d'échapper
  // la chaîne "Joe's Widgets"
  
if (!pg_connection_busy($dbconn)) {
    
pg_send_execute($dbconn"my_query", array("Joe's Widgets"));
    
$res2 pg_get_result($dbconn);
  }
  
  
// Exécute la même requête préparée, cette fois avec un paramètre différent
  
if (!pg_connection_busy($dbconn)) {
    
pg_execute($dbconn"my_query", array("Vêtements Vêtements Vêtements"));
    
$res3 pg_get_result($dbconn);
  }
  
?>