php-general Digest 4 Feb 2003 13:44:09 -0000 Issue 1863

Topics (messages 134199 through 134258):

list files in a dictory and its subdirectories
        134199 by: Tomas Vorobjov
        134202 by: Jason Sheets

Re: Help with classes (oop)
        134200 by: Maxim Maletsky

Re: Bi-weekly pay period
        134201 by: Jason Sheets
        134258 by: bob parker

Re: PHP Sessions Not Saving
        134203 by: Greg Donald
        134212 by: Jason Wong
        134218 by: nick.hostau.net
        134236 by: Jonathan Wright

Knowing what page u came from...
        134204 by: Mr. BuNgL3
        134205 by: Leif K-Brooks

Using 404 instead of mod_rewrite
        134206 by: Dennis Gearon
        134214 by: Peter Janett
        134215 by: Dennis Gearon

Re: php/mysql connection
        134207 by: John W. Holmes

exec
        134208 by: Nick Kordas  -: Wildthing Communications

Re: Etiquette
        134209 by: Philip Olson
        134210 by: Luke Woollard
        134230 by: Götz Lohmsnn

Delete From Array
        134211 by: Remon Redika
        134216 by: Remon Redika

Thanks for help with classes
        134213 by: Leonard Burton

Which link was selected?
        134217 by: Karina S
        134219 by: Leonard Burton
        134225 by: Götz Lohmsnn
        134226 by: Götz Lohmsnn

Socket error connecting to mySQL
        134220 by: Bryan Lipscy
        134221 by: Jason Wong
        134222 by: Nick Kordas  -: Wildthing Communications
        134228 by: Götz Lohmsnn

php3 + HTTP_POST_FILES
        134223 by: electroteque

Re: POST_with_PHP_--_please_help_!
        134224 by: Krzysztof Dziekiewicz

Re: How to compare 2 strings
        134227 by: Krzysztof Dziekiewicz

Re: safe mode problem
        134229 by: Marek Kilimajer

restricting acces to files
        134231 by: Shams
        134232 by: Jason Wong
        134235 by: Götz Lohmsnn
        134240 by: Götz Lohmsnn

Re: Make an MDB File on the Fly
        134233 by: hboyce.eab.co.uk

Security question with PHP on Unix / Linux.
        134234 by: Ananth Kesari

Re: How to check for refresh in PHP
        134237 by: Götz Lohmsnn

Problem with include PHP 4.3.0
        134238 by: Jean-Pierre Gallou
        134243 by: Götz Lohmsnn
        134252 by: Jean-Pierre Gallou
        134256 by: Götz Lohmsnn

Variable objects?
        134239 by: Leif K-Brooks
        134244 by: Götz Lohmsnn

include_path problem on RH 8
        134241 by: Paul
        134247 by: Götz Lohmsnn
        134249 by: Paul
        134255 by: Götz Lohmsnn

Converting links in strings
        134242 by: Randum Ian
        134245 by: Götz Lohmsnn

Getting key of value added to array with []?
        134246 by: Leif K-Brooks
        134250 by: Götz Lohmsnn
        134254 by: John W. Holmes

mail function
        134248 by: Dale
        134251 by: Götz Lohmsnn

Re: tracking bulk email
        134253 by: Lowell Allen

Re: authentication
        134257 by: ed.home.homes2see.com

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 ---
hey!

this is the code I'm using to get into array all filenames in a directory:

