No announcement yet.

Error 500 sending email. Unsupported Operand Types.

  • Filter
  • Time
  • Show
Clear All
new posts

  • Error 500 sending email. Unsupported Operand Types.

    Hi there, this is my first time on the forum.

    We're setting up Espo to trial it. Having some trouble getting the SMTP email going. I've added the SMTP settings in preferences, and they have been double checked. But we get the dreaded 500 error when trying to send an email from the Compose button in the Emails section of the system.

    Looking in the Espo error_log file, I can see the following message is generated each time we try.

    Unsupported operand types in /home/boodleon/public_html/empire/vendor/zendframework/zend-validator/src/Hostname.php on line 1844

    It looks like this is doing something with the domain/suffix? The domain in question is a domain, if that helps. It does have a hyphen in the middle of the domain name, - could that be causing trouble?

    Any advice would be welcome.

    Thanks and regards


  • #2
    Hi again

    We got further and we are now trying to send a mass email. It sent the first three, then stopped. THe log shows as in the attached screenshot. Again, this looks like it's related to domain suffix but in this case ".com" - can anyone help?

    I can confirm that we have no file called /vendor/zendframework/zend-validator/src/Hostname/com.php as mentioned in the log. We do have a file in that folder called "_Com.php" along with Biz,php, Cn.php and Jp.php.

    Thanks , JK


    • #3
      Haven't met this. What version of EspoCRM do you use? Did you try to rename Com file (delete underscore)? Think it will solve the problem


      • #4
        Hi Tanya, thanks for responding.

        I'm on v4.7.0.

        I can send email to addresses ending but if I try to send to a .com or .net address I get a 500 error.

        Renaming or deleting the .com file doesn't make any difference. Do you have those same files in that folder for your installation?

        Is there maybe somewhere that you have to tell EspoCRM which email suffixes are acceptable?

        Thanks again.


        • #5
          EspoCRM uses Zend Framework


          • #6
            This error happens because the parameters to url() changed in Drupal 6. The most common problem is an enabled module hasn't fully converted it's code from Drupal 5 and is causing the error. To find which module is the problem, change the following code to the function url() in ./includes/ (down around line 1300 or so):
            function url($path = NULL, $options = array()) { // Merge in defaults. $options += array( 'fragment' => '', 'query' => '', 'absolute' => FALSE, 'alias' => FALSE, 'prefix' => '' );
            To the following:
            function url($path = NULL, $options = array()) { if (!is_array($options)) { echo ""; $backtrace = debug_backtrace(); var_export($backtrace[0]); die(); } // Merge in defaults. $options += array( 'fragment' => '', 'query' => '', 'absolute' => FALSE, 'alias' => FALSE, 'prefix' => '' );
            Now instead of the fatal error, you will get a result similar to:
            array ( 'file' => '/www/drupal-6/sites/all/modules/admin_links/admin_links.module', 'line' => 65, 'function' => 'url', 'args' => array ( 0 => 'node/62/edit', 1 => NULL, 2 => NULL, 3 => true, ), )
            The 'file' line should give you a clue as to which module is calling url() incorrectly. In this case, it would be the 'admin_links' module. Then search the module's issue queue to see if anyone else has reported the same problem. If not, file a new bug report so the maintainer can fix the problem. Be sure to include the data from the debugging report in the bug report that you file.