ERROR: Can't Parse "" (PG and PHP on Linux)

From: paulie808(at)yahoo(dot)com (Paul)
To: pgsql-general(at)postgresql(dot)org
Subject: ERROR: Can't Parse "" (PG and PHP on Linux)
Date: 2002-07-30 14:05:05
Message-ID: 68a785ef.0207300605.9ee429f@posting.google.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

I've been spending way too much time in the last day trying to solve
this problem and hope someone can help me figure out what's wrong. I'm
running PostgreSQL and PHP with a Redhat Linux/Apache configuration,
and am having two major problems:

1. The following PHP statement:

$strSQL = sprintf("INSERT INTO companies (comp_name, type_id) VALUES
('%s', %s);",$strCompName,trim($intTypeID));

yields the SQL statement:

INSERT INTO companies (comp_name, type_id) VALUES ('someName',9);

for example, which is legitimate, and when typed into the the shell
directly, the SQL statement does exactly what is expected. It also
does exactly what is expected if sent to PostgreSQL from PHP via a
pg_query() statement.

However, when I use the original statement, and assign $intTypeID to
the integer or string "9" (and the SQL is still output exactly the
same via a string) I get the following error from the server:

SQL: INSERT INTO companies (comp_name, type_id) VALUES ('Vendor', 10);
ERROR: parser: parse error at or near ")"

If I surround the second substitution with '', I get the following
error:

SQL: INSERT INTO companies (comp_name, type_id) VALUES ('test vendor',
'10');
ERROR: pg_atoi: error in "10": can't parse ""

While single quotes yields:

SQL: INSERT INTO companies (comp_name, type_id) VALUES ('test vendor',
"10");
ERROR: Attribute '10' not found

PLEASE HELP. This statement is perfectly legitimate. What is wrong
with my PostgreSQL??

2. When I try to drop old databases or tables, it gives an error
telling me that a user is using the database and can't drop the
table/database. I've even tried it after killing all processes on the
server and not being logged into the database I'm trying to drop
(i.e., logged into another database)

How can I solve this problem?

Thanks,
Paul

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Neil Conway 2002-07-30 14:12:08 Re: log sql?
Previous Message stefan 2002-07-30 13:07:56 Re: RES: pg_controldata question