From owner-freebsd-questions@FreeBSD.ORG Thu Mar 24 23:00:51 2011 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 18FCF106564A for ; Thu, 24 Mar 2011 23:00:51 +0000 (UTC) (envelope-from kline@thought.org) Received: from thought.org (plato.thought.org [209.180.213.209]) by mx1.freebsd.org (Postfix) with ESMTP id E1E0B8FC24 for ; Thu, 24 Mar 2011 23:00:50 +0000 (UTC) Received: by thought.org (Postfix, from userid 1001) id 0510DE806ED; Thu, 24 Mar 2011 16:00:49 -0700 (PDT) Date: Thu, 24 Mar 2011 16:00:49 -0700 From: Gary Kline To: Fr?d?ric Perrin Message-ID: <20110324230049.GB31958@thought.org> References: <20110323164504.GA25317@thought.org> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-Organization: Thought Unlimited. Public service Unix since 1986. X-Of_Interest: With 24++ years of service to the Unix community. User-Agent: Mutt/1.5.20 (2009-06-14) Cc: freebsd-questions@freebsd.org Subject: Re: why does this simple counter fail? X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Mar 2011 23:00:51 -0000 On Wed, Mar 23, 2011 at 07:11:15PM +0100, Fr?d?ric Perrin wrote: > Gary Kline writes: > > Can any of you php hackers tell me why this simple self-hacked > > counter bomb? > > As others said, what does 'this simple counter bomb' means? > > > $fp = fopen($directory.$file, "r+"); > > flock($fp, 1); > > You want an exclusive lock (LOCK_EX, which is 2 is you use some ancient > PHP), not a shared lock. > > When updating the file: > > fputs($fp, $count); > > fputs($fp, "\n"); > > fputs($fp, $file); > > Why do you feel the need to store the filename inside the file itself? > You don't seem to need it after. $file is passed from the calling php file. index.php is by-hand set to $file='index'; and so on. Because of my shoulder/typing woes, it was great that I got clued in above by Brad's thought that perhaos there were mis-matched "" tags. A simply recursive grepping found out that it some places I had " instead of " . Adding the "php" fixed everything. Finally, you're right; this really, really is ancient php. Somthing i found pre-2004 and hacked until it worked. The counter is missings lots of features, but I'll fix that pretty soon. thanks to everybody , > > -- > Frédéric Perrin -- http://tar-jx.bz > > _______________________________________________ > freebsd-questions@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-questions > To unsubscribe, send any mail to "freebsd-questions-unsubscribe@freebsd.org" -- Gary Kline kline@thought.org http://www.thought.org Public Service Unix Journey Toward the Dawn, E-Book: http://www.thought.org The 7.98a release of Jottings: http://jottings.thought.org