[PHP-DB] Empty query result

2004-07-26 Thread Philip Thompson
Hi all.
I am querying a database of single information multiple times using a 
simple 'select' statement. However, whenever the data in the DB is 
empty or is 0 (zero), then it throws an error. However, I don't want it 
to throw an error, I just want it to move on to the next query.

This is being shown on a webpage I have. Note that I am using a 
function for this select statement because I just have to change the 
identifier that I am looking for - saves space. So I don't use 
mysql_error() to show my errors, I redirect to a global 'error' page.

Is there a way to get around this empty set problem? Yes, I know 
about using @ to suppress warnings, but it's more than this.

Thanks a bunch,
~Philip
--
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


Re: [PHP-DB] Empty query result

2004-07-26 Thread Philip Thompson
Pablo,
Hello Philip,
pse.. can you paste the error information?
There is no known empty set problem.
Here's my function:
function getMysqlSelectResultForUsername($identifier, $userName, $link)
{
$queryResult = mysql_query(select $identifier from theTable where 
username = '$userName', $link);

if (!($queryResult = mysql_result($queryResult, 0))) {
session_register('_selectIdentifierFromTheTable');
header(location:error.php);
exit;
}
return $queryResult;
}
Here's the code that calls it:
$hall = getMysqlSelectResultForUsername('buildingID', $_userName, 
$link);
$roomNum = getMysqlSelectResultForUsername('roomNum', $_userName, 
$link);
$phone1 = getMysqlSelectResultForUsername('phone1', $_userName, $link);
$phone2 = getMysqlSelectResultForUsername('phone2', $_userName, $link);
$lastLogin = getMysqlSelectResultForUsername('lastLogin', $_userName, 
$link);

If the mysql_result($queryResult, 0) returns zero/nothing, then it goes 
to the 'error.php' page. However, I just want it to move on. For 
example, if there is no 'phone2' given in the database, I want it to 
just assign $phone2 to zero/nothing, not go to the error page.

Hope this helps.
Thanks,
~Philip
--
Best regards,
 Pablo
PT Hi all.
PT I am querying a database of single information multiple times 
using a
PT simple 'select' statement. However, whenever the data in the DB is
PT empty or is 0 (zero), then it throws an error. However, I don't 
want it
PT to throw an error, I just want it to move on to the next query.

PT This is being shown on a webpage I have. Note that I am using a
PT function for this select statement because I just have to change 
the
PT identifier that I am looking for - saves space. So I don't use
PT mysql_error() to show my errors, I redirect to a global 'error' 
page.

PT Is there a way to get around this empty set problem? Yes, I know
PT about using @ to suppress warnings, but it's more than this.
PT Thanks a bunch,
PT ~Philip
--
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


Re: [PHP-DB] Empty query result

2004-07-26 Thread bbonkosk
Why not...??

if (!($queryResult =
mysql_result($queryResult, 0)))
{
return 0;
}
- Original Message -
From: Philip Thompson [EMAIL PROTECTED]
Date: Monday, July 26, 2004 12:57 pm
Subject: Re: [PHP-DB] Empty query result

 Pablo,
 
  Hello Philip,
 
  pse.. can you paste the error information?
  There is no known empty set problem.
 
 Here's my function:
 
 function
getMysqlSelectResultForUsername($identifier,
$userName, 
 $link){
 $queryResult = mysql_query(select $identifier
from theTable 
 where 
 username = '$userName', $link);
 
 if (!($queryResult =
mysql_result($queryResult, 0))) {

session_register('_selectIdentifierFromTheTable');
 header(location:error.php);
 exit;
 }
 
 return $queryResult;
 }
 
 Here's the code that calls it:
 
 $hall =
getMysqlSelectResultForUsername('buildingID',
$_userName, 
 $link);
 $roomNum =
getMysqlSelectResultForUsername('roomNum',
$_userName, 
 $link);
 $phone1 =
getMysqlSelectResultForUsername('phone1',
$_userName, 
 $link);$phone2 =
getMysqlSelectResultForUsername('phone2', 
 $_userName, $link);
 $lastLogin =
getMysqlSelectResultForUsername('lastLogin', 
 $_userName, 
 $link);
 
 If the mysql_result($queryResult, 0) returns
zero/nothing, then it 
 goes 
 to the 'error.php' page. However, I just want it
to move on. For 
 example, if there is no 'phone2' given in the
database, I want it 
 to 
 just assign $phone2 to zero/nothing, not go to the
error page.
 
 Hope this helps.
 
 Thanks,
 ~Philip
 
  -- 
  Best regards,
   Pablo
  PT Hi all.
 
  PT I am querying a database of single
information multiple times 
  using a
  PT simple 'select' statement. However, whenever
the data in the 
 DB is
  PT empty or is 0 (zero), then it throws an
error. However, I 
 don't 
  want it
  PT to throw an error, I just want it to move on
to the next query.
 
  PT This is being shown on a webpage I have.
Note that I am using a
  PT function for this select statement because I
just have to 
 change 
  the
  PT identifier that I am looking for - saves
space. So I don't use
  PT mysql_error() to show my errors, I redirect
