Re: [PHP-DEV] Re: using VC++ to compile PHP extensions

2003-02-28 Thread epplestun
Hi, if you want see this:

http://www.zonaphp.com/index.php?modulo=articuloaccion=leerid=6

Is a introduction to make new extensions under Unix systems, it´s in
spanish.
- Original Message -
From: J Smith [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Sent: Friday, February 28, 2003 12:23 AM
Subject: [PHP-DEV] Re: using VC++ to compile PHP extensions



 To add to that, I wrote up a short article yesterday that pretty much said
 the same thing, although it had a more UNIX-y focus. See

 http://www.tutorbuddy.com/software/phpcpp/phpcpp/

 J


 Dave Viner wrote:

  Hi,
  I've just completed some local php extensions using VC++.  Here are some
  notes that might help others when creating php extensions using VC++.
 

 snip

 
  dave


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



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



[PHP-DEV] CVS Account Request: tacke

2003-02-28 Thread Radu Calauz
Developing the PHP runtime

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



Re: [PHP-DEV] [PATCH] - fix for 64 bit issues with OnUpdateInt

2003-02-28 Thread James Devenish
Hi,

Preface: This e-mail uses the distribution list (To and CC addresses)
that the original poster used. I have moved everyone other than php-dev
to Bcc so that this doesn't get perpetuated (I have no idea of the
significance of the other addresses that were e-mailed, nor do I know
Dave Hill's standing in the PHP community).

In message [EMAIL PROTECTED]
on Thu, Feb 27, 2003 at 02:52:28PM -0500, Dave Hill wrote:
 Proposed Patch to address 64 bit issues in PHP v4.3.1
 Diff -u against php4-STABLE-200302241430
 Also needed in 4.5.x and 5.x
 Addresses bugs 20994, 21002, 21822, 20268

There was some discussion on php-dev in November 2002 after I posted
patches for bug #20268 (the earliest-numbered one in Dave's list).

 I chose to address this problem by creating OnUpdateLong (in addition to
 to existing OnUpdateInt) and sweep though the code changing the call
 where needed to match the stucture item. An equally valid fix would be
 to change all of those longs to ints.

(a) I also chose to create OnUpdateLong (and this has been working well
for me since 4.3.0pre2 using the patches I posted). Since I posted those
patches, PHP has progressed and more of these problems have been
introduced (bad) but at the same time some of the test cases have been
revised to be more portable (good).

(b) I found that sometimes ints needed to stay as ints and longs needed
to stay as longs, which is why I chose to separate OnUpdateLong from
OnUpdateInt.

(c) In discussions on php-dev in November, the subject of the thread was
64-bit PHP 4.3 (extensive long vs int problems)
http://marc.theaimsgroup.com/?t=10369029101r=1w=2

(d) Jason Greene responded as a person who was working on this problem.
Disfavour of the OnUpdateLong solution was expressed (on- and maybe
off-list, too).

 After performing that sweep, I found there was a small number of other
 errors of the int/long type that my compiler found that I corrected and
 are included here. There might be more mix and match problems, I only
 addressed the ones in the modules I have enabled.

Deja vu!

Now the reason I am responding and the reason I have BCCed the people in
Dave's list was that I wanted to mention something about Zend. Really,
this bug has its roots in Zend though it is manifested in PHP modules.
Firstly, OnUpdateInt assigns to long storage but uses zend_atoi --
clearly there is confusion already. But the more disturbing thing that I
found in November was the Zend documentation for zend_parse_parameters
(a site of extensive long/int problems). That is why I have written this
e-mail.

I know nothing about the Zend engine but I will refer to this document:
http://www.zend.com/apidoc/zend.arguments.retrieval.php It is entitled
Accepting Arguments / Retrieving Arguments and describes the
zend_parse_parameters function. It lists a type specifier:

l - long

But it does not list an int type. In the actual code, it is entirely
long-based, not int-based, so there is clearly a mismatch. But moreover,
there is no acknowledgement of the significance of int versus long. So
it is not surprising that so many developers have made mistakes arising
from this.

Therefore, I thought that a proper solution to this problem would have
to involve some consideration of the Zend API (or at least copious
acknowledgments and warnings in its documentation). There is potentially
a huge developer education problem, too. That is why I chose to add
OnUpdateLong. And given the choice, I would have 'i - int' added to the
type specifiers of zend_parse_parameters.

Firstly, having the OnUpdateLong function allows quick rectification of
these problems without having to try to stuff ints into longs or longs
into ints -- we can instead just choose the one that fits the task.
Moreover: by having two functions and two type specifiers (one for ints
and one for longs), the situation would almost be self-documenting:
developers that would usually neglect to consider the difference between
int and long would at least see that there is a 'int' variant and a
'long' variant and therefore be prompted -- without extensive
re-education -- to consider using the correct 'hole' for the 'peg'. If
Zend is to settle on everything being longs or everything being ints,
then people have to be stopped from reintroducing the 'wrong' type and
people are going to have problems when the 'other' storage is the only
one that appears to fit the job.

Given the gradual divergence of Zend  PHP from 64-bit cleanliness, I
had thought these things to be fairly urgent and fundamental. In any
case, the number of users and lines of code influenced by these issues
has become increasingly visible in public over the last four months.



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



[PHP-DEV] package.xlm question

2003-02-28 Thread Michael Bretterklieber
Hi,

in my package.xml I have this:
 filelist
dir role=src name=/
  fileCREDITS/file
  fileMakefile.in/file
is it possible that with older versions of the pear-command I have to 
put on each file entry the role?
 filelist
dir role=src name=/
  file role=srcCREDITS/file
  file role=srcMakefile.in/file

Because I got a report from a user that he has problems installing the 
package.
Localy if have no problems pear validate-package returns no error.

bye,
--
--- -
Michael Bretterklieber- [EMAIL PROTECTED]
JAWA Management Software GmbH - http://www.jawa.at
Liebenauer Hauptstr. 200-- privat ---
A-8041 GRAZ GSM: ++43-(0)676-93 96 698
Tel: ++43-(0)316-403274-12  E-mail:   [EMAIL PROTECTED]
Fax: ++43-(0)316-403274-10  http://www.bretterklieber.com
--- -
...the number of UNIX installations has grown to 10, with more
expected... - Dennis Ritchie and Ken Thompson, June 1972
--
PHP Development Mailing List http://www.php.net/
To unsubscribe, visit: http://www.php.net/unsub.php


Re: [PHP-DEV] package.xlm question

2003-02-28 Thread Michael Bretterklieber
Hi,

forget this posting, I picked the wrong address from my addressbook - 
again gr,

bye,

Michael Bretterklieber wrote:
Hi,

in my package.xml I have this:
 filelist
dir role=src name=/
  fileCREDITS/file
  fileMakefile.in/file
is it possible that with older versions of the pear-command I have to 
put on each file entry the role?
 filelist
dir role=src name=/
  file role=srcCREDITS/file
  file role=srcMakefile.in/file

Because I got a report from a user that he has problems installing the 
package.
Localy if have no problems pear validate-package returns no error.

bye,
--
--- -
Michael Bretterklieber- [EMAIL PROTECTED]
JAWA Management Software GmbH - http://www.jawa.at
Liebenauer Hauptstr. 200-- privat ---
A-8041 GRAZ GSM: ++43-(0)676-93 96 698
Tel: ++43-(0)316-403274-12  E-mail:   [EMAIL PROTECTED]
Fax: ++43-(0)316-403274-10  http://www.bretterklieber.com
--- -
...the number of UNIX installations has grown to 10, with more
expected... - Dennis Ritchie and Ken Thompson, June 1972
--
PHP Development Mailing List http://www.php.net/
To unsubscribe, visit: http://www.php.net/unsub.php


[PHP-DEV] Weak references in PHP

2003-02-28 Thread Konstantin Knizhnik
To be able to implmenet interface of object-oriented database to PHP I need
to
have object cache which will map persistent object identifier (OPID) to
loaded instance of the object. This cache should be weak, i.e. it should
not prevent garbage collection from deallocating unused instances of
peristent object (otherwise all database will be soon loaded in memory)..

As far as I understand, PHP uses GC bases on refernce couters. Also I do not
find something like weak reference in language manual. There are two other
ways how to solve the problem
without weak references:
1. Be able to check valye of reference counter (so I can check the it is
equal to 1 and if so remove this object from object cache)
2. Be able to detect the moment when object is removed by GC (in this case I
can make object cache invisible for GC and when object is deleted, it will
be also unlinked frmo object cache).

Can anybody tell me if such features are available in PHP (I failed to find
them myself).
Or may be there is some other way to solve the problem?

Thanks in advance
Konstantin



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



Re: [PHP-DEV] CVS Account Request: tony2001

2003-02-28 Thread Antony Dovgal
On 24 Feb 2003 08:21:17 -
Antony Dovgal [EMAIL PROTECTED] wrote:

 Translating PEAR docs to Russian (main purpose, PEAR Russian docs team obviously 
 need help).
 Translating PHP docs to Russian (possibly, if Russian docs team needs some help).

Vitaliy Kravchenko(from Russian PEAR Docs team) has already said in pear-dev, that he 
needs my help.
Please, give me access to peardoc. 
I can start translating it to Russian immediately.

--
Wbr,
Antony Dovgal aka tony2001  mailto:[EMAIL PROTECTED]
http://phpclub.net
---
Stand for something or you will fall for nothing.

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



Re: [PHP-DEV] Variables VS constantes

2003-02-28 Thread Derick Rethans
Hello,

please forward user questions to the [EMAIL PROTECTED]
mailinglist, this list is for development _OF_ PHP, not development
_with_ PHP.

Derick


On Fri, 28 Feb 2003, Cranky wrote:

 Hello,
 I would like to know if in a config file for
 example, if it was better to use variables or
 constantes ?
 Is it a big difference of performance or in
 memory used ?
 
 And the same question about the translation of
 a site.
 I would like to translate my site in many
 langages.
 So I want to create one file per langage to put
 in the text translated in it.
 Is it better to use variables, associatives arrays
 or constantes ?
 
 Thanks a lot for your reply
 
 
 
 

-- 
Stop mad cowboy disease!
-
 Derick Rethans http://derickrethans.nl/ 
 PHP Magazine - PHP Magazine for Professionals   http://php-mag.net/
-

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



Re: [PHP-DEV] Weak references in PHP

2003-02-28 Thread George Schlossnagle
Can anybody tell me if such features are available in PHP (I failed to 
find
them myself).
Look at __destruct method for classes in ZE2.  They wopn't tell you the 
reference count, but the do get called when the ref count goes to 0.

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


Re: [PHP-DEV] [PATCH] - fix for 64 bit issues with OnUpdateInt

2003-02-28 Thread Andi Gutmans
Hi,

The reason the zend_parse_parameters() API only exposes long is because the 
Zend zval (container which holds the engine values) only supports longs and 
not ints. So anything which touches scripting engine values should be using 
long. However, extensions which have INI parameters may want to use ints 
for their internal logic. The INI directive retrieval really doesn't have 
anything to do with zval's.
So I think the fix of adding OnUpdateLong() is the correct fix.
We could add some support in ZEND_DEBUG mode to catch some common errors. 
For example, we could make the zend_parse_parameters() function a macro and 
make sure that people are passing long's and not ints. I'm not really sure 
it's worth it though.

Andi

At 06:19 PM 2/28/2003 +0800, James Devenish wrote:
Hi,

Preface: This e-mail uses the distribution list (To and CC addresses)
that the original poster used. I have moved everyone other than php-dev
to Bcc so that this doesn't get perpetuated (I have no idea of the
significance of the other addresses that were e-mailed, nor do I know
Dave Hill's standing in the PHP community).
In message [EMAIL PROTECTED]
on Thu, Feb 27, 2003 at 02:52:28PM -0500, Dave Hill wrote:
 Proposed Patch to address 64 bit issues in PHP v4.3.1
 Diff -u against php4-STABLE-200302241430
 Also needed in 4.5.x and 5.x
 Addresses bugs 20994, 21002, 21822, 20268
There was some discussion on php-dev in November 2002 after I posted
patches for bug #20268 (the earliest-numbered one in Dave's list).
 I chose to address this problem by creating OnUpdateLong (in addition to
 to existing OnUpdateInt) and sweep though the code changing the call
 where needed to match the stucture item. An equally valid fix would be
 to change all of those longs to ints.
(a) I also chose to create OnUpdateLong (and this has been working well
for me since 4.3.0pre2 using the patches I posted). Since I posted those
patches, PHP has progressed and more of these problems have been
introduced (bad) but at the same time some of the test cases have been
revised to be more portable (good).
(b) I found that sometimes ints needed to stay as ints and longs needed
to stay as longs, which is why I chose to separate OnUpdateLong from
OnUpdateInt.
(c) In discussions on php-dev in November, the subject of the thread was
64-bit PHP 4.3 (extensive long vs int problems)
http://marc.theaimsgroup.com/?t=10369029101r=1w=2
(d) Jason Greene responded as a person who was working on this problem.
Disfavour of the OnUpdateLong solution was expressed (on- and maybe
off-list, too).
 After performing that sweep, I found there was a small number of other
 errors of the int/long type that my compiler found that I corrected and
 are included here. There might be more mix and match problems, I only
 addressed the ones in the modules I have enabled.
Deja vu!

Now the reason I am responding and the reason I have BCCed the people in
Dave's list was that I wanted to mention something about Zend. Really,
this bug has its roots in Zend though it is manifested in PHP modules.
Firstly, OnUpdateInt assigns to long storage but uses zend_atoi --
clearly there is confusion already. But the more disturbing thing that I
found in November was the Zend documentation for zend_parse_parameters
(a site of extensive long/int problems). That is why I have written this
e-mail.
I know nothing about the Zend engine but I will refer to this document:
http://www.zend.com/apidoc/zend.arguments.retrieval.php It is entitled
Accepting Arguments / Retrieving Arguments and describes the
zend_parse_parameters function. It lists a type specifier:
l - long

But it does not list an int type. In the actual code, it is entirely
long-based, not int-based, so there is clearly a mismatch. But moreover,
there is no acknowledgement of the significance of int versus long. So
it is not surprising that so many developers have made mistakes arising
from this.
Therefore, I thought that a proper solution to this problem would have
to involve some consideration of the Zend API (or at least copious
acknowledgments and warnings in its documentation). There is potentially
a huge developer education problem, too. That is why I chose to add
OnUpdateLong. And given the choice, I would have 'i - int' added to the
type specifiers of zend_parse_parameters.
Firstly, having the OnUpdateLong function allows quick rectification of
these problems without having to try to stuff ints into longs or longs
into ints -- we can instead just choose the one that fits the task.
Moreover: by having two functions and two type specifiers (one for ints
and one for longs), the situation would almost be self-documenting:
developers that would usually neglect to consider the difference between
int and long would at least see that there is a 'int' variant and a
'long' variant and therefore be prompted -- without extensive
re-education -- to consider using the correct 'hole' for the 'peg'. If
Zend is to settle on everything being longs or everything being 

Re: [PHP-DEV] CVS Account Request: jay

2003-02-28 Thread Andi Gutmans
Have you submitted a CVS account request?

At 09:41 PM 2/27/2003 +, J Smith wrote:
A few weeks ago, I kind of volunteered to maintain testing scripts for ZE2 
on the ZE2 mailing list. (See the thread beginning at 
http://www.zend.com/lists/engine2/200302/msg3.html )

Just to make good on my volunteering, I guess I'll be needing a CVS 
account. I suppose I'd need access to php(4|5)/tests. I have a bunch of 
tests ready to go, and will be adding more as features get added, tweaked, 
etc. within ZE2.

As for experience, I've submitted various patches to the project over the 
past year or so and written a few extensions that will eventually make it 
to PECL. I've also offered the use of a Solaris server to the group for 
debugging Solaris SPARC issues and can do some debugging on it myself if 
there's a need for it.

J, aka darkpanda

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


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


Re: [PHP-DEV] Weak references in PHP

2003-02-28 Thread Andi Gutmans
Hi,

I don't quite understand. If you are thinking of implementing something 
similar to JDO then your persistent object manager will only hold the 
objects which are retrieve by the script. At the end of the request it'll 
persist the changes and will free the objects. Why would you want them to 
be destroyed during the request?

Andi

At 02:39 PM 2/28/2003 +0300, Konstantin Knizhnik wrote:
To be able to implmenet interface of object-oriented database to PHP I need
to
have object cache which will map persistent object identifier (OPID) to
loaded instance of the object. This cache should be weak, i.e. it should
not prevent garbage collection from deallocating unused instances of
peristent object (otherwise all database will be soon loaded in memory)..
As far as I understand, PHP uses GC bases on refernce couters. Also I do not
find something like weak reference in language manual. There are two other
ways how to solve the problem
without weak references:
1. Be able to check valye of reference counter (so I can check the it is
equal to 1 and if so remove this object from object cache)
2. Be able to detect the moment when object is removed by GC (in this case I
can make object cache invisible for GC and when object is deleted, it will
be also unlinked frmo object cache).
Can anybody tell me if such features are available in PHP (I failed to find
them myself).
Or may be there is some other way to solve the problem?
Thanks in advance
Konstantin


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


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


Re: [PHP-DEV] [PATCH] - fix for 64 bit issues with OnUpdateInt

2003-02-28 Thread Sascha Schumann
 So I think the fix of adding OnUpdateLong() is the correct fix.

I was under the impression that OnUpdateInt was actually
expecting a long.  I remember changing some int's to long's
to address 64 bit issues.  Do I remember this incorrectly?

- Sascha

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



[PHP-DEV] Re: [ZEND-ENGINE-CVS] Re: ZendEngine2 / ZEND_CHANGES

2003-02-28 Thread Sebastian Bergmann
Harald Radi wrote:
 how is your book doing :)

  The deadline is approaching. Besides that, good ;-)

