php-general Digest 18 Feb 2007 01:53:36 -0000 Issue 4631

Topics (messages 248969 through 248986):

counting hyperlink clicks in php
        248969 by: Denis L. Menezes
        248970 by: Brad Bonkoski
        248981 by: Ed Grigoryan
        248983 by: clive

LOL, preg_match still not working.
        248971 by: Beauford
        248972 by: Ray Hauge
        248974 by: Beauford
        248975 by: Steffen Ebermann
        248976 by: Steffen Ebermann
        248977 by: Vahan Yerkanian
        248978 by: Vahan Yerkanian
        248979 by: Gregory Beaver
        248980 by: Steffen Ebermann
        248982 by: Beauford
        248985 by: Peter Lauri

Re: Quick organizational question...
        248973 by: Mike Shanley

Catch STDERR
        248984 by: Peter Lauri

PHP Startup: Unable to load dynamic library
        248986 by: Noah

Administrivia:

To subscribe to the digest, e-mail:
        [EMAIL PROTECTED]

To unsubscribe from the digest, e-mail:
        [EMAIL PROTECTED]

To post to the list, e-mail:
        [email protected]


----------------------------------------------------------------------
--- Begin Message ---
Dear friends.

I have a site where I have news headers. I wish to count the clicks on the 
news headers so that I can see how many times each of the the news has been 
viewed. This way I can show the "most viewed" news.

Can one of you please advise hwo this can be done?

Thanks
Denis 

--- End Message ---
--- Begin Message ---
Denis L. Menezes wrote:
Dear friends.

I have a site where I have news headers. I wish to count the clicks on the news headers so that I can see how many times each of the the news has been viewed. This way I can show the "most viewed" news.

Can one of you please advise hwo this can be done?

Thanks
Denis
I think the best way to do this would be to set an onClick (Javascript) event handler for each of the links, and then use AJAX style stuff to send the information to PHP on the server side, then PHP can log the link that was clicked, and keep track of the most clicked links.
-B

--- End Message ---
--- Begin Message ---
Hello Brad,

Saturday, February 17, 2007, 4:22:22 PM, you wrote:

> Denis L. Menezes wrote:
>> Dear friends.
>>
>> I have a site where I have news headers. I wish to count the clicks on the
>> news headers so that I can see how many times each of the the news has been
>> viewed. This way I can show the "most viewed" news.
>>
>> Can one of you please advise hwo this can be done?
>>
>> Thanks
>> Denis 
>>
>>   
> I think the best way to do this would be to set an onClick (Javascript)
> event handler for each of the links, and then use AJAX style stuff to
> send the information to PHP on the server side, then PHP can log the
> link that was clicked, and keep track of the most clicked links.
> -B


Another way to do this is to take the user to a page that would
identify the clicked link (by ID, for example), store the visits data
to a database or a text file and then redirect to the corresponding
news. So, such link might look like this:
<a href="http://www.news.com/redirect.php?news_id=150";>read news</a>

Hope this helps.

Ed

--- End Message ---
--- Begin Message ---
Denis L. Menezes wrote:
Dear friends.

I have a site where I have news headers. I wish to count the clicks on the news headers so that I can see how many times each of the the news has been viewed. This way I can show the "most viewed" news.

Can one of you please advise hwo this can be done?

add to each news item like &clicked=1 and in the page where you display the news item, checked if clicked exists, if does write it to a file or a db (obviously with the news item id), if your using mysql, the heap table type is quite useful, you will however need to move the info to a more permanent table every x amount of clicks.

clive

--- End Message ---
--- Begin Message ---
Hi,

I previously had some issues with preg_match and many of you tried to help,
but the same  problem still exists. Here it is again, if anyone can explain
to me how to get this to work it would be great - otherwise I'll just remove
it as I just spent way to much time on this.

Thanks

Here's the code.

        if(empty($comment)) { $formerror['comment'] = nocomments; 
        }
        elseif(!preg_match('|[EMAIL PROTECTED]&*();:_.\\\\ /\t-]+$|',
$comment)) {
                                $formerror['comment'] = invalidchars;
        }       

This produces an error, which I believe it should not.

Testing 12345. This is a test of the emergency broadcast system.

WAKE UP!!!!!!

--- End Message ---
--- Begin Message --- Maybe you just copied it wrong, but nocomments and invalidchars are not quoted, or they're constants.

I don't think you have to, but you might need to escape some of the characters (namely * and .) in your regex. It's been a while, so I'd have to look it up.

What's the error you are getting?

Ray Hauge
Primate Applications


