In DB I have a table with a field called fk_ownerID
. By default, when I add a new table row, the fk_ownerID
is empty. In Toad for MySQL, this is shown as {null}
. If fk_ownerID
is given a value, and I later remove this value, I set fk_ownerID = ""
.
Now, I have the following code:
$result = $dal->getRowByValue('tableName','id', $_POST['myID']);
// Check to see if any rows where returned
if (mysql_num_rows($result) > 0)
{
while ($row = mysql_fetch_array($result))
{
$ownerID = $row["fk_ownerID"];
}
}
Now the variable $ownerID should have a number, or not. But I'm unsure how to check this. Currently I'm doing this:
if ( (strlen($ownerID) == 0) || ($ownerID == '0') || ($ownerID == 'null') )
But I'm pretty sure only one of these tests should be necessary.
What is the best way to check if a row field is empty or null?
if ( (strlen($ownerID) == 0) || ($ownerID == '0') || (empty($ownerID )) )
if $ownerID is NULL it will be triggered by the empty() test
Also, don't forget the === operator when you're working with numbers that could mean null or 0 or return some form of false or null that isn't what you're looking for.
select FOUND_ROWS();
will return no. of records selected by select query.
Suppose
$row=mysql_fetch_row($rc)
and if you want to check if row[8] is null then do
$field=$row[8];
if($field)
echo "";
else
echo "";
You can use is_null() function.
http://php.net/manual/en/function.is-null.php : in the comments :
mdufour at gmail dot com 20-Aug-2008 04:31 Testing for a NULL field/column returned by a mySQL query.
Say you want to check if field/column “foo” from a given row of the table “bar” when > returned by a mySQL query is null. You just use the “is_null()” function:
[connect…]
$qResult=mysql_query("Select foo from bar;");
while ($qValues=mysql_fetch_assoc($qResult))
if (is_null($qValues["foo"]))
echo "No foo data!";
else
echo "Foo data=".$qValues["foo"];
[…]
Source: Stackoverflow.com