-- 
  Sebastian Bergmann
  http://sebastian-bergmann.de/ http://phpOpenTracker.de/

  Did I help you? Consider a gift: http://wishlist.sebastian-bergmann.de/

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



Re: [PHP-DEV] [PATCH] - fix for 64 bit issues with OnUpdateInt

2003-02-28 Thread Andi Gutmans
At 04:28 PM 2/28/2003 +0100, Sascha Schumann wrote:
 So I think the fix of adding OnUpdateLong() is the correct fix.

I was under the impression that OnUpdateInt was actually
expecting a long.  I remember changing some int's to long's
to address 64 bit issues.  Do I remember this incorrectly?
No, you are correct but misunderstood me. We should introduce 
OnUpdateLong() for ppl using longs and use OnUpdateInt() for ppl who want 
to use ints.

Andi

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


Re: [PHP-DEV] CVS Account Request: jay

2003-02-28 Thread J Smith

Yep. Yesterday, through the form on the docs page. 

J


Andi Gutmans wrote:

 Have you submitted a CVS account request?
 
 At 09:41 PM 2/27/2003 +, J Smith wrote:
A few weeks ago, I kind of volunteered to maintain testing scripts for ZE2
on the ZE2 mailing list. (See the thread beginning at
http://www.zend.com/lists/engine2/200302/msg3.html )

Just to make good on my volunteering, I guess I'll be needing a CVS
account. I suppose I'd need access to php(4|5)/tests. I have a bunch of
tests ready to go, and will be adding more as features get added, tweaked,
etc. within ZE2.

As for experience, I've submitted various patches to the project over the
past year or so and written a few extensions that will eventually make it
to PECL. I've also offered the use of a Solaris server to the group for
debugging Solaris SPARC issues and can do some debugging on it myself if
there's a need for it.

J, aka darkpanda

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


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



[PHP-DEV] CVS Account Request: linux521

2003-02-28 Thread chris lee
Learning PHP Program!

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



Re: [PHP-DEV] CVS Account Request: linux521

2003-02-28 Thread didou
 Learning PHP Program!

You don't need a CVS account to do that.

cheers,

Mehdi






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



Re: [PHP-DEV] [PATCH] - fix for 64 bit issues with OnUpdateInt

2003-02-28 Thread David Hill
  So I think the fix of adding OnUpdateLong() is the correct fix.

 I was under the impression that OnUpdateInt was actually
 expecting a long.  I remember changing some int's to long's
 to address 64 bit issues.  Do I remember this incorrectly?

 - Sascha


Most, but not all of the calls to OnUpdateInt were long, and at least one of
the mismatches was in main (three longs in a row followed by an int look
at output_buffering in main.c). I personally don't care which way the team
wants to fix this. My thought was the making the name say long was the
best way to avoid silly errors in the future. If you want some consistency,
then you could always retire OnUpdateInt and force them all to be long :-)
It is not as if an extra few bytes would be noticed.