----------------------------------------------------------------
$mydir = mydir //the directory name
$output_file = fopen($data_file, "w");
$begin = "<?
\$files_name = array(";

fwrite($output_file, $begin);

$output_file = fopen($data_file, "w");
if ($handle = opendir('./$mydir/')) {
    while (false !== ($filename = readdir($handle))) {
        if ($file != "." && $filename != "..") { //&& !is_dir($filename)
can be added
            $element = "\"$filename\",";
            fwrite($output_file, $element);
        }
    }
    closedir($handle);
}
fwrite($output_file,"\"\");\r\n");
fwrite($output_file, "?>");
fclose($output_file);

chmod($output_file, 0777); //to preview

echo "the list has been succesfully created";
----------------------------------------------------------------

now, how can I make the script to look into subdirectories of ./$mydir/
and output also those filenames into the same or another array?

thank you
--- End Message ---
--- Begin Message ---
An easy way would be to to convert your code to a function and use
recursion with an is_dir conditional.

Here is a quick example, there are also a few examples in the user notes
at the PHP manual for opendir or readdir.

function lsdir($dir) {
        if ($handle = opendir($dir)) {
                while false !==($filename = readdir($handle)) {
                        if (is_dir($dir . '/' . $filename)) {
                                lsdir($dir . '/' . $filename);
                        } elseif (is_file($dir . '/' . $filename) && $filename != '.' 
&&
$filename != '..') {
                                // file display code here
                        }
                }

                closedir($dir);
        }
}               

I did not run the above code, just typed it for an example so the code
itself may or may not work but the concept will work.

Jason
On Mon, 2003-02-03 at 17:14, Tomas Vorobjov wrote:
> hey!
> 
> this is the code I'm using to get into array all filenames in a directory:
> 
> ----------------------------------------------------------------
> $mydir = mydir //the directory name
> $output_file = fopen($data_file, "w");
> $begin = "<?
> \$files_name = array(";
> 
> fwrite($output_file, $begin);
> 
> $output_file = fopen($data_file, "w");
> if ($handle = opendir('./$mydir/')) {
>     while (false !== ($filename = readdir($handle))) {
>         if ($file != "." && $filename != "..") { //&& !is_dir($filename)
> can be added
>             $element = "\"$filename\",";
>             fwrite($output_file, $element);
>         }
>     }
>     closedir($handle);
> }
> fwrite($output_file,"\"\");\r\n");
> fwrite($output_file, "?>");
> fclose($output_file);
> 
> chmod($output_file, 0777); //to preview
> 
> echo "the list has been succesfully created";
> ----------------------------------------------------------------
> 
> now, how can I make the script to look into subdirectories of ./$mydir/
> and output also those filenames into the same or another array?
> 
> thank you
> 
> -- 
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php

--- End Message ---
--- Begin Message ---
When you name a function in the class with the same name as the class
itself, this function gets automatically executed upon defining the
object (class). this is called `constructor'.

in your very case, this is the function first, which requires two
parameters to be passed to it. You need to create the instance (define)
your class with already passing parameters to it. Like this:

$obj = new First($par1, $par2);

The next, you don't need to call $obj->first(..., ...); once again, as
you just did it one line above.

-- 
Maxim Maletsky
[EMAIL PROTECTED]


On Mon, 3 Feb 2003 14:27:36 -0500 "Leonard Burton" <[EMAIL PROTECTED]> wrote:

> Greetings,
> 
>       I am trying to figure out using classes.  I have read and read and read
> about them but still cannot figure them new fangled things out.  Could
> someone please alter this snippet just a bit so it would be a correct test
> script with a call to it?
> 
> When  I run the script I get this in my browser <<
> 
> Warning: Missing argument 1 for first() in /usr/~~~~~~~~~~~~~index.php on
> line 8
> Warning: Missing argument 2 for first() in /usr/~~~~~~~~~~~~~~~~~/index.php
> on line 8
> 35chris
> >>
> 
> As you see it does print the output.  What am I doing wrong?
> 
> Thanks,
> 
> Leonard
> [EMAIL PROTECTED]
> 
> 
> 
> <? php;
> class first
> {
>         var $age;
>         var $name;
> 
>         function first($age, $name)
>         {
>                 return $age.$name;
>         }
> }
> 
> //main script
> $first = new first;
> $test=$first->first(35, "chris");
> 
> print $test;
> 
> 
> -- 
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
> 

--- End Message ---
--- Begin Message ---
This code *should* do something similar to what Phillip suggested.  It
will figure out the correct Sunday based on whether the week is odd or
not, then it will add the correct number of days to get to either next
Saturday or the Saturday after next Saturday.

<?php
if ((date('W') % 2) == 0) {
// week is even, payday is last sunday, find saturday after next
        $payday = date('m/d/y', strtotime('last Sunday')+1123200);
        print 'week is even, pay period is ' . $payday;
} else {
// week is odd, payday is the sunday before last, find next sat.
        $payday = date('m/d/y', strtotime('last Sunday') + 518400);
        print 'week is odd, pay period is ' . $payday;
}
?>

On Mon, 2003-02-03 at 18:15, Philip Hallstrom wrote:
> > I'm writing a quick little thing to act as a time clock since people are
> > writing out by hand and it's not so accurate. It's basically click a button
> > to clock in and click a button to clock out.
> >
> > What I also want to do is create a report (well I've already created the
> > report) but I want to limit it to the current pay period. Our pay periods
> > are biweekly. I was trying to think of a smart way to have php figure out
> > what the current pay period is and I'm having a hard time figuring out if
> > this is even possible or should I just tell it a years worth of pay period
> > ranges for now.
> >
> > I figure something like, if the week # is even, use this past Sunday as the
> > start date. If the week # is odd use the Sunday of the week before. Then
> > figure out what date is 2 saturdays after whatever Sunday was selected.
> 
> That seems very doable... look at the date() function, in particular the
> options to return week number, day of week (0-6), etc.  Then it's just
> some conditionals, and substractions to get back to the right sunday, and
> then add 14 (or is it 13?) days to get the right saturday.
> 
> Just remember to do it all the math as the number of seconds since 1970
> (look at time() and strtotime()) and you'll be fine.
> 
> -philip
> 
> 
> -- 
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php

--- End Message ---
--- Begin Message ---
On Tue, 4 Feb 2003 11:17, Sarah Heffron wrote:
> I'm writing a quick little thing to act as a time clock since people are
> writing out by hand and it's not so accurate. It's basically click a button
> to clock in and click a button to clock out.
>
> What I also want to do is create a report (well I've already created the
> report) but I want to limit it to the current pay period. Our pay periods
> are biweekly. I was trying to think of a smart way to have php figure out
> what the current pay period is and I'm having a hard time figuring out if
> this is even possible or should I just tell it a years worth of pay period
> ranges for now.
>
> I figure something like, if the week # is even, use this past Sunday as the
> start date. If the week # is odd use the Sunday of the week before. Then
> figure out what date is 2 saturdays after whatever Sunday was selected.
>
> Any assistance appreciated.
>
> Sarah

Quite commonly back in the days when I wrote the odd payroll system (not in 
php though I have one such started), we used to simply create a table with 
the start and end dates for each fortnight.

Not clever, just a gross kludge, but nothing ever went wrong with it.

It also dealt with the Australian Income Tax complications which go as 
follows:

1. Income tax for employees is levied on the wages earned in cash through the 
year, there is no account of earnings accrued through an incomplete pay 
period at the end of the financial year.

2. Every 11 years a person on fortnightly pay will have 27 pays in the year 
and consequently higher earnings for that year. The ATO require that the 
fortnightly pay as you go deductions be adjusted to take that into account.

Complicated? If bullshit was weaponry the Australian Govt would have disarmed 
Iraq alone years ago.

Bob

--- End Message ---
--- Begin Message ---
> During the ./configure part of the installation, PHP checks for
> sendmail, but only in /sbin/sendmail. If it doesn't find it, the
> function mail() isn't complied in.
> 
> I just get 'call to undefined function mail()' in x/y.php on z.

Ok, make your link this way then:

ln -s /usr/sbin/sendmail /sbin/sendmail 

--
Greg Donald


--- End Message ---
--- Begin Message ---
On Tuesday 04 February 2003 06:30, Jonathan Wright wrote:
> At around Mon, Feb 03, 2003 at 04:20:03PM -0600, Greg Donald constructed the 
following notation:
> > On Mon, 3 Feb 2003, Jonathan Wright wrote:
> > >Aside from this, PHP's running like a dream. I haven't had a single
> > >problem (other than mail() not working, but I found that's because I use
> > >/usr/sbin/sendmail, not /sbin/sendmail, so I'll just need to recompile).
> >
> > Recompile, why?  How about a link?
> >
> > ln -s /sbin/sendmail /usr/sbin/sendmail
>
> During the ./configure part of the installation, PHP checks for
> sendmail, but only in /sbin/sendmail. If it doesn't find it, the
> function mail() isn't complied in.
>
> I just get 'call to undefined function mail()' in x/y.php on z.

But according to the manual configure should check both locations?

-- 
Jason Wong -> Gremlins Associates -> www.gremlins.biz
Open Source Software Systems Integrators
* Web Design & Hosting * Internet & Intranet Applications Development *
------------------------------------------
Search the list archives before you post
http://marc.theaimsgroup.com/?l=php-general
------------------------------------------
/*
Romeo wasn't bilked in a day.
                -- Walt Kelly, "Ten Ever-Lovin' Blue-Eyed Years With Pogo"
*/

--- End Message ---
--- Begin Message ---
This is a system automated E-Mail reply.

If you email is a request for support then please visit the below URL and lodge 
your support request.
If you cannot access the below URL, then please email [EMAIL PROTECTED] for prompt 
support.
http://www.wildcomm.net/support.php

If this is not a support related E-Mail then disregard this E-Mail.

Regards.
Support Response
Wildthing Communications 
Mob: 0421 556847
PO Box 1841
SUNSHINE PLAZA
Maroochydore
QLD 4558
http://www.wildcomm.net
ICQ# 64851373




--- End Message ---
--- Begin Message ---
At around Tue, Feb 04, 2003 at 02:06:35PM +0800, Jason Wong constructed the following 
notation:
> > >
> > > Recompile, why?  How about a link?
> > >
> > > ln -s /sbin/sendmail /usr/sbin/sendmail
> >
> > During the ./configure part of the installation, PHP checks for
> > sendmail, but only in /sbin/sendmail. If it doesn't find it, the
> > function mail() isn't complied in.
> >
> > I just get 'call to undefined function mail()' in x/y.php on z.
> 
> But according to the manual configure should check both locations?

I can't remember where i saw it (i think it was on a mailing list), but
someone said it'll only check /sbin/sendmail, which seams to be the
case. sendmail.path is set to '/usr/sbin/sendmail' in php.ini, but that
doesn't has an effect.

well, either way it hasn't been compiled in so a recompile will be
needed. it's only a 10 minute job anyway. 

-- 
jonathan wright          [EMAIL PROTECTED] | www.djnauk.co.uk
--
life has no meaning unless we can enjoy what we've been given
--- End Message ---
--- Begin Message ---
Hi again...
There is any way to know what page we came from in php?
I want to make a clause if i came from certain page in my web site...

Thanks


--- End Message ---
--- Begin Message ---
$_SERVER['HTTP_REFERER']

Mr. BuNgL3 wrote:

Hi again...
There is any way to know what page we came from in php?
I want to make a clause if i came from certain page in my web site...

Thanks




--
The above message is encrypted with double rot13 encoding.  Any unauthorized attempt to decrypt it will be prosecuted to the full extent of the law.



--- End Message ---
--- Begin Message ---
When one writes a 404 document in PHP, how do I get access to all the
POST, GET, COOKIE, URL, protocol, Languages, etc. that the originally
requested document came in with?
-- 
-- 

Carpe Dancem ;-)
-----------------------------------------------------------------
Remember your friends while they are alive
-----------------------------------------------------------------
                                         Sincerely, Dennis Gearon
--- End Message ---
--- Begin Message ---
Use a relative path in your ErrorDocument line, instead of a full url, and
you'll get what you are looking for.

ErrorDocument 404 /error.php

instead of:
ErrorDocument 404 http://www.yourdomain.com/error.php

Note that even though error.php is in your root (or wherever it is), that it
can be called from anywhere in your web tree, so paths like
../images/img.gif won't work if a 404 is thrown in
/directory/subdirectory/nothersubdirectory

HTH,

Peter Janett

New Media One Web Services
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
New Upgrades Are Now Live!!!
Windows 2000 accounts - Cold Fusion 5.0 and Imail 7.1
Sun Solaris (UNIX) accounts - PHP 4.1.2, mod_perl/1.25,
Stronghold/3.0 (Apache/1.3.22), MySQL 3.23.43
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PostgreSQL coming soon!

http://www.newmediaone.net
webmaster "at" newmediaone.net
(303)828-9882



----- Original Message -----
From: "Dennis Gearon" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Monday, February 03, 2003 8:31 PM
Subject: [PHP] Using 404 instead of mod_rewrite


> When one writes a 404 document in PHP, how do I get access to all the
> POST, GET, COOKIE, URL, protocol, Languages, etc. that the originally
> requested document came in with?
> --
> --
>
> Carpe Dancem ;-)
> -----------------------------------------------------------------
> Remember your friends while they are alive
> -----------------------------------------------------------------
>          Sincerely, Dennis Gearon
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>


--- End Message ---
--- Begin Message ---
So '/error.php' is in the DOCUMENT ROOT, not the server root, correct?
And I will get all the CGI environment available to the original
requested document?

Peter Janett wrote:
> 
> Use a relative path in your ErrorDocument line, instead of a full url, and
> you'll get what you are looking for.
> 
> ErrorDocument 404 /error.php
> 
> instead of:
> ErrorDocument 404 http://www.yourdomain.com/error.php
> 
> Note that even though error.php is in your root (or wherever it is), that it
> can be called from anywhere in your web tree, so paths like
> ../images/img.gif won't work if a 404 is thrown in
> /directory/subdirectory/nothersubdirectory
> 
> HTH,
> 
> Peter Janett
> 
> New Media One Web Services
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> New Upgrades Are Now Live!!!
> Windows 2000 accounts - Cold Fusion 5.0 and Imail 7.1
> Sun Solaris (UNIX) accounts - PHP 4.1.2, mod_perl/1.25,
> Stronghold/3.0 (Apache/1.3.22), MySQL 3.23.43
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> PostgreSQL coming soon!
> 
> http://www.newmediaone.net
> webmaster "at" newmediaone.net
> (303)828-9882
> 
> ----- Original Message -----
> From: "Dennis Gearon" <[EMAIL PROTECTED]>
> To: <[EMAIL PROTECTED]>
> Sent: Monday, February 03, 2003 8:31 PM
> Subject: [PHP] Using 404 instead of mod_rewrite
> 
> > When one writes a 404 document in PHP, how do I get access to all the
> > POST, GET, COOKIE, URL, protocol, Languages, etc. that the originally
> > requested document came in with?
> > --
> > --
> >
> > Carpe Dancem ;-)
> > -----------------------------------------------------------------
> > Remember your friends while they are alive
> > -----------------------------------------------------------------
> >          Sincerely, Dennis Gearon
> >
> > --
> > PHP General Mailing List (http://www.php.net/)
> > To unsubscribe, visit: http://www.php.net/unsub.php
> >

-- 

Carpe Dancem ;-)
-----------------------------------------------------------------
Remember your friends while they are alive
-----------------------------------------------------------------
                                         Sincerely, Dennis Gearon
--- End Message ---
--- Begin Message ---
> John,
> I was under the impression that the mysql database had as default user
> when
> installed:
> ..............
> anonymous
> root
> ................

The last time I installed MySQL it had four default users, I think. 

> And that the _anonymous_ user could only create a database that began
with
> the word - test.

Maybe... check the mysql.user and mysql.db tables to see what
permissions each user has.

Regardless, you generally want to delete all but the root@localhost user
and give that user a password.

---John Holmes...


--- End Message ---
--- Begin Message ---
Anyone know how to use shell_exec or exec and execute a shell script as user
root ?

---------------------------------------------
Regards
Nick
Wildthing Communications

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~
How can a species, that can create machines to communicate, fail to
communicate amongst themselves ?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~
This email and any files transmitted with it may be legally privileged and
confidential. If you
are not the intended recipient of this email, you must not disclose or use
the information contained
in it. If you have received this email in error, please notify us by return
email and permanently
delete the document.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~

--- End Message ---
--- Begin Message ---
On Mon, 3 Feb 2003, Chris Shiflett wrote:

> --- Philip Olson <[EMAIL PROTECTED]> wrote:
> > No offense Sunfire but I don't think you're ready to
> > be answering questions.
>
> Please try to be a little more kind. While his answer does
> have problems, his helpful attitude is a good thing.
>
> Whenever someone's answer can potentially do more harm than
> good (by misleading the original poster, as was a risk in
> this case), it might be better just to help correct the
> problems or offer a more proper solution. Degrading the
> person who erred does not really add any additional
> benefit.
[snip]

I've seen his questions and felt he's not ready to provide
answers.  Facts are facts, we all start somewhere.  Through
time Sunfire will learn PHP and provide useful replies. I
don't feel my reply was degrading.

You have cut-n-pasted my reply to be somewhat out of context.
At any rate, thanks, but I disagree.  I may have been a
little harsh but chalk it up as frustration towards some
of the replies I see on this list.  A lot of PHP newbies try
too hard to help so Sunfire, I am sorry if I offended you
but *my opinions* still stand.  Good luck with learning PHP.

Regards,
Philip


--- End Message ---
--- Begin Message ---
Chill out. It's only PHP programming.
:)


-----Original Message-----
From: Philip Olson [mailto:[EMAIL PROTECTED]]
Sent: Tuesday, 4 February 2003 2:56 PM
To: Chris Shiflett
Cc: Sunfire; Todd Barr; [EMAIL PROTECTED]
Subject: [PHP] Re: Etiquette


On Mon, 3 Feb 2003, Chris Shiflett wrote:

> --- Philip Olson <[EMAIL PROTECTED]> wrote:
> > No offense Sunfire but I don't think you're ready to
> > be answering questions.
>
> Please try to be a little more kind. While his answer does
> have problems, his helpful attitude is a good thing.
>
> Whenever someone's answer can potentially do more harm than
> good (by misleading the original poster, as was a risk in
> this case), it might be better just to help correct the
> problems or offer a more proper solution. Degrading the
> person who erred does not really add any additional
> benefit.
[snip]

I've seen his questions and felt he's not ready to provide
answers.  Facts are facts, we all start somewhere.  Through
time Sunfire will learn PHP and provide useful replies. I
don't feel my reply was degrading.

You have cut-n-pasted my reply to be somewhat out of context.
At any rate, thanks, but I disagree.  I may have been a
little harsh but chalk it up as frustration towards some
of the replies I see on this list.  A lot of PHP newbies try
too hard to help so Sunfire, I am sorry if I offended you
but *my opinions* still stand.  Good luck with learning PHP.

Regards,
Philip



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



--- End Message ---
--- Begin Message ---
Luke Woollard schrieb:
> Chill out. It's only PHP programming.
> :)
> 
> 
> -----Original Message-----
> From: Philip Olson [mailto:[EMAIL PROTECTED]]
> Sent: Tuesday, 4 February 2003 2:56 PM
> To: Chris Shiflett
> Cc: Sunfire; Todd Barr; [EMAIL PROTECTED]
> Subject: [PHP] Re: Etiquette
> 
> 
> On Mon, 3 Feb 2003, Chris Shiflett wrote:
> 
> 
>>--- Philip Olson <[EMAIL PROTECTED]> wrote:
>>
>>>No offense Sunfire but I don't think you're ready to
>>>be answering questions.
>>
>>Please try to be a little more kind. While his answer does
>>have problems, his helpful attitude is a good thing.
>>
>>Whenever someone's answer can potentially do more harm than
>>good (by misleading the original poster, as was a risk in
>>this case), it might be better just to help correct the
>>problems or offer a more proper solution. Degrading the
>>person who erred does not really add any additional
>>benefit.
> 
> [snip]
> 
> I've seen his questions and felt he's not ready to provide
> answers.  Facts are facts, we all start somewhere.  Through
> time Sunfire will learn PHP and provide useful replies. I
> don't feel my reply was degrading.
> 
> You have cut-n-pasted my reply to be somewhat out of context.
> At any rate, thanks, but I disagree.  I may have been a
> little harsh but chalk it up as frustration towards some
> of the replies I see on this list.  A lot of PHP newbies try
> too hard to help so Sunfire, I am sorry if I offended you
> but *my opinions* still stand.  Good luck with learning PHP.
> 
> Regards,
> Philip

no answer might be realy bad ... maybe it depends on who needs it,
and if it is usefull, but this is just another question.
I by myself be more depressed by questions which lead me to the
answer RTFM or even they seem to be unable to search through the
forums database. Just like "I ask to not solve the puzzle by own brain",
and than being unhappy that none is answering ...

but ... we all started somewhere ...


-- 
 @  Goetz Lohmann, Germany   |   Web-Developer & Sys-Admin
\/  ------------------------------------------------------
()  He's the fellow that people wonder what he does and
||  why the company needs him, until he goes on vacation.

--- End Message ---
--- Begin Message --- Hi EveryOne..,
I need your help..
I am Using 2 Pages for Deleting rows..
In Page 1 Like This Below. (I am displaying The ID of table ..)
and my Page 1 Will Post to Page 2
in Page 2, I've Tried to Deleting Rows..
But I Can't Deleted the Rows... :(


PAGE 1
<?
include "config.inc";
$mysqllang = "select ID from Penelitian where No=144 or No=785 or No=85 or No=1 or No=755 or No=246 or No=198 or No=239 or No=795 or No=275 or No=560 or No=743 or No=269
or No=715 or No=52 or No=788 or No=313 or No=752 or No=624 or No=205 or No=713 or No=717 or No=276 or No=53 or No=754 or No=277 or No=433";
$result = mysql_query($mysqllang);
echo "<form method=\"post\" action=\"page2.php\">";
echo "<table border=0 cellpadding=0 cellspacing=0><tr><td>";
for($x=0;$x<$row=mysql_fetch_array($result);$x++){
echo "<input type=\"text\" name=deleted[$x] value=".$row['ID']."><br>";
}
echo "</td>";
echo "<td>";
echo "<input type=\"submit\" value=\"DELETE ALL\">";
echo "</td></tr></table>";
echo "</form>";
mysql_close($conn);
?>

PAGE 2
<?
include "config.inc";
for ($x=0;$x<27;$x++){
$mysqllang = "Delete From Peneliti where ID=$deleted[$x]<br>";
mysql_query($mysqllang);
printf ("Records deleted: %d\n", mysql_affected_rows());
$mysqllang2 = "Delete From Penelitian where ID=$deleted[$x]<br>";
mysql_query($mysqllang2);
printf ("Records deleted: %d\n", mysql_affected_rows());
}
?>
Need help .., Please..
--- End Message ---
--- Begin Message --- sorry everyOne..
I have Found the answer..
Problem Solved..,
And Topic Canceled..
thanks..

Remon Redika writes:
Hi EveryOne..,
I need your help..
I am Using 2 Pages for Deleting rows..
In Page 1 Like This Below. (I am displaying The ID of table ..)
and my Page 1 Will Post to Page 2
in Page 2, I've Tried to Deleting Rows..
But I Can't Deleted the Rows... :(

PAGE 1
<?
include "config.inc";
$mysqllang = "select ID from Penelitian where No=144 or No=785 or No=85 or No=1 or No=755 or No=246 or No=198 or No=239 or No=795 or No=275 or No=560 or No=743 or No=269
or No=715 or No=52 or No=788 or No=313 or No=752 or No=624 or No=205 or No=713 or No=717 or No=276 or No=53 or No=754 or No=277 or No=433";
$result = mysql_query($mysqllang);
echo "<form method=\"post\" action=\"page2.php\">";
echo "<table border=0 cellpadding=0 cellspacing=0><tr><td>";
for($x=0;$x<$row=mysql_fetch_array($result);$x++){
echo "<input type=\"text\" name=deleted[$x] value=".$row['ID']."><br>";
}
echo "</td>";
echo "<td>";
echo "<input type=\"submit\" value=\"DELETE ALL\">";
echo "</td></tr></table>";
echo "</form>";
mysql_close($conn);
?>

PAGE 2
<?
include "config.inc";
for ($x=0;$x<27;$x++){
$mysqllang = "Delete From Peneliti where ID=$deleted[$x]<br>";
mysql_query($mysqllang);
printf ("Records deleted: %d\n", mysql_affected_rows());
$mysqllang2 = "Delete From Penelitian where ID=$deleted[$x]<br>";
mysql_query($mysqllang2);
printf ("Records deleted: %d\n", mysql_affected_rows());
}
?>
Need help .., Please..

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

--- End Message ---
--- Begin Message ---
Hey Guys,

Thanks for all the help with classes.  I think I can now turn the
lightswitch on.

Leonard Burton
[EMAIL PROTECTED]
www.phpna.com

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

I put pictures from a database ont the page about my products. If the user
click on a picture I want to give a detailed description about the product.
But how can I get, which picture was selected?

Thanks


--- End Message ---
--- Begin Message ---
Greetings,

You ought to make your link something like
www.foo.com/products.php?autoid=105.  and then make a query on your page
that displays the pics based on an autoincrement number in your table.

You ought to be able to make the code something like:

//Display link for product
print "<a href=products.php?autoid=".$row["autoid"].">";
print "<img src=images/".$row["product_pic"]."></a>";


ON your products.php page youd want to have code something like;

if ($auto)
{
        $result = "select * from product_info where autoid=$autoid"

        if ($result)
        {
                while ($row = mysql_fetch_array($result))
                {
                        $stuff=$row["stuff"];
                        $stuff1=$row["stuff1"];
                        $stuff2=$row["stuff2"];
                        $stuff3=$row["stuff3"];
                }
                mysql_free_result($result);
                print "All that stuff here";
        }
        else
        {
                include "product_display_page.php";
        }

I hope it helps.

Leonard.

-----Original Message-----
From: Karina S [mailto:[EMAIL PROTECTED]]
Sent: Tuesday, February 04, 2003 2:06 AM
To: [EMAIL PROTECTED]
Subject: [PHP] Which link was selected?


Hi,

I put pictures from a database ont the page about my products. If the user
click on a picture I want to give a detailed description about the product.
But how can I get, which picture was selected?

Thanks



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


--- End Message ---
--- Begin Message ---
Karina S schrieb:
> Hi,
> 
> I put pictures from a database ont the page about my products. If the user
> click on a picture I want to give a detailed description about the product.
> But how can I get, which picture was selected?
> 
> Thanks
> 
> 

if your images are named like
PicNr000.png, PicNr001.png, PicNr002.png, ..
and you have about 30 pics, do something like:

<?php
  $pic_count=0; $max_pic=30;
  if (isset($picnr) && ($picnr>=$pic_count) && ($picnr<$max_pic)) {
    // print out the info of image number $picnr
?>
...
<?php
  }
?>
...
<?php
  while ($pic_count<$max_pic) {
?>
...
<a href="<?php echo $PHP_SELF."?picnr=".$pic_count; ?>">
  <img src="PicNr000.png" border="0" name="PicNr000">
</a>
...
<?php
  $pic_count++;
  }
?>

than the script itself is called with the number of the pic ...
this is not a pretty way but it should work ...




-- 
 @  Goetz Lohmann, Germany   |   Web-Developer & Sys-Admin
\/  ------------------------------------------------------
()  He's the fellow that people wonder what he does and
||  why the company needs him, until he goes on vacation.

--- End Message ---
--- Begin Message ---
Leonard Burton schrieb:
> Greetings,
> 
> You ought to make your link something like
> www.foo.com/products.php?autoid=105.  and then make a query on your page
> that displays the pics based on an autoincrement number in your table.
> 
> You ought to be able to make the code something like:
> 
> //Display link for product
> print "<a href=products.php?autoid=".$row["autoid"].">";
> print "<img src=images/".$row["product_pic"]."></a>";
> 
> 
> ON your products.php page youd want to have code something like;
> 
> if ($auto)
> {
>       $result = "select * from product_info where autoid=$autoid"
> 
>       if ($result)
>       {
>               while ($row = mysql_fetch_array($result))
>               {
>                       $stuff=$row["stuff"];
>                       $stuff1=$row["stuff1"];
>                       $stuff2=$row["stuff2"];
>                       $stuff3=$row["stuff3"];
>               }
>               mysql_free_result($result);
>               print "All that stuff here";
>       }
>       else
>       {
>               include "product_display_page.php";
>       }
> 
> I hope it helps.
> 
> Leonard.
> 

ups .. someone was quite faster than me in answering ... and it looks quit
better than my way ... the only thing I want to note ... use "" arround values
of HTML tags ;-)

-- 
 @  Goetz Lohmann, Germany   |   Web-Developer & Sys-Admin
\/  ------------------------------------------------------
()  He's the fellow that people wonder what he does and
||  why the company needs him, until he goes on vacation.

--- End Message ---
--- Begin Message ---
$db= @mysql_pconnect ( $DB_HOST , $DB_USER , $DB_PASS );
@mysql_select_db ( $DB_DB )  or die ( "DATABASE ERROR!".mysql_error() );

Returns DATABASE ERROR!Can't connect to local MySQL server through
socket '/tmp/mysql.sock' (2)

MySQL server exists on a Win2ksp3 box.
Apache with PHP 4.3.0 exists on a Slackware 8.1 box.

All parameters are correct.
Boxes can see each other.
All php scripts work when run on the Win2k box.


Any ideas why connecting to php/mysql would throw this error?

Bryan

--- End Message ---
--- Begin Message ---
On Friday 21 February 2003 15:49, Bryan Lipscy wrote:
> $db= @mysql_pconnect ( $DB_HOST , $DB_USER , $DB_PASS );
> @mysql_select_db ( $DB_DB )  or die ( "DATABASE ERROR!".mysql_error() );
>
> Returns DATABASE ERROR!Can't connect to local MySQL server through
> socket '/tmp/mysql.sock' (2)
>
> MySQL server exists on a Win2ksp3 box.
> Apache with PHP 4.3.0 exists on a Slackware 8.1 box.
>
> All parameters are correct.
> Boxes can see each other.
> All php scripts work when run on the Win2k box.
>
>
> Any ideas why connecting to php/mysql would throw this error?

Search the archives or search the mysql list archives.

-- 
Jason Wong -> Gremlins Associates -> www.gremlins.biz
Open Source Software Systems Integrators
* Web Design & Hosting * Internet & Intranet Applications Development *
------------------------------------------
Search the list archives before you post
http://marc.theaimsgroup.com/?l=php-general
------------------------------------------
/*
Loose bits sink chips.
*/

--- End Message ---
--- Begin Message ---
Hi
I think that you mysql server on your Win box is set to only connect from
localhost and not from an outside host which is what its trying to do.



---------------------------------------------
Regards
Nick Kordas BE(hons) Ph.D(usyd)
Wildthing Communications
PH:  07 5481 6064
Mob: 0421 556847
ICQ# 64851373
PO Box 1841
SUNSHINE PLAZA
Maroochydore
QLD 4558
http://www.wildcomm.net

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~
How can a species, that can create machines to communicate, fail to
communicate amongst themselves ?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~
This email and any files transmitted with it may be legally privileged and
confidential. If you
are not the intended recipient of this email, you must not disclose or use
the information contained
in it. If you have received this email in error, please notify us by return
email and permanently
delete the document.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~

----- Original Message -----
From: "Jason Wong" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Tuesday, February 04, 2003 6:12 PM
Subject: Re: [PHP] Socket error connecting to mySQL


> On Friday 21 February 2003 15:49, Bryan Lipscy wrote:
> > $db= @mysql_pconnect ( $DB_HOST , $DB_USER , $DB_PASS );
> > @mysql_select_db ( $DB_DB )  or die ( "DATABASE ERROR!".mysql_error() );
> >
> > Returns DATABASE ERROR!Can't connect to local MySQL server through
> > socket '/tmp/mysql.sock' (2)
> >
> > MySQL server exists on a Win2ksp3 box.
> > Apache with PHP 4.3.0 exists on a Slackware 8.1 box.
> >
> > All parameters are correct.
> > Boxes can see each other.
> > All php scripts work when run on the Win2k box.
> >
> >
> > Any ideas why connecting to php/mysql would throw this error?
>
> Search the archives or search the mysql list archives.
>
> --
> Jason Wong -> Gremlins Associates -> www.gremlins.biz
> Open Source Software Systems Integrators
> * Web Design & Hosting * Internet & Intranet Applications Development *
> ------------------------------------------
> Search the list archives before you post
> http://marc.theaimsgroup.com/?l=php-general
> ------------------------------------------
> /*
> Loose bits sink chips.
> */
>
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>

--- End Message ---
--- Begin Message ---
Bryan Lipscy schrieb:
> $db= @mysql_pconnect ( $DB_HOST , $DB_USER , $DB_PASS );
> @mysql_select_db ( $DB_DB )  or die ( "DATABASE ERROR!".mysql_error() );
> 
> Returns DATABASE ERROR!Can't connect to local MySQL server through
> socket '/tmp/mysql.sock' (2)
> 
> MySQL server exists on a Win2ksp3 box.
> Apache with PHP 4.3.0 exists on a Slackware 8.1 box.
> 
> All parameters are correct.
> Boxes can see each other.
> All php scripts work when run on the Win2k box.
> 
> 
> Any ideas why connecting to php/mysql would throw this error?
> 
> Bryan
> 

seems that PHP is trying to connect to a mysql database on localhost,
instead it is on the win2k box ... so maybe the $DB_HOST value is wrong ?


-- 
 @  Goetz Lohmann, Germany   |   Web-Developer & Sys-Admin
\/  ------------------------------------------------------
()  He's the fellow that people wonder what he does and
||  why the company needs him, until he goes on vacation.

--- End Message ---
--- Begin Message ---
is there a way to get this variable in php3 for some reason i cannot acess
it ?


--- End Message ---
--- Begin Message ---
> That's right, but with curl it's not a true redirection: you just print the content 
>of the target page, you don't redirect to the page.

> What I need is "automated forms", that send the same data as forms but without user 
>interaction.
> I can't use javascript to automatically send a form.


Maybe something like this:

$fs = fsockopen("target.com",80);
fputs($fs, '
POST /index.html HTTP/1.1
Accept: */*
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate
Host: target.com
Content-Length: 41

data1=value1data2=value2
');

Your script sends data to http://target.com/index.html

At the end you can do "location".
That is all you can do.

--- End Message ---
--- Begin Message ---
> How to compare 2 strings in PHP
> I hawe 2 array where I have only string values some values in both arrays
> are same but if command don't send me a good result.
> e.g

> foreach ($array1 as $a1) {
>   foreach($array2 as $a2){
>    if ($a1 == $a2) echo "good";   //never system send me a good result
>      else echo "bad;
>   }
> }

If you have in one array "test" and in the other also "test"
(not "Test" nor "TEST" but "test") it must work.

By the way in
   else echo "bad;
you have not got a quotation mark after "bad".


-- 
Krzysztof Dziekiewicz

--- End Message ---
--- Begin Message --- I recomend you use ftp functions to upload the script to your site (from the generating file). If you only use normal filesystem function, the newly created file will get the owner of the http server.

gurvinder singh wrote:

and how can i be root from a php script?

i want chown from the script itself which created the page.

-----Original Message-----
From: Marek Kilimajer [mailto:[EMAIL PROTECTED]]
Sent: Monday, February 03, 2003 12:39 PM
To: Gurvinder Singh
Cc: [EMAIL PROTECTED]
Subject: Re: [PHP] safe mode problem


what you did should work (you must be root to change owner). You can use
-R switch to change owner recursively

Gurvinder Singh wrote:


hi
i create a php page dynamically in my php script. this page include one of
my other php file. when i run the newly created script i get this error

Warning: SAFE MODE Restriction in effect. The script whose uid is 48 is not
allowed to access file.php owned by uid 831

Is there a way to handle this.

i even tried chown to change the newly created file's owner to be 831 but

it

doesnt seem to work

Thanks & Regards
Gurvinder










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

i've written a secure PHP login script which will allow users to login to a
directory such as this:

smezone.com/members/index.php

however, how do I restrict people from accessing HTML files in that
directory (which they can easily do so by typing the URL into their
browser), such as:

smezone.com/members/document1.html

?

Since its a regular HTML files (and we have lots), I can't check whether the
user has a valid session as I would do in a PHP file.

Thanks for any help!

Shams


--- End Message ---
--- Begin Message ---
On Saturday 01 February 2003 17:28, Shams wrote:
> Hi,
>
> i've written a secure PHP login script which will allow users to login to a
> directory such as this:
>
> smezone.com/members/index.php
>
> however, how do I restrict people from accessing HTML files in that
> directory (which they can easily do so by typing the URL into their
> browser), such as:
>
> smezone.com/members/document1.html
>
> ?
>
> Since its a regular HTML files (and we have lots), I can't check whether
> the user has a valid session as I would do in a PHP file.

You can use HTTP authentication, but that's probably not what you want since 
you went through the trouble of creating a php login system. There are two 
ways you can go about this (there may be more that I'm not aware of):

1) Move your restricted HTML files to outside of the DOCUMENT ROOT of your 
webserver. And have PHP include() those files.

2) Set your webserver to interpret HTML files as PHP and include your 
authentication code using auto_prepend_file directive in php.ini.

-- 
Jason Wong -> Gremlins Associates -> www.gremlins.biz
Open Source Software Systems Integrators
* Web Design & Hosting * Internet & Intranet Applications Development *
------------------------------------------
Search the list archives before you post
http://marc.theaimsgroup.com/?l=php-general
------------------------------------------
/*
sticktion
*/

--- End Message ---
--- Begin Message ---
Shams schrieb:
> Hi,
> 
> i've written a secure PHP login script which will allow users to login to a
> directory such as this:
> 
> smezone.com/members/index.php
> 
> however, how do I restrict people from accessing HTML files in that
> directory (which they can easily do so by typing the URL into their
> browser), such as:
> 
> smezone.com/members/document1.html
> 
> ?
> 
> Since its a regular HTML files (and we have lots), I can't check whether the
> user has a valid session as I would do in a PHP file.
> 

if you are using linux & apache ... just use a .htaccess file like the one below

AuthUserFile /usr/home/.htpasswd
AuthName "Secret Area"
AuthType Basic
<FilesMatch "\.(gif|jpe?g|png|htm|html)$">
  require valid-user
</FilesMatch>

with this you restrict access only to users listet in the /usr/home/.htpasswd
files which look like

user1:668c1d6Hc6yCg
test:85FRBo8cHrAZc

the code after ":" is a MD5 key
the FilesMatch mean that all files ending with .gif,.html,.. is restricted and
.php is not.

in a php file you now can read the authentications from a user and compare it
with the /usr/home/.htpasswd entrys.

<?php
  ...
  if (!isset($PHP_AUTH_USER)) {
    // $PHP_AUTH_USER is empty ... no login
    header('WWW-Authenticate: Basic realm="My Private Stuff"');
    header('HTTP/1.0 401 Unauthorized');
    echo 'Authorization Required.';
    exit;
  }
  // If not empty, check authentication ...
  else {
    if ($PHP_AUTH_USER==$username && $PHP_AUTH_PW==$mypasswd) {
      echo "<P>Your Login is OK";
?>
...
<?php
    } else {
      echo "<P>wrong login !";
    }
  }
?>

note that the the /usr/home/.htpasswd file must include all usernames and
passwords as MD5. You can create a line of this file with:

<?php
  echo "$username:".md5($mypasswd);
?>

maybe you also can use "mod_auth_db" ... but this is apache specific so
take a look at http://httpd.apache.org/docs/mod/core.html



-- 
 @  Goetz Lohmann, Germany   |   Web-Developer & Sys-Admin
\/  ------------------------------------------------------
()  He's the fellow that people wonder what he does and
||  why the company needs him, until he goes on vacation.

--- End Message ---
--- Begin Message ---
Goetz Lohmann schrieb:
> Shams schrieb:
> 
>>Hi,
>>
>>i've written a secure PHP login script which will allow users to login to a
>>directory such as this:
>>
>>smezone.com/members/index.php
>>
>>however, how do I restrict people from accessing HTML files in that
>>directory (which they can easily do so by typing the URL into their
>>browser), such as:
>>
>>smezone.com/members/document1.html
>>
>>?
>>
>>Since its a regular HTML files (and we have lots), I can't check whether the
>>user has a valid session as I would do in a PHP file.
>>
> 

maybe take a look at:

http://hotwired.lycos.com/webmonkey/00/05/index2a_page3.html?tw=programming

but note that normaly $PHP_AUTH_PW is the password in clear text, but the
.htaccess file stores it as a md5 key!



-- 
 @  Goetz Lohmann, Germany   |   Web-Developer & Sys-Admin
\/  ------------------------------------------------------
()  He's the fellow that people wonder what he does and
||  why the company needs him, until he goes on vacation.

--- End Message ---
--- Begin Message ---
I have recently been investigating exporting data from MySQL 
database to use with MS Word mail merge.  The mail merge will 
accept a text file with separators of tab or comma - should be easy 
to produce using PHP. 

Hilary


On 3 Feb 2003 at 12:49, Matt Babineau wrote:

> I have a client that currently gets MDB exports of their database to
> run reports and mail merges with. Has anyone heard of or have any idea
> of how to make an MDB (Access Data File) on the file from PHP or any
> other scripting language?
> 
> Thx-
> 
> Matt
> 

--
Hilary Boyce
Enterprise AB Ltd
[EMAIL PROTECTED]
Tel: 01727 751455


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

I am working on porting PHP onto NetWare.

At this point of time, I am trying to understand the way security is
implemented for PHP on Unix / Linux. I mean, how are the different users
distinguished from Unix / Linux. Do they get to login into the Unix /
Linux system? Do they have separate data space for each user? What is
the API that is used to login to Unix / Linux. User may enter his
username and password on the browser, but how do they get translated
onto the Unix / Linux box?

Your help in this is appreciated.

Thanks,
Ananth.

--- End Message ---
--- Begin Message ---
Pag schrieb:
>     
>     Hi,
> 
>     I have a news site where i want to track how many "visits" or reads
> each individual news has. I have a main list with all the titles, then
> clicking on them shows the details of the specific news, only then the
> counter for that particular news is increased. The problem is, if the
> user does a refresh while at the details, the counter is increased
> again. How can i prevent this from happening?
> 
>     I thought it would be something like a unique counter problem, but
> its like having a "counter problem" for each news i have. :-P
> 
>     What would be nice, if it exists, is to check if the user is doing a
> refresh or coming from somewhere else. If its a refresh, the counter
> would simply not increase. That would be sufficient to keep the
> i-want-my-news-to-have-the-higher-number-of-visitors author, from having
> his way.
> 

maybe store the counter in a mysql database including the IP of the viewer
and the timestamp when he visited this page. If he shows the news the first
time store the IP with timestamp and the viewd news in the database.
If he view it again first check if this IP viewed this news lately.
Remove all IP which been older than maybe 8 hours afterwards.

Another option is to store this info in cookies or sessions ...

-- 
 @  Goetz Lohmann, Germany   |   Web-Developer & Sys-Admin
\/  ------------------------------------------------------
()  He's the fellow that people wonder what he does and
||  why the company needs him, until he goes on vacation.

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

I have problems with relative paths and 4.3.0. Include() do not seem to work the same way in 4.3.0 and 4.2.1. Consider this test:

test/
|- testinclude.php <? include ('inc/inc1.php'); ?>
|- inc/
|- inc1.php <? include ('inc/inc2.php'); ?>
|- inc2.php OK

With PHP 4.2.1, <http//my.server.com/test/testinclude.php> works OK.
With 4.3.0, I get:
Failed opening '/inc/inc2.php' for inclusion \
include_path='.:..:/usr/local/php-4.3.0/lib/php') in \
/usr/local/www/htdocs/tests/inc/inc1.php on line 1

With a modified inc1.php:
<? include ('inc2.php'); ?>
this test is OK with 4.3.0, but gives an error with 4.2.1.

It appears that paths are relative
- to the main script in 4.2.1,
- to the including script in 4.3.0
(but .. in include_path does not work).

I can't seem to be able to write something OK for both versions (except if giving full pathnames). By the way, this is on Solaris, and safe_mode if off.

Any suggestion?

--- End Message ---
--- Begin Message ---
Jean-Pierre Gallou schrieb:
>     Hi,
> 
> I have problems with relative paths and 4.3.0. Include() do not seem to
> work the same way in 4.3.0 and 4.2.1. Consider this test:
> 
> test/
>  |- testinclude.php   <? include ('inc/inc1.php'); ?>
>  |- inc/
>     |- inc1.php       <? include ('inc/inc2.php'); ?>
>     |- inc2.php       OK
> 
> With PHP 4.2.1, <http//my.server.com/test/testinclude.php> works OK.
> With 4.3.0, I get:
>   Failed opening '/inc/inc2.php' for inclusion \
>    include_path='.:..:/usr/local/php-4.3.0/lib/php') in \
>    /usr/local/www/htdocs/tests/inc/inc1.php on line 1
> 
> With a modified inc1.php:
>                       <? include ('inc2.php'); ?>
> this test is OK with 4.3.0, but gives an error with 4.2.1.
> 
> It appears that paths are relative
> - to the main script in 4.2.1,
> - to the including script in 4.3.0
>    (but .. in include_path does not work).
> 
> I can't seem to be able to write something OK for both versions (except
>  if giving full pathnames). By the way, this is on Solaris, and
> safe_mode if off.
> 
> Any suggestion?
> 

Failed opening '/inc/inc2.php'

looks like that he try an absolute path from the root / ... maybe try something
like

include('./inc/inc1.php');
         ^^

instead. The "include_path" tells PHP only where to look for the file

.   = same directory
..  = parent directory

if it is a single file or relativ path, but '/inc/inc2.php' is an absolute path
from the root ...


-- 
 @  Goetz Lohmann, Germany   |   Web-Developer & Sys-Admin
\/  ------------------------------------------------------
()  He's the fellow that people wonder what he does and
||  why the company needs him, until he goes on vacation.

--- End Message ---
--- Begin Message ---
Thank you for your reply. Goetz Lohmann wrote :

Failed opening '/inc/inc2.php'
Yes, I don't understand the reason of the leading slash in the error message.

... maybe try something like

include('./inc/inc1.php');
         ^^
same thing: Failed opening './inc/inc2.php' for inclusion

--- End Message ---
--- Begin Message ---
Jean-Pierre Gallou schrieb:
> Thank you for your reply. Goetz Lohmann wrote :
> 
>> Failed opening '/inc/inc2.php'
> 
> 
> Yes, I don't understand the reason of the leading slash in the error
> message.
> 
>> ... maybe try something like
>>
>> include('./inc/inc1.php');
>>          ^^
> 
> 
> same thing: Failed opening './inc/inc2.php' for inclusion
> 


mhhh ... wait ... don't you wrote

test/
 |- testinclude.php   <? include ('inc/inc1.php'); ?>
 |- inc/
    |- inc1.php       <? include ('inc/inc2.php'); ?>
    |- inc2.php       OK

wich means that "testinclude.php" includes "inc/inc1.php"
and "inc/inc1.php" includes "inc/inc2.php" ?

the include is like a copy of the code from
"inc/inc1.php" into "testinclude.php" so that in the
first sighth it might be correct to call "inc/inc2.php"
instead of "inc2.php".

But maybe the parser of PHP 4.3.0 is rewritten so that it
now parse it bottom up. That means that first the inclusion
of "inc/inc2.php" into "inc/inc1.php" will happen which
fails cause its in the same directory.

... I tried it on my server ... all went Ok ... strange ...

insert something like into inc1.php and inc2.php:

<?php
   echo "inc included<br>\n";
   echo "<br>\n";
   $folder=dir('inc');
   // print out folder "inc"
   while($datei = $folder->read()) {
      echo "$datei<br>\n";
   }
   $folder->close();
   echo "<br>\n";
?>

maybe did it head anywhere else or did it show something like

inc included
inc included

.
..
inc1.php
inc2.php


.
..
inc1.php
inc2.php


???


-- 
 @  Goetz Lohmann, Germany   |   Web-Developer & Sys-Admin
\/  ------------------------------------------------------
()  He's the fellow that people wonder what he does and
||  why the company needs him, until he goes on vacation.

--- End Message ---
--- Begin Message --- I'm planning to use variable objects in a new project I'm working on. The problem is, I can't find one page of documentation on them, so I can't be sure if I'm going to be using an accidential feature that will disappear. As an example of them working, the following outputs "In a_class.":
<?php
class a_class{
function a_class(){
echo 'In a_class.';
}
}
$foo = 'a_class';
new $foo();
?>

--
The above message is encrypted with double rot13 encoding. Any unauthorized attempt to decrypt it will be prosecuted to the full extent of the law.


--- End Message ---
--- Begin Message ---
Leif K-Brooks schrieb:
> I'm planning to use variable objects in a new project I'm working on.
> The problem is, I can't find one page of documentation on them, so I
> can't be sure if I'm going to be using an accidential feature that will
> disappear.  As an example of them working, the following outputs "In
> a_class.":
> <?php
> class a_class{
>    function a_class(){
>        echo 'In a_class.';
>    }
> }
> $foo = 'a_class';
> new $foo();
> ?>
> 

take a look at
http://www.php.net/manual/en/ref.classobj.php

;-)

-- 
 @  Goetz Lohmann, Germany   |   Web-Developer & Sys-Admin
\/  ------------------------------------------------------
()  He's the fellow that people wonder what he does and
||  why the company needs him, until he goes on vacation.

--- End Message ---
--- Begin Message ---
Using RH 8, php 4.2.2, Apache 2.0, I'm getting (from phpinfo) a reported include path 
of .:/usr/share/pear no matter what I put in the include_path in php.ini. The info 
also says it's using /etc/php.ini as the config file.

And, yes, I've restarted Apache many times. I've tried many variations on the path 
syntax, and settled on the simplest possibility, but it still doesn't pick it up. At 
the moment, /usr/share/pear is not in that statement.

Anybody got any good ideas?

TIA,
Paul
--- End Message ---
--- Begin Message ---
Paul schrieb:
> Using RH 8, php 4.2.2, Apache 2.0, I'm getting (from phpinfo) a reported include 
>path of .:/usr/share/pear no matter what I put in the include_path in php.ini. The 
>info also says it's using /etc/php.ini as the config file.
> 
> And, yes, I've restarted Apache many times. I've tried many variations on the path 
>syntax, and settled on the simplest possibility, but it still doesn't pick it up. At 
>the moment, /usr/share/pear is not in that statement.
> 
> Anybody got any good ideas?
> 
> TIA,
> Paul


don't panic ... the last part "/usr/share/pear" is the path where the command
line version of PHP resists and is always there also without an include_path
entry of php.ini


-- 
 @  Goetz Lohmann, Germany   |   Web-Developer & Sys-Admin
\/  ------------------------------------------------------
()  He's the fellow that people wonder what he does and
||  why the company needs him, until he goes on vacation.

--- End Message ---
--- Begin Message ---
Thanks for the info. But I notice that I didn't really state the essence of my 
problem, which is that I can't get PHP to locate any include directory I put in the 
php.ini, thus no files I want to include get included.

Paul schrieb:

>> Using RH 8, php 4.2.2, Apache 2.0, I'm getting (from phpinfo) a reported include 
>path of .:/usr/share/pear no matter what I put in the include_path in php.ini. The 
>info also says it's using /etc/php.ini as the config file.
>> 
>> And, yes, I've restarted Apache many times. I've tried many variations on the path 
>syntax, and settled on the simplest possibility, but it still doesn't pick it up. At 
>the moment, /usr/share/pear is not in that statement.
>> 
>> Anybody got any good ideas?
>> 
>> TIA,
>> Paul



don't panic ... the last part "/usr/share/pear" is the path where the command line 
version of PHP resists and is always there also without an include_path entry of 
php.ini
--- End Message ---
--- Begin Message ---
Paul schrieb:
> Thanks for the info. But I notice that I didn't really state the essence of my 
>problem, which is that I can't get PHP to locate any include directory I put in the 
>php.ini, thus no files I want to include get included.
> 
> Paul schrieb:
> 
> 
>>>Using RH 8, php 4.2.2, Apache 2.0, I'm getting (from phpinfo) a reported include 
>path of .:/usr/share/pear no matter what I put in the include_path in php.ini. The 
>info also says it's using /etc/php.ini as the config file.
>>>
>>>And, yes, I've restarted Apache many times. I've tried many variations on the path 
>syntax, and settled on the simplest possibility, but it still doesn't pick it up. At 
>the moment, /usr/share/pear is not in that statement.
>>>
>>>Anybody got any good ideas?
>>>
>>>TIA,
>>>Paul
> 


include_path = ".:..:/mydir"

using "" around or left the ; infront ? No I don't think you are stupid but
sometimes someone don't realize the easyest things ...

what is in the error log of apache reported, enable the error_log in php.ini and
take a look at that ... is there any information when apache/php is started ?

maybe did you changed "/etc/php.ini" or something else ?

are there two lines in "/etc/php.ini" with include_path ?

at command line type
$> vim /etc/php.ini

search for include_path with
:/include_path/

search twice with
://

quit with
:q



-- 
 @  Goetz Lohmann, Germany   |   Web-Developer & Sys-Admin
\/  ------------------------------------------------------
()  He's the fellow that people wonder what he does and
||  why the company needs him, until he goes on vacation.

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

Please can someone direct me to the correct function that changes 
http://www.foo.com to <a href="http://www.foo.com";>http://www.foo.com</a> 
for any occurence in a string.

Cheers, Ian.

--- End Message ---
--- Begin Message ---
Randum Ian schrieb:
> Hi all,
> 
> Please can someone direct me to the correct function that changes 
> http://www.foo.com to <a href="http://www.foo.com";>http://www.foo.com</a> 
> for any occurence in a string.
> 
> Cheers, Ian.
> 

do you wish convert a string in a link ??? try:

<?php
  echo "<a href="$string1">$string1</a>";
?>

or a link in a string ?

<?php
preg_match('/^(http|https|ftp):\/\/(([A-Z0-9][A-Z0-9_-]*)(\.[A-Z0-9][A-Z0-9_-]*)+)(:(\d+))?\//i',
$link, $string)
?>

with

$string[1]; // protocol type (http,https,ftp)
$string[2]; // hostname (domain)
$string[3]; // port if available like 80 for http

... please be more precise in your question !



-- 
 @  Goetz Lohmann, Germany   |   Web-Developer & Sys-Admin
\/  ------------------------------------------------------
()  He's the fellow that people wonder what he does and
||  why the company needs him, until he goes on vacation.

--- End Message ---
--- Begin Message --- Is there any way to get the key of an element added to an array with []? I need to use this for a reference to it. The only idea I can think of is to foreach through the array and use the last key looped through, but that seems very dirty.

--- End Message ---
--- Begin Message ---
Leif K-Brooks schrieb:
> Is there any way to get the key of an element added to an array with []?
> I need to use this for a reference to it.  The only idea I can think of
> is to foreach through the array and use the last key looped through, but
> that seems very dirty.
> 

$foo[]='bar';

will insert 'bar' as the last item of the array $foo. To get this you might
use

$erg = key($foo); // the key of the current element

or

$erg = pos($foo); // the value of the current element

maybe if something happend between the insertion first head to the last item

$erg = end($foo); // get the last element of array $foo

instead of foreach you can also use array_walk($arr, 'func');




-- 
 @  Goetz Lohmann, Germany   |   Web-Developer & Sys-Admin
\/  ------------------------------------------------------
()  He's the fellow that people wonder what he does and
||  why the company needs him, until he goes on vacation.

--- End Message ---
--- Begin Message ---
> Is there any way to get the key of an element added to an array with []?
>  I need to use this for a reference to it.  The only idea I can think of
> is to foreach through the array and use the last key looped through, but
> that seems very dirty.

If elements are only being added with [], then you should be able to keep a
count as  you go.

Easy way would be to add it like this:

$array[$x++] = $your_value;

Then you'll have ($x-1) as the element just added, if you need it.

---John Holmes...

--- End Message ---
--- Begin Message ---
I am trying to configure the php.ini file so that I can use the mail
function in my code. The problem I am facing is that I get the following
error message when I try to run my code:

Warning: mail() [function.mail]: SMTP server response: 550 Relaying is
prohibited

Any suggestions?

Thanks,
Dale


--- End Message ---
--- Begin Message ---
Dale schrieb:
> I am trying to configure the php.ini file so that I can use the mail
> function in my code. The problem I am facing is that I get the following
> error message when I try to run my code:
> 
> Warning: mail() [function.mail]: SMTP server response: 550 Relaying is
> prohibited
> 

this is an error of sendmail not from PHP ! ... take a look at the
/etc/mail/sendmail.cf or /etc/mail/access of your box and enable
relaying for maybe localhost ...


-- 
 @  Goetz Lohmann, Germany   |   Web-Developer & Sys-Admin
\/  ------------------------------------------------------
()  He's the fellow that people wonder what he does and
||  why the company needs him, until he goes on vacation.

--- End Message ---
--- Begin Message ---
> From: "Kevin Stone" <[EMAIL PROTECTED]>
> 
> ----- Original Message -----
> From: "Lowell Allen" <[EMAIL PROTECTED]>
> 
>> I've added an email feature to a content management system that will send
>> plain text email to about 1400 contact addresses. Each contact is sent a
>> separate email with the contact name and address in the "To:" header. It
>> works fine to small test lists, but hasn't been tested with a large list.
>> 
>> Although I think list posts should only pose one question, I have two:
>> 
>> (1) My client is nervous about the script failing mid-list and not being
>> able to determine which contacts were sent mail. I need to build this
>> check into the content management system. I could write a flag to the
>> database every time mail() returns true, but that would mean 1400 database
>> updates! If I instead append to a variable each time through the mail()
>> loop, I'll lose the record if the script times out. Can anyone suggest how
>> to record the position in a loop if a time out or failure occurs?
> 
>> (2) In order to avoid the script timing out, I'm counting the number of
>> mail() attempts and calling set_time_limit(30) every 50 attempts to
>> provide another 30 seconds of script execution time.

[snip]
 
> In response to your first question.  File stores are something a computer
> does very very fast (might want to add some error catching to this)..
> 
> $i=0
> while() {
> count_index($i)
> $i++;
> }
> 
> function count_index ($i) {
> $fp = fopen('count.txt', 'w');
> fwrite($fp, $i);
> fclose($fp);
> }

Thanks, Kevin. I've put a counter in place within my mail loop. It seems to
slow the process, but perhaps not too much. And thanks to Mark McCulligh for
describing a system for sending about 1500 messages that's called with a
cron tab and writes to a db after each mail. And thanks to Chris Hayes for
pointing to relevant list archives. My system seems to be working, but it's
so slow that I'm going to look at using a cron tab and saving everything to
a database for easier reference in case of failure mid-list.

--
Lowell Allen

--- End Message ---
--- Begin Message ---
I don't think the process is an extra step at all. In fact, it's just a
trade off using one or the other. You can either login using php and a
database backend or just authenticate using .htaccess directives.

In my case (a few months back) what I was trying to do was offer up a
single login page for 500 or so different companies each having their own
directory on my server. Each directory is password protected via
.htaccess. They would all login using my php interface which would in turn
check the username and password for matching. Their database record would
also contain the URL to their directory on my server. After logging in I
tried to use a header call containing the username, password and URL but
it never quite worked although you can actually do it in the address bar
of the browser with ease. Theoretically it should work like a charm but I
never got the chance to investigate any further because I was rushed off
to the next "Big Project."

Ed



On Mon, 3 Feb 2003, Chris Shiflett wrote:

> > There is a way to supposedly do this by authenticating
> > a username and password through php first through such
> > methods as database lookups and then passing the
> > username and password through $PHP_AUTH_USER and
> > $PHP_AUTH_PW using the header() command to point to the
> > URL of the .htaccess protected directory but I have
> > never gotten it to work myself.
> 
> The variables $PHP_AUTH_USER and $PHP_AUTH_PW are available
> to you when the user authenticates via HTTP basic
> authentication. Thus, the user has already had to type in
> the username and password into a separate window, which is
> what the original poster is trying to avoid.
> 
> To then send the user to another URL and supply the
> authentication credentials in the URL itself just creates
> an unnecessary step.
> 
> > There isnt any PHP pages directed towards teh directory
> > itself. Its is just a hard link to the protected areas. 
> > Are there any functions that support it?
> >
> > Im googling now ;)
> 
> I'm still having a bit of trouble interpreting your
> question, so Google might have a hard time, too. :-)
> 
> If you are protecting static resources such as images and 
> HTML files with your Web server currently, the only way to
> protect these with PHP is to store them outside of the
> document root (so that your Web server cannot serve them
> directly) and serve them with PHP (using
> header("Content-Type: whatever")) once you have determined
> whether the user should be allowed to access the particular
> resource.
> 
> Hopefully that can help refine your search.
> 
> Chris
> 
> -- 
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
> 

--- End Message ---

Reply via email to