PDA

View Full Version : Help with "robot moderator" : Perl? PHP? cron job?


Sheldon Rampton
08-04-2002, 07:08 PM
Hi there...I'm a newbie to both vBulletin and PHP, but I have a fair amount of experience writing scripts in Perl. I'm trying to integrate an existing weblog with vBulletin, which I've just installed. Our weblog (called "Spin of the Day") can be found at the following URL:
http://www.prwatch.org/spin/index.html

The individual items on the page, such as the story titled "Roping Off the Information Commons," are pulled from a MySQL database using Perl scripts that I wrote some time ago (before installing vBulletin). I want to modify those scripts so that each time I post a new item to "Spin of the Day," the text of the item will be mirrored onto a new thread in one of our vBulletin forums.

I found some model code in PHP that does roughly what I want to do in a "Robot Moderator" thread at the following URL:
https://vborg.vbsupport.ru/showthread.php?s=&threadid=32823

By adapting that code, I've been able to create a PHP program that, when called from my web browser, adds a new thread to a forum. You can see my test postings at the following URL:
http://www.prwatch.org/forum/forumdisplay.php?forumid=19

However, I still have some problems to solve. First of all, my existing scripts are written in Perl, not PHP. Can anyone here tell me how to make Perl and PHP talk to each other?

Secondly, when I call my PHP program from the web browser, , I get a message that says "Please Log in: You are either not a valid administrator or have not logged in." After I go ahead and log in, the PHP program runs as expected, but I want this to run automatically, without requiring manual intervention. The code which requires me to log in appears in "global.php," and if I don't include it, the script doesn't work.

Finally, the person who wrote the "robot moderator" code says she invokes it using a cron job, but I haven't get my cron job to run, and when I try calling the program via telnet, I get a "Permission denied" message.

Advice, anyone?

Admin
08-05-2002, 04:52 AM
You can invoke Perl scripts from PHP using the exec() function:
exec('perl yourScript.pl', $outputArray);
And then you will have the script's output in the $outputArray, where each line is an element in the array.

As for the other way around, I really don't know since I don't know Perl. :)