Part of the problem is that many people still think an int and a long are
interchangeable - and they actually are when the compiler knows what it is
dealing with. The problem is when you start passing pointers around and
casting things, and the compiler can't fix things up for you. This is of
course compounded by the fact that on quite a few platforms they are the
same size

Dave Hill


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



Re: [PHP-DEV] [PATCH] - fix for 64 bit issues with OnUpdateInt

2003-02-28 Thread Sascha Schumann
 No, you are correct but misunderstood me. We should introduce
 OnUpdateLong() for ppl using longs and use OnUpdateInt() for ppl who want
 to use ints.

Well, and how are you planning to mitigate the BC issues?
Remember that not all extension code is under our direct
control.

- Sascha

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



Re: [PHP-DEV] [PATCH] - fix for 64 bit issues with OnUpdateInt

2003-02-28 Thread Andi Gutmans
At 04:47 PM 2/28/2003 +0100, Sascha Schumann wrote:
 No, you are correct but misunderstood me. We should introduce
 OnUpdateLong() for ppl using longs and use OnUpdateInt() for ppl who want
 to use ints.
Well, and how are you planning to mitigate the BC issues?
Remember that not all extension code is under our direct
control.
I don't think there's much choice. Do you have a better idea? If so, please 
explain it.

Andi

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