Beauford wrote:
Hi,

I previously had some issues with preg_match and many of you tried to help,
but the same  problem still exists. Here it is again, if anyone can explain
to me how to get this to work it would be great - otherwise I'll just remove
it as I just spent way to much time on this.

Thanks

Here's the code.

if(empty($comment)) { $formerror['comment'] = nocomments; }
        elseif(!preg_match('|[EMAIL PROTECTED]&*();:_.\\\\ /\t-]+$|',
$comment)) {
                                $formerror['comment'] = invalidchars;
        }       

This produces an error, which I believe it should not.

Testing 12345. This is a test of the emergency broadcast system.

WAKE UP!!!!!!


--- End Message ---
--- Begin Message ---
I've been over this a thousand times with various users on this list and
escaping this and escaping that just doesn't matter.

The error is that it thinks valid characters are invalid. In the case of the
example I included, the ! and the period are invalid, which they should not
be.

The nocomments and invalidchars are constants.

Thanks

> -----Original Message-----
> From: Ray Hauge [mailto:[EMAIL PROTECTED] 
> Sent: February 17, 2007 9:45 AM
> To: Beauford
> Cc: PHP
> Subject: Re: [PHP] LOL, preg_match still not working.
> 
> Maybe you just copied it wrong, but nocomments and 
> invalidchars are not 
> quoted, or they're constants.
> 
> I don't think you have to, but you might need to escape some of the 
> characters (namely * and .) in your regex.  It's been a while, so I'd 
> have to look it up.
> 
> What's the error you are getting?
> 
> Ray Hauge
> Primate Applications
> 
> 
> Beauford wrote:
> > Hi,
> > 
> > I previously had some issues with preg_match and many of 
> you tried to help,
> > but the same  problem still exists. Here it is again, if 
> anyone can explain
> > to me how to get this to work it would be great - otherwise 
> I'll just remove
> > it as I just spent way to much time on this.
> > 
> > Thanks
> > 
> > Here's the code.
> > 
> >     if(empty($comment)) { $formerror['comment'] = nocomments; 
> >     }
> >     elseif(!preg_match('|[EMAIL PROTECTED]&*();:_.\\\\ /\t-]+$|',
> > $comment)) {
> >                             $formerror['comment'] = invalidchars;
> >     }       
> > 
> > This produces an error, which I believe it should not.
> > 
> > Testing 12345. This is a test of the emergency broadcast system.
> > 
> > WAKE UP!!!!!!
> > 
> 
> -- 
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
> 
> 
> 

--- End Message ---
--- Begin Message ---
As far as I tested, the regular expression works how it is
intended to work.

Maybe this a touch easier to read line do it for you:

  elseif (preg_match('|[EMAIL PROTECTED]&*();:_.\\\\ /\t-]|', $comment))



On Sat, Feb 17, 2007 at 09:27:59AM -0500, Beauford wrote:
> Hi,
> 
> I previously had some issues with preg_match and many of you tried to help,
> but the same  problem still exists. Here it is again, if anyone can explain
> to me how to get this to work it would be great - otherwise I'll just remove
> it as I just spent way to much time on this.
> 
> Thanks
> 
> Here's the code.
> 
>       if(empty($comment)) { $formerror['comment'] = nocomments; 
>       }
>       elseif(!preg_match('|[EMAIL PROTECTED]&*();:_.\\\\ /\t-]+$|',
> $comment)) {
>                               $formerror['comment'] = invalidchars;
>       }       
> 
> This produces an error, which I believe it should not.
> 
> Testing 12345. This is a test of the emergency broadcast system.
> 
> WAKE UP!!!!!!
> 
> -- 
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
> 

--- End Message ---
--- Begin Message ---
Addendum: I encountered a problem when the string contains linebreaks. Maybe
adding \n\r into the brackets fixes your problem.


On Sat, Feb 17, 2007 at 09:27:59AM -0500, Beauford wrote:
> Hi,
> 
> I previously had some issues with preg_match and many of you tried to help,
> but the same  problem still exists. Here it is again, if anyone can explain
> to me how to get this to work it would be great - otherwise I'll just remove
> it as I just spent way to much time on this.
> 
> Thanks
> 
> Here's the code.
> 
>       if(empty($comment)) { $formerror['comment'] = nocomments; 
>       }
>       elseif(!preg_match('|[EMAIL PROTECTED]&*();:_.\\\\ /\t-]+$|',
> $comment)) {
>                               $formerror['comment'] = invalidchars;
>       }       
> 
> This produces an error, which I believe it should not.
> 
> Testing 12345. This is a test of the emergency broadcast system.
> 
> WAKE UP!!!!!!
> 
> -- 
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
> 

--- End Message ---
--- Begin Message --- Are you running under FreeBSD 6.2 and/or upgraded recently from 5.2.1 to 5.2.2?

I had the same problem on FreeBSD 6.2, with php5 installed from ports collection after I portupgraded to 5.2.1.

For me it appeared to be some kind weird misconfiguration problem that happened during the portupgrade...

I had to:

pkg_delete -rv "php5*"
rm -rf /var/db/ports/php5*
rm -rf /usr/local/lib/*
cd /usr/ports/lang/php5
make install clean
cd /usr/ports/lang/php5-extensions
make install clean

A bit harsh, but all of the preg_* errors disappeared since then.

HTH,
Vahan


Steffen Ebermann wrote:
Addendum: I encountered a problem when the string contains linebreaks. Maybe
adding \n\r into the brackets fixes your problem.


On Sat, Feb 17, 2007 at 09:27:59AM -0500, Beauford wrote:
Hi,

I previously had some issues with preg_match and many of you tried to help,
but the same  problem still exists. Here it is again, if anyone can explain
to me how to get this to work it would be great - otherwise I'll just remove
it as I just spent way to much time on this.

Thanks

Here's the code.

if(empty($comment)) { $formerror['comment'] = nocomments; }
        elseif(!preg_match('|[EMAIL PROTECTED]&*();:_.\\\\ /\t-]+$|',
$comment)) {
                                $formerror['comment'] = invalidchars;
        }       

This produces an error, which I believe it should not.

Testing 12345. This is a test of the emergency broadcast system.

WAKE UP!!!!!!

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



--- End Message ---
--- Begin Message ---
Correcting myself before my reply damages someone's box:

Vahan Yerkanian wrote:
rm -rf /usr/local/lib/*

This indeed should be:

rm -rf /usr/local/lib/php/*

instead ;)

--- End Message ---
--- Begin Message ---
Beauford wrote:
> Hi,
> 
> I previously had some issues with preg_match and many of you tried to help,
> but the same  problem still exists. Here it is again, if anyone can explain
> to me how to get this to work it would be great - otherwise I'll just remove
> it as I just spent way to much time on this.
> 
> Thanks
> 
> Here's the code.
> 
>       if(empty($comment)) { $formerror['comment'] = nocomments; 
>       }
>       elseif(!preg_match('|[EMAIL PROTECTED]&*();:_.\\\\ /\t-]+$|',
> $comment)) {
>                               $formerror['comment'] = invalidchars;
>       }       
> 
> This produces an error, which I believe it should not.
> 
> Testing 12345. This is a test of the emergency broadcast system.
> 
> WAKE UP!!!!!!

Hi,

Your sample text contains newlines.  If you wish to allow newlines,
instead of " \t" you should use the whitespace selector "\s"

<?php
$comment = 'Testing 12345. This is a test of the emergency broadcast system.

WAKE UP!!!!!!';
if(!preg_match('|[EMAIL PROTECTED]&*();:_.\\\\\s/-]+$|', $comment)) {
    echo 'oops';
} else {
    echo 'ok';
}
?>

Try that code sample, and you'll see that it says "ok"

What exactly are you trying to accomplish with this preg_match()?  What
exactly are you trying to filter out?  I understand you want to
eliminate "invalid characters" but why are they invalid?  I ask because
there may be a simpler way to solve the problem, if you can explain what
the problem is.

Thanks,
Greg

--- End Message ---
--- Begin Message ---
It's 6.2 but PHP 4.4.4.

Basically, I'm not getting any error. The expression just don't match. I
don't know if it should or not.

--- End Message ---
--- Begin Message ---
I am running PHP 4.4.4 on Slackware 10. 

> -----Original Message-----
> From: Vahan Yerkanian [mailto:[EMAIL PROTECTED] 
> Sent: February 17, 2007 11:58 AM
> To: [email protected]
> Subject: Re: [PHP] LOL, preg_match still not working.
> 
> Are you running under FreeBSD 6.2 and/or upgraded recently 
> from 5.2.1 to 
> 5.2.2?
> 
> I had the same problem on FreeBSD 6.2, with php5 installed from ports 
> collection after I portupgraded to 5.2.1.
> 
> For me it appeared to be some kind weird misconfiguration 
> problem that 
> happened during the portupgrade...
> 
> I had to:
> 
> pkg_delete -rv "php5*"
> rm -rf /var/db/ports/php5*
> rm -rf /usr/local/lib/*
> cd /usr/ports/lang/php5
> make install clean
> cd /usr/ports/lang/php5-extensions
> make install clean
> 
> A bit harsh, but all of the preg_* errors disappeared since then.
> 
> HTH,
> Vahan
> 
> 
> Steffen Ebermann wrote:
> > Addendum: I encountered a problem when the string contains 
> linebreaks. Maybe
> > adding \n\r into the brackets fixes your problem.
> > 
> > 
> > On Sat, Feb 17, 2007 at 09:27:59AM -0500, Beauford wrote:
> >> Hi,
> >>
> >> I previously had some issues with preg_match and many of 
> you tried to help,
> >> but the same  problem still exists. Here it is again, if 
> anyone can explain
> >> to me how to get this to work it would be great - 
> otherwise I'll just remove
> >> it as I just spent way to much time on this.
> >>
> >> Thanks
> >>
> >> Here's the code.
> >>
> >>    if(empty($comment)) { $formerror['comment'] = nocomments; 
> >>    }
> >>    elseif(!preg_match('|[EMAIL PROTECTED]&*();:_.\\\\ /\t-]+$|',
> >> $comment)) {
> >>                            $formerror['comment'] = invalidchars;
> >>    }       
> >>
> >> This produces an error, which I believe it should not.
> >>
> >> Testing 12345. This is a test of the emergency broadcast system.
> >>
> >> WAKE UP!!!!!!
> >>
> >> -- 
> >> PHP General Mailing List (http://www.php.net/)
> >> To unsubscribe, visit: http://www.php.net/unsub.php
> >>
> > 
> 
> -- 
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
> 
> 
> 

--- End Message ---
--- Begin Message ---
Haha,

This reminds me of a story about some IRC chat somewhere where someone was
asking how to control a media player thru the command line. It ended up with
him executing rm -rf / as root and then complaining that the machine was
slow when he executed it, and then he disappeared from the IRC... I wonder
why? :)

Best regards,
Peter Lauri

www.dwsasia.com - company web site
www.lauri.se - personal web site
www.carbonfree.org.uk - become Carbon Free



-----Original Message-----
From: Vahan Yerkanian [mailto:[EMAIL PROTECTED] 
Sent: Saturday, February 17, 2007 7:02 PM
To: [email protected]
Subject: Re: [PHP] LOL, preg_match still not working.

Correcting myself before my reply damages someone's box:

Vahan Yerkanian wrote:
> rm -rf /usr/local/lib/*

This indeed should be:

rm -rf /usr/local/lib/php/*

instead ;)

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

--- End Message ---
--- Begin Message ---
Thanks very much Pete! Sound advice!

Peter Lauri wrote:
Hi,

No matter the size of a project using includes and config files are always a
good way to go.
--
Mike Shanley

~you are almost there~

"A new eye opens on March 5." -Omniversalism.com

--- End Message ---
--- Begin Message ---
Hi,

I am executing exec('some cool command', $stdout, $exitcode);

That is fine. I get what I in the beginning wanted. However, now I need to
catch the STDERR that the command is generating as well. Some of you might
tell me to redirect STDERR to STDOUT, but that is not possible as I need to
use the STDOUT as is to automate a process.

I know I can do fwrite(STDERR, 'Output some error\n');

So could I fread(STDERR, SOMESIZE)?

Is there anyone with experience of best way of doing this? Should I maybe
use proc_open or something similar and then write it to a file, and then
read that file? Hrm, doesn’t make any sense to do that.

Best regards,
Peter Lauri
 
www.dwsasia.com - company web site
www.lauri.se - personal web site
www.carbonfree.org.uk - become Carbon Free

--- End Message ---
--- Begin Message ---

Hi,

I am running apache-2.2.4 and php5-5.2.1-2
and I am find some php related errors accumulating in /var/log/messages - look below.

I've rebuilt php5 and apache2.2.4 and still the same issues. what else could be going on here.

also 'apache restart' is fine but 'apache graceful' core dumps.

any clues,

Noah


here they are:

Feb 17 17:07:03 typhoon httpd: PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20060613-debug/ftp.so' - Cannot open &quot;/usr/local/lib/php/20060613-debug/ftp.so&quot; in Unknown on line 0 Feb 17 17:07:03 typhoon httpd: PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20060613-debug/ldap.so' - Cannot open &quot;/usr/local/lib/php/20060613-debug/ldap.so&quot; in Unknown on line 0
--- End Message ---

Reply via email to