PHP 4.0 Bug #4927: Displaying a sybase table freezes the browser or displays only a part of table
| From: | marc_bigler at yahoo dot com | Date: | Fri, 09 Jun 2000 11:25:48 +0000 |
| Subject: | PHP 4.0 Bug #4927: Displaying a sybase table freezes the browser or displays only a part of table | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-20711@lists.php.net to get a copy of this message | ||
From: marc_bigler@yahoo.com
Operating system: RedHat Linux 6.2
PHP version: 4.0 Release Candidate 2
PHP Bug Type: Sybase (dblib) related
Bug description: Displaying a sybase table freezes the browser or displays only a part of table
Here is the script:
<?php
/* Connect to the DB */
sybase_connect("winnie", "webuser", "apache");
/* Select a DB */
sybase_select_db("mportfolio");
/* Perform a SQL query to DB */
$result = sybase_query("SELECT * FROM currency");
/* Get the number of rows in result */
$nbRows = sybase_num_rows($result);
print("Number of rows: $nbRows <BR>");
/* Get the number of fields in result */
$nbFields = sybase_num_fields($result);
print("<TABLE BORDER=\"0\" CELLPADDING=\"3\"
CELLSPACING=\"1\" WIDTH=\"600\" BGCOLOR=\"#000000\">\n");
print("<TR VALIGN=\"bottom\" bgcolor=\"#9999CC\">");
print(" <TH>");
print("ID");
print(" </TH>");
print(" <TH>");
print("Code");
print(" </TH>");
print(" <TH>");
print("Country");
print(" </TH>");
print("</TR>");
while ($row = sybase_fetch_row($result)) {
print("<TR VALIGN=\"baseline\"
BGCOLOR=\"#CCCCCC\">\n");
for ($index = 0; $index < $nbFields; $index++) {
print("<TD>");
print($row[$index]);
print("</TD>\n");
}
print("</TR>\n");
}
print("</TABLE>\n");
/* Close the connection to the DB */
sybase_close();
?>
OS: RedHat Linux 6.2
PHP version: 4.0.0 (FINAL) for UNIX
Apache version: 1.3.12 for UNIX
Sybase version: 11.9.2 for Linux
Here is the compile line of PHP (for modules):
./configure --with-apxs=/opt/apache/bin/apxs --with-config-file-path=/opt/apache
--with-sybase=/opt/sybase-11.9.2
I tryed to compile the PHP4 module as a DSO and as a static module, the result is the same.
My PHP.INI file is exactly the same as the php.ini-dist that is available with the PHP4.0.0 archive.
I didn't modify it.
When load the script that you can see up there it adds this to the error log file of Apache
(error_log):
sybase.c(898) : Freeing 0x0812EE44 (5 bytes), script=/opt/apache/htdocs/syb.php
zend_variables.c(126) : Actual location (location was relayed)
Last leak repeated 53 times
In case you would need it here is my sybase table that i access in the script upper:
/* ============================================================ */
/* Database name: mportfolio */
/* DBMS name: Sybase AS Enterprise 11.5-11.9 */
/* Created on: 09.06.2000 13:20 */
/* ============================================================ */
/* ============================================================ */
/* Table: currency */
/* ============================================================ */
create table currency
(
currency_id numeric identity,
currency_name char(3) not null,
currency_country varchar(30) not null,
constraint pk_currency primary key (currency_id)
)
go
If you need any more informations please feel free to ask me. I thank you in advance for your
support & help.
Regards
Marc Bigler (marc_bigler@yahoo.com)