Re: [PHP-DEV] [PATCH] - fix for 64 bit issues with OnUpdateInt

2003-02-28 Thread Sascha Schumann
I think that simply adding OnUpdateLong and deprecating
OnUpdateInt is fine while retaining its current semantics.  I
just don't see any value in changing the meaning of
OnUpdateInt; at least that's how I interpreted Andi's
message.

- Sascha

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



Re: [PHP-DEV] [PATCH] - fix for 64 bit issues with OnUpdateInt

2003-02-28 Thread Andi Gutmans
At 04:50 PM 2/28/2003 +0100, Sascha Schumann wrote:
I think that simply adding OnUpdateLong and deprecating
OnUpdateInt is fine while retaining its current semantics.  I
just don't see any value in changing the meaning of
OnUpdateInt; at least that's how I interpreted Andi's
message.
That's also an option but I think OnUpdateInt() is confusing and how do we 
stop ppl from using it in new extensions which who's commit messages aren't 
followed via php-cvs?

Andi

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


Re: [PHP-DEV] [PATCH] - fix for 64 bit issues with OnUpdateInt

2003-02-28 Thread Sascha Schumann
 That's also an option but I think OnUpdateInt() is confusing and how do we
 stop ppl from using it in new extensions which who's commit messages aren't
 followed via php-cvs?

