How to avoid 'Notice: Trying to get property of non-object'

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • vizard

    How to avoid 'Notice: Trying to get property of non-object'

    Hi All,
    Im new to PHP. In the script I've written, i have the following line:

    if($coursesTaug ht[$i]->empId == $record-
    >getElementsByT agName('EMPL_ID ')->item(0)->nodeValue){
    // do something
    }

    when the if condition executes, i get the foll message: Notice: Trying
    to get property of non-object in C:\Program Files\Apache Group
    \Apache2\htdocs \ENGR_COURSES\u pdateCoursesTau ght.php on line 33

    The script works but the message is annoying. I do not want to alter
    the error reporting in PHP.ini.
    Is there any other way of avoiding this message?

    Thanks,
    Vin
  • Joe Scylla

    #2
    Re: How to avoid 'Notice: Trying to get property of non-object'

    vizard wrote:
    Hi All,
    Im new to PHP. In the script I've written, i have the following line:
    >
    if($coursesTaug ht[$i]->empId == $record-
    >getElementsByT agName('EMPL_ID ')->item(0)->nodeValue){
    // do something
    }
    >
    when the if condition executes, i get the foll message: Notice: Trying
    to get property of non-object in C:\Program Files\Apache Group
    \Apache2\htdocs \ENGR_COURSES\u pdateCoursesTau ght.php on line 33
    >
    The script works but the message is annoying. I do not want to alter
    the error reporting in PHP.ini.
    Is there any other way of avoiding this message?
    >
    Thanks,
    Vin
    The error message says that one or both of the objects or their
    properties you try to access are not defined (probable null). You can
    avoid that notice by checking if the property you try to access is set.

    <code>
    if(
    isset($coursesT aught[$i]->empId) &&
    isset($record->getElementsByT agName('EMPL_ID ')->item(0)->nodeValue) &&
    $coursesTaught[$i]->empId ==
    $record->getElementsByT agName('EMPL_ID ')->item(0)->nodeValue
    )
    {
    // do something
    }
    </code>

    or set a user-defined error handler suppressing such notices:


    You should also think about the reason of the error. Is it normal that
    you try to access a object or property of an object that is not defined?
    Why is the object or property not defined?

    Joe

    Comment

    • vizard

      #3
      Re: How to avoid 'Notice: Trying to get property of non-object'

      On Mar 18, 12:58 am, Joe Scylla <joe.scy...@gma il.comwrote:
      vizard wrote:
      Hi All,
      Im new to PHP. In the script I've written, i have the following line:
      >
      if($coursesTaug ht[$i]->empId == $record-
      getElementsByTa gName('EMPL_ID' )->item(0)->nodeValue){
      // do something
      }
      >
      when the if condition executes, i get the foll message: Notice: Trying
      to get property of non-object in C:\Program Files\Apache Group
      \Apache2\htdocs \ENGR_COURSES\u pdateCoursesTau ght.php on line 33
      >
      The script works but the message is annoying. I do not want to alter
      the error reporting in PHP.ini.
      Is there any other way of avoiding this message?
      >
      Thanks,
      Vin
      >
      The error message says that one or both of the objects or their
      properties you try to access are not defined (probable null). You can
      avoid that notice by checking if the property you try to access is set.
      >
      <code>
      if(
      isset($coursesT aught[$i]->empId) &&
      isset($record->getElementsByT agName('EMPL_ID ')->item(0)->nodeValue) &&
      $coursesTaught[$i]->empId ==
      $record->getElementsByT agName('EMPL_ID ')->item(0)->nodeValue
      )
      {
      // do something
      }
      </code>
      >
      or set a user-defined error handler suppressing such notices:http://www.php.net/manual/en/functio...or-handler.php
      >
      You should also think about the reason of the error. Is it normal that
      you try to access a object or property of an object that is not defined?
      Why is the object or property not defined?
      >
      Joe
      That worked!! Thanks Joe!

      Comment

      Working...