to a global 
 'error' 
  page.
 
  PT Is there a way to get around this empty
set problem? Yes, I 
 know PT about using @ to suppress warnings, but
it's more than this.
 
  PT Thanks a bunch,
  PT ~Philip
 
  -- 
  PHP Database Mailing List (http://www.php.net/)
  To unsubscribe, visit:
http://www.php.net/unsub.php
 
 

-- 
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP-DB] Empty query result

2004-07-26 Thread Pablo M. Rivas
Hello Philip,

pse.. can you paste the error information?
There is no known empty set problem.

-- 
Best regards,
 Pablo
PT Hi all.

PT I am querying a database of single information multiple times using a 
PT simple 'select' statement. However, whenever the data in the DB is 
PT empty or is 0 (zero), then it throws an error. However, I don't want it 
PT to throw an error, I just want it to move on to the next query.

PT This is being shown on a webpage I have. Note that I am using a 
PT function for this select statement because I just have to change the 
PT identifier that I am looking for - saves space. So I don't use 
PT mysql_error() to show my errors, I redirect to a global 'error' page.

PT Is there a way to get around this empty set problem? Yes, I know 
PT about using @ to suppress warnings, but it's more than this.

PT Thanks a bunch,
PT ~Philip

-- 
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP-DB] Empty query result

2004-07-26 Thread Jason Wong
On Tuesday 27 July 2004 00:57, Philip Thompson wrote:

 Here's my function:

 function getMysqlSelectResultForUsername($identifier, $userName, $link)
 {
  $queryResult = mysql_query(select $identifier from theTable where
 username = '$userName', $link);

  if (!($queryResult = mysql_result($queryResult, 0))) {
  session_register('_selectIdentifierFromTheTable');
  header(location:error.php);
  exit;
  }

  return $queryResult;
 }

 Here's the code that calls it:

 $hall = getMysqlSelectResultForUsername('buildingID', $_userName,
 $link);
 $roomNum = getMysqlSelectResultForUsername('roomNum', $_userName,
 $link);
 $phone1 = getMysqlSelectResultForUsername('phone1', $_userName, $link);
 $phone2 = getMysqlSelectResultForUsername('phone2', $_userName, $link);
 $lastLogin = getMysqlSelectResultForUsername('lastLogin', $_userName,
 $link);

What you're doing is extremely inefficient. You could do in a single query 
what you're currently doing in 5 queries. Use a query like:

  SELECT col1, col2, col3, coln, FROM table WHERE colx = 'something'

Then use mysql_fetch_row() or siblings to get the column contents.

 If the mysql_result($queryResult, 0) returns zero/nothing, then it goes
 to the 'error.php' page. However, I just want it to move on. For
 example, if there is no 'phone2' given in the database, I want it to
 just assign $phone2 to zero/nothing, not go to the error page.

Well you wrote the code so that it will go to the error page.

-- 
Jason Wong - Gremlins Associates - www.gremlins.biz
Open Source Software Systems Integrators
* Web Design  Hosting * Internet  Intranet Applications Development *
--
Search the list archives before you post
http://marc.theaimsgroup.com/?l=php-db
--
/*
If little green men land in your back yard, hide any little green women
you've got in the house.
-- Mike Harding, The Armchair Anarchist's Almanac
*/

-- 
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP-DB] Empty query result

2004-07-26 Thread Philip Thompson
Thanks all! I will try some of the suggestions that you guys gave. I 
appreciate it.

~Philip
On Jul 26, 2004, at 12:52 PM, Pablo M. Rivas wrote:
Hello Philip,
  read:
  http://www.php.net/manual/en/function.mysql-result.php
  when you do $queryResult = mysql_result($queryResult,0) you get
  the error... so, you can do something like this:
 function getMysqlSelectResultForUsername($identifier, $userName, 
$link)
 {
  $queryResult = mysql_query(select $identifier from theTable 
where
 username = '$userName', $link);
  if ($queryResult) {
 $queryResult = mysql_result($queryResult, 0);
  }
  return $queryResult;
 }

 $hall = getMysqlSelectResultForUserName('buildingID', 
$_userName,$link);
 if (!$hall) die (error)
 

or you can do:
  function getMySqlSelectResultForUserName($identifier,
  $userName,$link) {
   return mysql_query(select $identifier from TheTable where
   username='$userName',$link);
   }
 $hall= getMysqlSelectResultForUsername('buildingID', $_userName, 
$link);
 if (!$hall) die(not found building!!!);
 $roomNum = getMysqlSelectResultForUsername('roomNum', 
$_userName,$link);
 $phone1 = getMysqlSelectResultForUsername('phone1', $_userName, 
$link);
 $phone2 = getMysqlSelectResultForUsername('phone2', $_userName, 
$link);
 $lastLogin = getMysqlSelectResultForUsername('lastLogin', 
$_userName,$link);

  if ((!$roomNum) or (!$phone1) or (!$phone2) or (!$lastLogin)) {
 echo data is missing;
  
  } else {
 ...
  }
PT Pablo,

--
Best regards,
 Pablo
--
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php
--
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php