I volunteer to set up a cron job which greps for OnUpdateInt
:-)

The problem with _changing_ the existing semantics is that
programmers will not notice that they need to adapt types
from long to int.  That leaves 64 bit platforms with a new
set of problems, because the upper half of the long won't be
initialized.

- Sascha

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



Re: [PHP-DEV] [PATCH] - fix for 64 bit issues with OnUpdateInt

2003-02-28 Thread Rasmus Lerdorf
On Fri, 28 Feb 2003, Andi Gutmans wrote:

 At 04:50 PM 2/28/2003 +0100, Sascha Schumann wrote:
  I think that simply adding OnUpdateLong and deprecating
  OnUpdateInt is fine while retaining its current semantics.  I
  just don't see any value in changing the meaning of
  OnUpdateInt; at least that's how I interpreted Andi's
  message.

 That's also an option but I think OnUpdateInt() is confusing and how do we
 stop ppl from using it in new extensions which who's commit messages aren't
 followed via php-cvs?

You can't really, but at least their extensions won't compile in future
PHP versions and they will be forced to go and address the issue as
opposed to continuing to propogate extensions that aren't 64-bit friendly.
If we could force a compiler warning/error on a type mismatch to the
OnUpdateInt/Long then that might be a solution too.

-Rasmus

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



[PHP-DEV] Current HEAD segfaults with make test

2003-02-28 Thread Sebastian Bergmann
PASS Methods via variable name, bug #20120 [tests/classes/bug20120.phpt]
make: *** [test] Segmentation fault

  Is there a way to find out which test segfaults? Obviously the one
  after tests/classes/bug20120.phpt, but ...

-- 
  Sebastian Bergmann
  http://sebastian-bergmann.de/ http://phpOpenTracker.de/

  Did I help you? Consider a gift: http://wishlist.sebastian-bergmann.de/

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



Re: [PHP-DEV] [PATCH] - fix for 64 bit issues with OnUpdateInt

2003-02-28 Thread Zeev Suraski
At 17:50 28/02/2003, Sascha Schumann wrote:
I think that simply adding OnUpdateLong and deprecating
OnUpdateInt is fine while retaining its current semantics.
+1

Zeev

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


[PHP-DEV] #php.bugs invite only?

2003-02-28 Thread George Schlossnagle
#php.bugs seems to be invite only now.  How do I go about getting 
myself invited?

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


Re: [PHP-DEV] Current HEAD segfaults with make test

2003-02-28 Thread Melvyn Sopacua
At 17:10 2/28/2003, you wrote:

PASS Methods via variable name, bug #20120 [tests/classes/bug20120.phpt]
make: *** [test] Segmentation fault
  Is there a way to find out which test segfaults? Obviously the one
  after tests/classes/bug20120.phpt, but ...
Mine segfaults already on the third test (tests/run-test/test003.phpt),
but the funny thing is, that making it execute as:
make test TESTS=tests/run-test/test003.phpt
does work.

However - I made a typo like this:
make test TESTS=tests/run-tests/test003.phpt (notice the 's'), and that
segfaulted too.
Looking at the backtrace this has to do with error logging/reporting.

Backtrace (FreeBSD 4.7-STABLE) is attached.

