Re: [pgsql-ayuda] pg_exec

From: Bruno Unna <bruno(at)iac(dot)com(dot)mx>
To: pgsql-ayuda(at)tlali(dot)iztacala(dot)unam(dot)mx
Subject: Re: [pgsql-ayuda] pg_exec
Date: 1998-11-05 20:58:41
Message-ID: 36421181.1AF75328@iac.com.mx
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Enrique Cárdenas Hoeflich wrote:
>
> Estoy usando php para crear un contador de paginas... secuencias en
> postgres para tal efecto...pero creo que no estoy usando adecuadamente
> pg_exec...o que debo de usar...el codigo es el siguiente:
>
> <?php
> function fcont($cont)
> {
> $q = "SELECT nextval('" . $cont . "');";
> $qu = pg_exec ($dbcont, $q);
> $row = 0;
> print pg_numrows($qu);
> if (pg_numrows($qu) > 0) {
> $data = pg_fetch_object ($qu, $row);
> return $data->nextval;
> }
> else { return "ERROR";
> }
> }
>
> $dbcont = pg_connect ("", "", "", "", "contadores");
> if (!$dbcont): ?>
> <H1>Error al conectar la Base de Datos de Contadores</H1> <?
> exit;
> endif;
> print fcont("prueba1");
> ?>
>
> la secuencia es prueba1...y me muestra el siguente error...
>
> Warning: 0 is not a PostgresSQL link index in contador.inc on line 5
>
> Warning: 0 is not a PostgresSQL result index in contador.inc on line 7
>
> Warning: 0 is not a PostgresSQL result index in contador.inc on line 8
> ERROR
>
> El valor de $q resulta "Select nextval('prueba1');"
>
> Alguien me puede hechar una manita???
>
> Creo que en el ejemplo que nos presento Bruno en C usando secuencias esta la
> respuesta...pero perdi esa informacion...
>
> Gracias....
>

Enrique, yo creo que tu problema está en la variable $dbcont.

Las variables dentro de las funciones se vuelven locales a éstas.

Si quieres tener acceso, dentro de la funcion fcont, a la variable
global $dbcont, debes declarar la variable como global. Algo así:

<?php
function fcont($cont)
{
global $dbcont; // <- ATENCION: esta es la linea
$q = "SELECT nextval('" . $cont . "');";
$qu = pg_exec ($dbcont, $q);
...

Suerte.
--
"Create like a god, Bruno Unna <bruno(at)iac(dot)com(dot)mx>
command like a king, Desarrollo de Software
and work like a slave." Internet de Alta Calidad
Kawasaki PGP public key available
--------- Pie de mensaje -------------------------------------------
Archivo historico: http://tlali.iztacala.unam.mx/maillist/pgsql-ayuda
Cancelar inscripcion:
mail to: majordomo(at)tlali(dot)iztacala(dot)unam(dot)mx
text : cancelacion pgsql-ayuda

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Enrique Cárdenas Hoeflich 1998-11-05 22:00:22 RE: [pgsql-ayuda] pg_exec
Previous Message Ing. Roberto Andrade 1998-11-05 20:22:51 Re: [pgsql-ayuda] Postgesql 6.4