Hi,
even if there was no data in the price field when the form was submited the
$price variable exists and isset($price) returns true. May be you could try
!empty($price) instead of isset($price) - Something like.
$query7 = !empty($price) ? "INSERT INTO price (itemid, price) VALUES
($itemid, '$price')" : 0;
$result7 = @pg_Exec($connection, $query7 );
Then when the price field is empty your script will not insert anything into
the database.
You can also modify your select query not to show records without price
select * from price where itemid=50 and price is not Null and price<>"";
Hope this will help
Dobromir Velev
-----Original Message-----
From: Lara J. Fabans <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED] <[EMAIL PROTECTED]>
Date: Wednesday, July 25, 2001 7:52 PM
Subject: [PHP-DB] Question on how to test a value
Hi, friends,
Here is how I'm putting the information into the database:
$query7 = isset($price) ? "INSERT INTO price (itemid, price) VALUES
($itemid, '$price')" : 0;
$result7 = @pg_Exec($connection, $query7 );
I'm having difficulties with my test in display.
I've tried isset and == 'NULL' and == '0' as such:
if ($values2 == 'NULL')
{
print "<tr><td class=\"display\"> </td></tr>";
} else
{
print "<tr><td class=\"display\">US$
$values2->price</td></tr></table></td>";
}
and
if (isset($values2))
{
print "<tr><td class=\"display\">US$
$values2->price</td></tr></table></td>";
} else
{
print "<tr><td class=\"display\"> </td></tr>";
}
However, in both cases, if the price doesn't exist in the database, the US$
still shows up in the
display.
db=> select * from price where itemid=50;
priceid | itemid | price
---------+--------+-------
48 | 50 |
(1 row)
I was surprised that the insert put something into the database at all.
I could use some advice.
I cleaned up the database to remove all the lines where price wasn't set.
Why is it creating a table row? If the insert form is passing in where they
didn't set the price,
wouldn't that get picked up by the isset?
And if there isn't a row in the database, wouldn't testing isset of the
result of the query be
sufficient, or should I do a test on $values2->price instead?
I've tried lots of things and nothing seems to be doing the right behavior.
So thanks!
Lara
--
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]