signature type=newbie
%farewell;
%job;
%name; %phone; %pager; %mobile;
%email.antispam; %url.mypage;
%fancy.ascii;
%disclaimer;
%fancy.ascii;
%quote.collection.standard.current;
?attach sameinfo.vcf ?
/signatureCore was generated by `php'.
Program terminated with signal 11, Segmentation fault.
#0  0x81d0b88 in zend_hash_find (ht=0x82b6040, 
arKey=0x822586a error_reporting, nKeyLength=16, pData=0xbfbf4c7c)
at /home/mdev/cvs/php5/Zend/zend_hash.c:869
869 HANDLE_NUMERIC(arKey, nKeyLength, zend_hash_index_find(ht, idx, 
pData));
#0  0x81d0b88 in zend_hash_find (ht=0x82b6040, 
arKey=0x822586a error_reporting, nKeyLength=16, pData=0xbfbf4c7c)
at /home/mdev/cvs/php5/Zend/zend_hash.c:869
tmp = 0x822586a error_reporting
h = 3216985304
nIndex = 136765888
p = (Bucket *) 0x8257484
#1  0x81d890e in zend_alter_ini_entry (name=0x822586a error_reporting, 
name_length=16, new_value=0x8225868 0, new_value_length=1, 
modify_type=1, stage=16) at /home/mdev/cvs/php5/Zend/zend_ini.c:201
ini_entry = (zend_ini_entry *) 0x834ebb0
duplicate = 0x826dfc4 
#2  0x81e8a53 in zend_begin_silence_handler (execute_data=0xbfbf90a4, 
op_array=0x830e200) at /home/mdev/cvs/php5/Zend/zend_execute.c:3812
No locals.
#3  0x81df667 in execute (op_array=0x830e200)
at /home/mdev/cvs/php5/Zend/zend_execute.c:1231
execute_data = {opline = 0x831f708, function_state = {
function_symbol_table = 0x833293c, function = 0x830e200, reserved = {
  0xbfbf90f0, 0x81e9f58, 0x8332a48, 0x81e1dc8}}, fbc = 0x0, 
  fbc_constructor = 0x81c6cfd, op_array = 0x830e200, object = 0x0, 
  Ts = 0xbfbf4cd8, original_in_execution = 1 '\001', calling_scope = 0x0, 
  prev_execute_data = 0xbfbfe474}
#4  0x81e4c94 in zend_do_fcall_common_helper (execute_data=0xbfbfe474, 
op_array=0x827d09c) at /home/mdev/cvs/php5/Zend/zend_execute.c:2638
calling_symbol_table = (HashTable *) 0x826e090
original_return_value = (zval **) 0xbfbfe4ec
current_scope = (zend_class_entry *) 0x0
current_this = (zval *) 0x0
return_value_used = 1
active_namespace = (zend_namespace *) 0x826ddcc
#5  0x81e50d3 in zend_do_fcall_by_name_handler (execute_data=0xbfbfe474, 
op_array=0x827d09c) at /home/mdev/cvs/php5/Zend/zend_execute.c:2706
No locals.
#6  0x81df667 in execute (op_array=0x827d09c)
at /home/mdev/cvs/php5/Zend/zend_execute.c:1231
execute_data = {opline = 0x828f870, function_state = {
function_symbol_table = 0x832a7b0, function = 0x830e200, reserved = {
  0xbfbfe4b0, 0x81a77f9, 0x826df68, 0xbfbffab8}}, fbc = 0x830e200, 
  fbc_constructor = 0x81a77d0, op_array = 0x827d09c, object = 0x0, 
  Ts = 0xbfbf9178, original_in_execution = 0 '\000', calling_scope = 0x0, 
  prev_execute_data = 0x0}
#7  0x81c98c4 in zend_execute_scripts (type=8, retval=0x0, file_count=3)
at /home/mdev/cvs/php5/Zend/zend.c:985
files = 0xbfbfe51c 
i = 1
file_handle = (zend_file_handle *) 0xbfbffab8
orig_op_array = (zend_op_array *) 0x0
local_retval = (zval *) 0x0
#8  0x8187fc3 in php_execute_script (primary_file=0xbfbffab8)
at /home/mdev/cvs/php5/main/main.c:1736
orig_bailout = {{_jb = {136235057, 136672388, -1077937708, 
  -1077937440, -1077937348, -1077937312, 4735, 0, 0, 0, 0, 0}}}
orig_bailout_set = 1 '\001'
prepend_file_p = (zend_file_handle *) 0x0
append_file_p = (zend_file_handle *) 0x0
prepend_file = {type = 7 '\a', 
  filename = 0x1 Address 0x1 out of bounds, opened_path = 0x8304560 STDIN, 
  handle = {fd = 6, fp = 0x6, stream = {handle = 0x6, 
  reader = 0x8257484 __DTOR_END__+4, closer = 0, interactive = 0}}, 
  free_filename = 0 '\000'}
append_file = {type = 7 '\a', 
  filename = 0x1 Address 0x1 out of bounds, 
  opened_path = 0x8304570 STDOUT, handle = {fd = 7, fp = 0x7, stream = {
  handle = 0x7, reader = 0x8257484 __DTOR_END__+4, closer = 0x1, 
  interactive = 0}}, free_filename = 1 '\001'}
old_cwd = 0xbfbfe528 
old_primary_file_path = 0x0
retval = 0
#9  0x81ed347 in main (argc=8, argv=0xbfbffb3c)
at /home/mdev/cvs/php5/sapi/cli/php_cli.c:885
orig_bailout = {{_jb = {0 

Re: [PHP-DEV] #php.bugs invite only?

2003-02-28 Thread Ilia A.
On February 28, 2003 11:50 am, George Schlossnagle wrote:
 #php.bugs seems to be invite only now.  How do I go about getting
 myself invited?

It would appear someone had accidentaly set the channel to invite only, it is 
fixed now.

Ilia

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



Re[2]: [PHP-DEV] Weak references in PHP

2003-02-28 Thread Konstantin Knizhnik
Hello Andi,

The problem is that script can fetch very large number of objects
and all of them doesn't fit in the memory. Lets say we have very
large list of objects (several millions objects or more). And our
script traverse the list and fetch objects one by one and do some
calculations (for example calculates total sum). So at each moment of
time only one persistent object is actually needed. But without weak
references we will have to keep all these millions of objects in
memory.

Also performance of OODBBS greatly depends on efficient
caching of objects. If we throw away all objects after each request
and has to reload them from the server for each request, then
performance will we awful. It is very significant to be able to cache
most frequently used objects. LRU or some other discipline can be
used for it. But any not depending from the discipline we use we need
some  mechanism which allows to map OPIDs to instances and do not
prevent GC from collecting the objects.

That is why almost all languages with implicit memory
deallocation have some kind of weak references. And I was wondered
when do not find such facility in PHP.

Using __destruct method (thanks to George) it may be possible to implement
what I need, but only if object cache is implemented in C (and so is
not visible for PHP garbage collector). So no pure PHP solution exits.
Unfortunately I didn't fins any reference to __destruct method in PHP
manual and do not understand how it works. If I just declare
__destruct method in class, it is not invoked when object is
destructed.



Friday, February 28, 2003, 6:29:21 PM, you wrote:

AG Hi,

AG I don't quite understand. If you are thinking of implementing something 
AG similar to JDO then your persistent object manager will only hold the 
AG objects which are retrieve by the script. At the end of the request it'll 
AG persist the changes and will free the objects. Why would you want them to 
AG be destroyed during the request?

AG Andi

AG At 02:39 PM 2/28/2003 +0300, Konstantin Knizhnik wrote:
To be able to implmenet interface of object-oriented database to PHP I need
to
have object cache which will map persistent object identifier (OPID) to
loaded instance of the object. This cache should be weak, i.e. it should
not prevent garbage collection from deallocating unused instances of
peristent object (otherwise all database will be soon loaded in memory)..

As far as I understand, PHP uses GC bases on refernce couters. Also I do not
find something like weak reference in language manual. There are two other
ways how to solve the problem
without weak references:
1. Be able to check valye of reference counter (so I can check the it is
equal to 1 and if so remove this object from object cache)
2. Be able to detect the moment when object is removed by GC (in this case I
can make object cache invisible for GC and when object is deleted, it will
be also unlinked frmo object cache).

Can anybody tell me if such features are available in PHP (I failed to find
them myself).
Or may be there is some other way to solve the problem?

Thanks in advance
Konstantin



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



-- 
Best regards,
 Konstantinmailto:[EMAIL PROTECTED]


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



Re[2]: [PHP-DEV] Weak references in PHP

2003-02-28 Thread Konstantin Knizhnik
Hello George,

Friday, February 28, 2003, 5:46:18 PM, you wrote:

 Can anybody tell me if such features are available in PHP (I failed to 
 find
 them myself).

GS Look at __destruct method for classes in ZE2.  They wopn't tell you the 
GS reference count, but the do get called when the ref count goes to 0.


Sorry, I am dummy in PHP world:( Can you explain more precisely what
is ZE2 and where should I look for __destruct method.
I didn't find any reference to such method neither in PHP manual
neither in PHP sources i have downloaded.

-- 
Best regards,
 Konstantinmailto:[EMAIL PROTECTED]


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



Re: Re[2]: [PHP-DEV] Weak references in PHP

2003-02-28 Thread George Schlossnagle
Using __destruct method (thanks to George) it may be possible to 
implement
what I need, but only if object cache is implemented in C (and so is
not visible for PHP garbage collector). So no pure PHP solution exits.
Unfortunately I didn't fins any reference to __destruct method in PHP
manual and do not understand how it works. If I just declare
__destruct method in class, it is not invoked when object is
destructed.
It's in ZE2  have a look at Zend/ZEND_CHANGES in the source tree for 
details (you'll need to be running php5/HEAD).  And it's a userland 
method, so the cache can be implemented in PHP.

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


Re: [PHP-DEV] #php.bugs invite only?

2003-02-28 Thread Andi Gutmans
At 12:12 PM 2/28/2003 -0500, Ilia A. wrote:
On February 28, 2003 11:50 am, George Schlossnagle wrote:
 #php.bugs seems to be invite only now.  How do I go about getting
 myself invited?
It would appear someone had accidentaly set the channel to invite only, it is
fixed now.
I mailed Jani with the same question :)

Andi

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


Re: Re[2]: [PHP-DEV] Weak references in PHP

2003-02-28 Thread J Smith

ZE2 == Zend Engine 2, which will be replacing the current Zend Engine in PHP
5. Amoung other things, one of it's main features is a more roboust OOP
framework, which includes class destructors.

J


Konstantin Knizhnik wrote:

 Hello George,
 
 Friday, February 28, 2003, 5:46:18 PM, you wrote:
 
 Can anybody tell me if such features are available in PHP (I failed to
 find
 them myself).
 
 GS Look at __destruct method for classes in ZE2.  They wopn't tell you
 the GS reference count, but the do get called when the ref count goes to
 0.
 
 
 Sorry, I am dummy in PHP world:( Can you explain more precisely what
 is ZE2 and where should I look for __destruct method.
 I didn't find any reference to such method neither in PHP manual
 neither in PHP sources i have downloaded.
 


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



[PHP-DEV] ZE2 constructors

2003-02-28 Thread Marcus Börger
Hi Zeev,

according to the plans the following test file should PASS:


--TEST--
The new constructor/destructor is called
--SKIPIF--
?php if (version_compare(zend_version(), '2.0.0-dev', '')) die('skip 
ZendEngine 2 needed'); ?
--FILE--
?php

class early {
function early() {
echo early::early\n;
}
function __construct() {
echo early::__construct\n;
}
function __destruct() {
echo early::__destruct\n;
}
}
class late {
function __construct() {
echo late::__construct\n;
}
function late() {
echo late::late\n;
}
function __destruct() {
echo late::__destruct\n;
}
}
$t = new early();
$t-early();
unset($t);
$t = new late();
$t-late();
//unset($t); delay to end of script
echo Done\n;
?
--EXPECTF--
early::__construct
early::early
early::__destruct
late::__construct
late::late
Done
late::__destruct
#
However it fails and this patch is needed which also fixees the last final 
problem
mentioned already:

#
Index: Zend/zend_compile.c
===
RCS file: /repository/ZendEngine2/zend_compile.c,v
retrieving revision 1.375
diff -u -r1.375 zend_compile.c
--- Zend/zend_compile.c 25 Feb 2003 10:03:26 -  1.375
+++ Zend/zend_compile.c 28 Feb 2003 19:14:52 -
@@ -916,6 +916,9 @@
 ((current_access_type-u.constant.value.lval  
ZEND_ACC_PPP_MASK) != (new_modifier-u.constant.value.lval  
ZEND_ACC_PPP_MASK))) {
zend_error(E_COMPILE_ERROR, Multiple access type 
modifiers are not allowed);
}
+   if (((current_access_type-u.constant.value.lval | 
new_modifier-u.constant.value.lval)  (ZEND_ACC_ABSTRACT | 
ZEND_ACC_FINAL)) == (ZEND_ACC_ABSTRACT | ZEND_ACC_FINAL)) {
+   zend_error(E_COMPILE_ERROR, Cannot use the final modifier 
on an abstract class member);
+   }
if (((current_access_type-u.constant.value.lval | 
new_modifier-u.constant.value.lval)  (ZEND_ACC_PRIVATE | ZEND_ACC_FINAL)) 
== (ZEND_ACC_PRIVATE | ZEND_ACC_FINAL)) {
zend_error(E_COMPILE_ERROR, Cannot use the final modifier 
on a private class member);
}
@@ -974,7 +977,7 @@
fn_flags |= ZEND_ACC_PUBLIC;
}

-   if ((short_class_name_length == name_len)  
(!memcmp(short_class_name, name, name_len))) {
+   if ((short_class_name_length == name_len)  
(!memcmp(short_class_name, name, name_len))  
!CG(active_class_entry)-constructor) {
CG(active_class_entry)-constructor = 
(zend_function *) CG(active_op_array);
} else if ((function_name-u.constant.value.str.len == 
sizeof(ZEND_CONSTRUCTOR_FUNC_NAME)-1)  
(!memcmp(function_name-u.constant.value.str.val, 
ZEND_CONSTRUCTOR_FUNC_NAME, sizeof(ZEND_CONSTRUCTOR_FUNC_NAME {
CG(active_class_entry)-constructor = 
(zend_function *) CG(active_op_array);
#

regards
marcus


--
--
Marcus Börger - Looking for all sorts of freelance work - just ask...
Did i help you? Consider a gift:
http://www.amazon.de/exec/obidos/wishlist/ho722v0rg1u0
--


Re[2]: [PHP-DEV] Weak references in PHP

2003-02-28 Thread Andi Gutmans
At 08:00 PM 2/28/2003 +0300, Konstantin Knizhnik wrote:
Hello Andi,

The problem is that script can fetch very large number of objects
and all of them doesn't fit in the memory. Lets say we have very
large list of objects (several millions objects or more). And our
script traverse the list and fetch objects one by one and do some
calculations (for example calculates total sum). So at each moment of
time only one persistent object is actually needed. But without weak
references we will have to keep all these millions of objects in
memory.
If you need to go over a list of million objects you are doing something 
wrong :)


Also performance of OODBBS greatly depends on efficient
caching of objects. If we throw away all objects after each request
and has to reload them from the server for each request, then
performance will we awful. It is very significant to be able to cache
most frequently used objects. LRU or some other discipline can be
used for it. But any not depending from the discipline we use we need
some  mechanism which allows to map OPIDs to instances and do not
prevent GC from collecting the objects.
I disagree. JDO performs well and doesn't cache the objects as usually 
pessimistic locking is used with it. Of course, if you want to use 
optimistic locking and the nature of your application allows you to do so 
efficiently the caching might make sense (or it's mainly a read-only app).


That is why almost all languages with implicit memory
deallocation have some kind of weak references. And I was wondered
when do not find such facility in PHP.
Using __destruct method (thanks to George) it may be possible to implement
what I need, but only if object cache is implemented in C (and so is
not visible for PHP garbage collector). So no pure PHP solution exits.
Unfortunately I didn't fins any reference to __destruct method in PHP
manual and do not understand how it works. If I just declare
__destruct method in class, it is not invoked when object is
destructed.
I don't quite understand why you need __destruct() as other systems in Java 
don't use this but I might be completely misunderstanding what you want to do.
Yes, you'll need to do this with a C extension.
Anyway, good luck. I hope the Engine 2 solves some of your problems (such 
as object handles which allow you to always access the same DB object).
Andi

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


[PHP-DEV] PHP5 compilation broken? Patch

2003-02-28 Thread Marco Tabini
Howdy--

Tried to compile today's CVS of PHP5 but I get a compilation error in
main/network.c. Here's a patch that (I think) should take care of the
problem:

Index: main/network.c
===
RCS file: /repository/php4/main/network.c,v
retrieving revision 1.95
diff -u -r1.95 network.c
--- main/network.c  28 Feb 2003 21:03:36 -  1.95
+++ main/network.c  1 Mar 2003 04:31:37 -
@@ -509,7 +509,7 @@
 
break;
 
-#if HAVE_IPV6
+#if HAVE_IPV6  HAVE_INET_NTOP
case AF_INET6:
buf = (char*)inet_ntop(sa-sa_family, ((struct
sockaddr_in6*)sa)-sin6_addr, (char *)abuf, sizeof(abuf));
if (buf) {


Hope I got the right patch format.

Marco


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



Re: [PHP-DEV] PHP5 compilation broken? Patch

2003-02-28 Thread Marco Tabini
Never mind... I had updated the wrong head :(

Sorry!


Mt.

On Fri, 2003-02-28 at 23:33, Marco Tabini wrote:
 Howdy--
 
 Tried to compile today's CVS of PHP5 but I get a compilation error in
 main/network.c. Here's a patch that (I think) should take care of the
 problem:
 
 Index: main/network.c
 ===
 RCS file: /repository/php4/main/network.c,v
 retrieving revision 1.95
 diff -u -r1.95 network.c
 --- main/network.c28 Feb 2003 21:03:36 -  1.95
 +++ main/network.c1 Mar 2003 04:31:37 -
 @@ -509,7 +509,7 @@
  
   break;
  
 -#if HAVE_IPV6
 +#if HAVE_IPV6  HAVE_INET_NTOP
   case AF_INET6:
   buf = (char*)inet_ntop(sa-sa_family, ((struct
 sockaddr_in6*)sa)-sin6_addr, (char *)abuf, sizeof(abuf));
   if (buf) {
 
 
 Hope I got the right patch format.
 
 Marco
-- 

Marco Tabini
President

Marco Tabini  Associates, Inc.
28 Bombay Ave.
Toronto, ON M3H 1B7
Canada

Phone: (416) 630-6202
Fax: (416) 630-5057
Weblog: http://blogs.phparch.com


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



[PHP-DEV] Variables VS constantes

2003-02-28 Thread Cranky
Hello,
I would like to know if in a config file for
example, if it was better to use variables or
constantes ?
Is it a big difference of performance or in
memory used ?

And the same question about the translation of
a site.
I would like to translate my site in many
langages.
So I want to create one file per langage to put
in the text translated in it.
Is it better to use variables, associatives arrays
or constantes ?

Thanks a lot for your reply



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



[PHP-DEV] Re: [PHP] JP Graph

2003-02-28 Thread Jason Sheets
Sounds like a web server configuration problem.  If you are using apache
make sure your httpd.conf is configured to bind to your external IP
address (the default).

Jason
On Thu, 2003-02-27 at 21:17, K wrote:
 Hi all,
 I'm using JPGraph on a localhost for a website opened via a host redirect.
 My problem is that nobody can see the graphs but me ('cause I'm on
 localhost).
 
 Any clues?
 
 Thx.
 
 
 
 
 -- 
 PHP General Mailing List (http://www.php.net/)
 To unsubscribe, visit: http://www.php.net/unsub.php


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