Re: SSI problem with php after 4.3.10 -> 4.4.1 upgrade

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 12/5/05, Jay Blanchard <jay.blanchard@xxxxxxxxxxx> wrote:
> [snip]
> I'm having a problem with certain SSI files which include php scripts
> after upgrding php from 4.3.10 to 4.4.1.
> The includes look like:
> <!--#include file="eventsdb.php?ID=81&fld=2" -->
>
> In some cases, the page output is different with 4.4.1 than it is with
> 4.3.10.  In the worst cases, Apache gives a segmentation fault, and
> the page is blank.
>
> Has anyone encountered any similar issues?
> [/snip]
>
> We'd have to see some code to begin to analyse what the problem might be.
> Can you send php code snips from eventdb.php?
>

The code is short.  The same php script is being included in the page
which is displaying differently and the page which is causing the
apache segfault.

if (empty($ID)){
    $ID='1';
}
$today = date("Ymd");
$conn = mysql_connect ([snip]);
if ($conn == false){
  echo mysql_errno() . ": " . mysql_error() . "<BR>";
  exit;
        }
else {
                        $rtn = mysql_select_db ("[tablename]");
                        $sql = "select * from events where ID = ".$ID;
                                                $result = mysql_query ($sql);
                        if ( ($row = mysql_fetch_row($result)) &&
($today<=$row[4]
) ){
                                                        //if ( $row =
mysql_fetch_
row($result)) {
                                                        switch ($fld){
                                                        case 2:
                                                        echo $row[2];
                                                        break;
                                                        case 5:
                                                        echo $row[5];
                                                        break;
                                                        case 6:
                                                        echo $row[6];
                                                        break;
                                                        case 7:
                                                        echo $row[7];
                                                        break;
                                                        default:
                                                        echo $row[1];
                                                        break;
                                                          }
                                                }

                           }


By the way, the backtrace from the apache segfault is:
#0  0xb7e095cc in zend_hash_index_update_or_next_insert (ht=0xb7ea29c0, h=0,
    pData=0xbfffdc60, nDataSize=12, pDest=0x0, flag=1)
    at /home/sys/src/php-4.4.1/Zend/zend_hash.c:390
390         p = ht->arBuckets[nIndex];
(gdb) bt full
#0  0xb7e095cc in zend_hash_index_update_or_next_insert (ht=0xb7ea29c0, h=0,
    pData=0xbfffdc60, nDataSize=12, pDest=0x0, flag=1)
    at /home/sys/src/php-4.4.1/Zend/zend_hash.c:390
        nIndex = 0
        p = Variable "p" is not available.
(gdb)

That segfault backtrace is the same even if I compile php with the
--without-zend-memory-manager flag, and also when I disable all Zend
settings in php.ini.

Thanks,
Kristina

--
"In most cases, people, even wicked people, are far more naive and
simple-hearted than one generally assumes.  And so are we."
/* last line, 1st ch., The Brothers Karamazov */

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



[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux