php-general Digest 18 Mar 2010 16:32:12 -0000 Issue 6646

Topics (messages 302949 through 302971):

Remote Desktop Management
        302949 by: Al Mangkok

Re: best way to determine mime type of file these days?
        302950 by: Per Jessen
        302963 by: tedd
        302965 by: Per Jessen

Re: PHP in HTML code
        302951 by: Pete Ford
        302958 by: Jan G.B.
        302959 by: tedd
        302960 by: tedd
        302971 by: Jan G.B.

Re: Spreadsheet_Excel_Reader problem
        302952 by: Ashley Sheridan
        302953 by: Ashley Sheridan
        302954 by: Jochen Schultz
        302955 by: Paul M Foster
        302957 by: Jochen Schultz
        302962 by: tedd
        302967 by: Tommy Pham
        302968 by: Paul M Foster
        302969 by: Mattias Thorslund
        302970 by: Ashley Sheridan

Re: I need a fresh look at storing variables in MySQL
        302956 by: tedd

protecting pages with a login system
        302961 by: David Mehler
        302964 by: Ashley Sheridan
        302966 by: APseudoUtopia

Administrivia:

To subscribe to the digest, e-mail:
        php-general-digest-subscr...@lists.php.net

To unsubscribe from the digest, e-mail:
        php-general-digest-unsubscr...@lists.php.net

To post to the list, e-mail:
        php-gene...@lists.php.net


----------------------------------------------------------------------
--- Begin Message ---
Hi all,
Am looking for Remote Desktop Management system that is written with PHP.
Appreciate all feedback. TIA


--
al

--- End Message ---
--- Begin Message ---
Robert P. J. Day wrote:

> 
>   i realize it sounds trivial but the online info is annoyingly
> recursive.  there's mime_content_type(), but it's officially
> deprecated. 

On the manual page there is a reference to the Fileinfo PECL extension:

http://php/manual/en/ref.fileinfo.php


-- 
Per Jessen, Zürich (9.1°C)


--- End Message ---
--- Begin Message ---
At 8:52 AM +0100 3/18/10, Per Jessen wrote:
Robert P. J. Day wrote:


   i realize it sounds trivial but the online info is annoyingly
 recursive.  there's mime_content_type(), but it's officially
 deprecated.

On the manual page there is a reference to the Fileinfo PECL extension:

http://php/manual/en/ref.fileinfo.php

Broken.

Cheers,

tedd
--
-------
http://sperling.com  http://ancientstones.com  http://earthstones.com

--- End Message ---
--- Begin Message ---
tedd wrote:

> At 8:52 AM +0100 3/18/10, Per Jessen wrote:
>>Robert P. J. Day wrote:
>>
>>>
>>>    i realize it sounds trivial but the online info is annoyingly
>>>  recursive.  there's mime_content_type(), but it's officially
>>>  deprecated.
>>
>>On the manual page there is a reference to the Fileinfo PECL
>>extension:
>>
>>http://php/manual/en/ref.fileinfo.php
> 
> Broken.

Sorry, that was a link to my local copy. 

http://php.net/manual/en/ref.fileinfo.php



-- 
Per Jessen, Zürich (14.8°C)


--- End Message ---
--- Begin Message ---
On 17/03/10 18:59, Tommy Pham wrote:
On Wed, Mar 17, 2010 at 11:01 AM, Rene Veerman<rene7...@gmail.com>  wrote:
hmm.. seems easier to me to push a filetree of .php's with<?= through
the str_replace(), than it is to get all the<?= writers to comply
with your wishes, which may not apply to their situation ;-)

On Wed, Mar 17, 2010 at 5:14 PM, tedd<tedd.sperl...@gmail.com>  wrote:
At 8:55 PM -0400 3/16/10, Adam Richardson wrote:

That said, I'm not taking exception with those who don't use the short
tag, only with those who say I shouldn't.

Exception or not, it's still your choice and using short tags can cause
problems.

My view, why create problems when there is a solution? Forcing the issue is
a bit like "I'm going to do it my way regardless!" I've traveled that path
too many times in my life. Sometimes it's easier to take the path most
traveled.

Cheers,

ted
--
-------
http://sperling.com  http://ancientstones.com  http://earthstones.com

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



http://www.php.net/manual/en/language.basic-syntax.phpmode.php

"There are four different pairs of opening and closing tags which can
be used in PHP. Two of those,<?php ?>  and<script language="php">
</script>, are always available. The other two are short tags and ASP
style tags, and can be turned on and off from the php.ini
configuration file. As such, while some people find short tags and ASP
style tags convenient, they are less portable, and generally not
recommended. "

But the implication there is that they are *only* non-portable *because* they can be switched off - there's no other strong reason. Before anyone jumps in with XML / XHTML arguments again, those issues are fairly rare and very easily worked around. My projects tend to use XHTML doctype because it makes IE7/8 behave more predictably without a <?xml ?> block, and I always use short tags for <?= because the alternative is so ugly! In the rare cases where I generate XML from a PHP script, there are workarounds for the <? problem.
I do tend to use <?php for blocks of code - so I guess I'm in the middle camp 
here.
I also write code to be hosted on dedicated systems that I have full control over, so php.ini settings are always in my control (so far...)
--- End Message ---
--- Begin Message ---
2010/3/18 Pete Ford <p...@justcroft.com>:
> On 17/03/10 18:59, Tommy Pham wrote:
>>
>> On Wed, Mar 17, 2010 at 11:01 AM, Rene Veerman<rene7...@gmail.com>  wrote:
>>>
>>> hmm.. seems easier to me to push a filetree of .php's with<?= through
>>> the str_replace(), than it is to get all the<?= writers to comply
>>> with your wishes, which may not apply to their situation ;-)
>>>
>>> On Wed, Mar 17, 2010 at 5:14 PM, tedd<tedd.sperl...@gmail.com>  wrote:
>>>>
>>>> At 8:55 PM -0400 3/16/10, Adam Richardson wrote:
>>>>>
>>>>> That said, I'm not taking exception with those who don't use the short
>>>>> tag, only with those who say I shouldn't.
>>>>
>>>> Exception or not, it's still your choice and using short tags can cause
>>>> problems.
>>>>
>>>> My view, why create problems when there is a solution? Forcing the issue
>>>> is
>>>> a bit like "I'm going to do it my way regardless!" I've traveled that
>>>> path
>>>> too many times in my life. Sometimes it's easier to take the path most
>>>> traveled.
>>>>
>>>> Cheers,
>>>>
>>>> ted
>>>> --
>>>> -------
>>>> http://sperling.com  http://ancientstones.com  http://earthstones.com
>>>>
>>>> --
>>>> 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
>>>
>>>
>>
>> http://www.php.net/manual/en/language.basic-syntax.phpmode.php
>>
>> "There are four different pairs of opening and closing tags which can
>> be used in PHP. Two of those,<?php ?>  and<script language="php">
>> </script>, are always available. The other two are short tags and ASP
>> style tags, and can be turned on and off from the php.ini
>> configuration file. As such, while some people find short tags and ASP
>> style tags convenient, they are less portable, and generally not
>> recommended. "
>
> But the implication there is that they are *only* non-portable *because*
> they can be switched off - there's no other strong reason. Before anyone
> jumps in with XML / XHTML arguments again, those issues are fairly rare and
> very easily worked around. My projects tend to use XHTML doctype because it
> makes IE7/8 behave more predictably without a <?xml ?> block, and I always
> use short tags for <?= because the alternative is so ugly! In the rare cases
> where I generate XML from a PHP script, there are workarounds for the <?
> problem.
> I do tend to use <?php for blocks of code - so I guess I'm in the middle
> camp here.
> I also write code to be hosted on dedicated systems that I have full control
> over, so php.ini settings are always in my control (so far...)
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>

I agree.
And I believe the persons ranting about short open tags are just like
some religious people. It's almost like a war between
Linux/Windows/Mac, IE/FF or ASP/PHP.
Also, people love to recommend things that others recommended before.
It mustn't make a big sense.

--- End Message ---
--- Begin Message ---
At 9:34 AM +0000 3/18/10, Pete Ford wrote:

I do tend to use <?php for blocks of code - so I guess I'm in the middle camp here.


Whoa, that's even worse -- make a choice and stick with it -- IMO.

I'm all for consistency and have often found myself redoing dozens of scripts because I changed something -- not because the change worked and the other didn't, but rather to maintain consistency throughout the project.

Granted, different reasons promote different programming styles. While what I do is to solve the problem at hand for the client, it also has to pass through my vision of code elegance. I program for myself first and solve the client's problems second. I also realize that I have the privilege of doing so because my needs are few. I probably wouldn't do well in a production oriented environment.

Cheers,

tedd

--
-------
http://sperling.com  http://ancientstones.com  http://earthstones.com

--- End Message ---
--- Begin Message ---
At 4:11 PM +0100 3/18/10, Jan G.B. wrote:
I agree.
And I believe the persons ranting about short open tags are just like
some religious people. It's almost like a war between
Linux/Windows/Mac, IE/FF or ASP/PHP.
Also, people love to recommend things that others recommended before.
It mustn't make a big sense.

Calling it "ranting" or "religious" unjustly demeans the discussion and is inflammatory.

In all of this, I've simply said it's your choice. While I "believe" and have stated my reasons, which are more than "faith", you are free to do whatever you want. I don't consider any of this discussion (on either side of the argument) as "religious' or "ranting" -- it's simply a discussion.

Cheers,

tedd

--
-------
http://sperling.com  http://ancientstones.com  http://earthstones.com

--- End Message ---
--- Begin Message ---
2010/3/18 tedd <tedd.sperl...@gmail.com>:
> Calling it "ranting" or "religious" unjustly demeans the discussion and is
> inflammatory.
> In all of this, I've simply said it's your choice.

What I said was:
*persons ranting about short open tags* *are just like some religious people
*

I did not address you.

On the other hand you're telling people here that their approach is "worse"
and yours is great. IMHO this isn't a discussion but bashing without any
reasoning.
You simply say that XML is confused by a short open tag, but actually PHP is
not embedded in XML.

I quote you:
> that's your choice -- but your decision is also a demonstration to your
client/employer/peers as to your desire to produce the "best" possible code.
> I look at code containing "<?=" the same way as I see html containing
tables and embedded styling for presentation -- "This must be old code OR
the programmer still doesn't get it".

You make it very clear that you believe in your superior coding style.

--- End Message ---
--- Begin Message ---
On Thu, 2010-03-18 at 19:21 +0800, I am on the top of the world!
Borlange University wrote:
> sounds good, i havnt checked out it with cvs format.
>  
> thanks
> 
> 
> On Tue, Mar 16, 2010 at 8:15 PM, Ashley Sheridan
> <a...@ashleysheridan.co.uk> wrote:
> 
>         
>         On Tue, 2010-03-16 at 20:16 +0800, I am on the top of the
>         world! Borlange University wrote: 
>         
>         > i have a problem of reading values from excel file via
>         > spreadsheet_excel_reader which is a php class used to manipulate 
> excel
>         > files.
>         > 
>         > $data = new Spreadsheet_Excel_Reader();
>         > $data->setOutputEncoding('CP936');
>         > $data->read("d:\\tmp.xls");
>         > $rows=$data->sheets[0]['numRows'];
>         > $cell = $data->sheets[0]['cells'][1][1];
>         > 
>         > if i type many rows,say 1000, in the tmp.xls, it can read, $rows 
> shows 1000,
>         > however, 1000 rows of data are copied from another excel file and 
> these
>         > cells may have different background or other changes that differ 
> from normal
>         > cells, it fails to read.the variable $rows shows nothing....what i 
> can do
>         > now is to split these data into small groups, small enough to be 
> read, it
>         > really takes plenty of time.
>         > 
>         > 
>         > i dont know why, has somebody met this problem ever?
>         
>         
>         
>         
>         If it's just the data you need, try using a csv file instead.
>         The Excel format is closed, and as such, the PHP classes won't
>         have full support for all of it's features. It seems like
>         formatting is causing the data to be written to the
>         spreadsheet differently maybe. 
>         
>         
>         
>         Thanks,
>         Ash
>         http://www.ashleysheridan.co.uk
>         
>         
>         
> 
> 


The .csv format is just a plain text format, so you won't get formatting
or formulas in your 'sheets' (csv is also a sheetless format) but it's
been used for years by many systems for data.

A lot of database systems will let you import csv files as well, which
is quite convenient, although you will have to make sure the csv uses
commas to delimit the data. Microsoft managed to basterdise this format
a bit as well, and lets you use tabs, spaces and all sorts of other
characters to delimit data fields. Someone obviously didn't mention to
them that the file type is 'comma separated values'!

Thanks,
Ash
http://www.ashleysheridan.co.uk



--- End Message ---
--- Begin Message ---
On Thu, 2010-03-18 at 12:56 +0100, Jochen Schultz wrote:

> > Microsoft managed to basterdise this format
>  > a bit as well, and lets you use tabs, spaces and all sorts of other
>  > characters to delimit data fields. Someone obviously didn't mention to
>  > them that the file type is 'comma separated values'!
> 
> Or maybe it is because someone told them, that there is data out there, 
> that might contain commas?
> 
> regards
> Jochen


The csv format allows for quote marks which can serve to escape commas:

"data, with commas"

And for escaping quote marks, you just use triple quote marks:

"some text """with quotes""" "

Thanks,
Ash
http://www.ashleysheridan.co.uk



--- End Message ---
--- Begin Message ---
> Microsoft managed to basterdise this format
> a bit as well, and lets you use tabs, spaces and all sorts of other
> characters to delimit data fields. Someone obviously didn't mention to
> them that the file type is 'comma separated values'!

Or maybe it is because someone told them, that there is data out there, that might contain commas?

regards
Jochen

--- End Message ---
--- Begin Message ---
On Thu, Mar 18, 2010 at 11:35:33AM +0000, Ashley Sheridan wrote:

<snip>

> 
> The .csv format is just a plain text format, so you won't get formatting
> or formulas in your 'sheets' (csv is also a sheetless format) but it's
> been used for years by many systems for data.
> 
> A lot of database systems will let you import csv files as well, which
> is quite convenient, although you will have to make sure the csv uses
> commas to delimit the data. Microsoft managed to basterdise this format
> a bit as well, and lets you use tabs, spaces and all sorts of other
> characters to delimit data fields. Someone obviously didn't mention to
> them that the file type is 'comma separated values'!

I process a lot of CSV files, and what I typically see is that Excel
will enclose fields which might contain commas in quotes. This gets
messy. So I finally wrote a C utility which parses the file and yields
tab-delimited records without the quotes.

Paul

-- 
Paul M. Foster

--- End Message ---
--- Begin Message --- AFAIK, there is no real standard out there for CSV file definition and since Microsoft and many others (me too btw) use other chars for field separation in so called CSV files, i think it is a good way to deal with it and let it be how it is (actually i have to look into every CSV file that is going to be exchanged and that has some advantages as well).

Btw. who told you to use tripple quotes?

http://www.rfc-editor.org/rfc/rfc4180.txt

   7.  If double-quotes are used to enclose fields, then a double-quote
       appearing inside a field must be escaped by preceding it with
       another double quote.  For example:

       "aaa","b""bb","ccc"

regards
Jochen

Ashley Sheridan schrieb:
On Thu, 2010-03-18 at 12:56 +0100, Jochen Schultz wrote:
> Microsoft managed to basterdise this format
 > a bit as well, and lets you use tabs, spaces and all sorts of other
 > characters to delimit data fields. Someone obviously didn't mention to
 > them that the file type is 'comma separated values'!

Or maybe it is because someone told them, that there is data out there, that might contain commas?

regards
Jochen

The csv format allows for quote marks which can serve to escape commas:

"data, with commas"

And for escaping quote marks, you just use triple quote marks:

"some text """with quotes""" "

Thanks,
Ash
http://www.ashleysheridan.co.uk




--- End Message ---
--- Begin Message ---
At 11:35 AM +0000 3/18/10, Ashley Sheridan wrote:
The .csv format is just a plain text format, so you won't get formatting
or formulas in your 'sheets' (csv is also a sheetless format) but it's
been used for years by many systems for data.

A lot of database systems will let you import csv files as well, which
is quite convenient, although you will have to make sure the csv uses
commas to delimit the data. Microsoft managed to basterdise this format
a bit as well, and lets you use tabs, spaces and all sorts of other
characters to delimit data fields. Someone obviously didn't mention to
them that the file type is 'comma separated values'!

Thanks,
Ash

Ash:

I remember many years ago I had a problem with M$ version of plain text csv files -- the first cell of each spreadsheet was different than all other cells. It took me a while to discover that difference and build in an exception.

I've found that M$ always has a better idea, even if they are the only ones who think so.

Cheers,

tedd

--
-------
http://sperling.com  http://ancientstones.com  http://earthstones.com

--- End Message ---
--- Begin Message ---
On Thu, Mar 18, 2010 at 8:40 AM, tedd <tedd.sperl...@gmail.com> wrote:
> At 11:35 AM +0000 3/18/10, Ashley Sheridan wrote:
>>
>> The .csv format is just a plain text format, so you won't get formatting
>> or formulas in your 'sheets' (csv is also a sheetless format) but it's
>> been used for years by many systems for data.
>>
>> A lot of database systems will let you import csv files as well, which
>> is quite convenient, although you will have to make sure the csv uses
>> commas to delimit the data. Microsoft managed to basterdise this format
>> a bit as well, and lets you use tabs, spaces and all sorts of other
>> characters to delimit data fields. Someone obviously didn't mention to
>> them that the file type is 'comma separated values'!
>>
>> Thanks,
>> Ash
>
> Ash:
>
> I remember many years ago I had a problem with M$ version of plain text csv
> files -- the first cell of each spreadsheet was different than all other
> cells. It took me a while to discover that difference and build in an
> exception.
>
> I've found that M$ always has a better idea, even if they are the only ones
> who think so.
>
> Cheers,
>
> tedd
>
> --

Personally, I find working with fixed widths is best.  The text file
might be larger but I don't have worry about escaping any type of
characters ;)

Regards,
Tommy

--- End Message ---
--- Begin Message ---
On Thu, Mar 18, 2010 at 08:57:00AM -0700, Tommy Pham wrote:

<snip>

> 
> Personally, I find working with fixed widths is best.  The text file
> might be larger but I don't have worry about escaping any type of
> characters ;)

I find this impossible, since I never know the largest width of all the
fields in a file. And a simple explode() call allows pulling all the
fields into an array, based on a common delimiter.

Paul

-- 
Paul M. Foster

--- End Message ---
--- Begin Message ---
Paul M Foster wrote:
I process a lot of CSV files, and what I typically see is that Excel
will enclose fields which might contain commas in quotes. This gets
messy. So I finally wrote a C utility which parses the file and yields
tab-delimited records without the quotes.

Paul

And fgetcsv() didn't work for you?

http://www.php.net/fgetcsv

Cheers,

Mattias

--- End Message ---
--- Begin Message ---
On Thu, 2010-03-18 at 12:12 -0400, Paul M Foster wrote:

> On Thu, Mar 18, 2010 at 08:57:00AM -0700, Tommy Pham wrote:
> 
> <snip>
> 
> > 
> > Personally, I find working with fixed widths is best.  The text file
> > might be larger but I don't have worry about escaping any type of
> > characters ;)
> 
> I find this impossible, since I never know the largest width of all the
> fields in a file. And a simple explode() call allows pulling all the
> fields into an array, based on a common delimiter.
> 
> Paul
> 
> -- 
> Paul M. Foster
> 


Explode won't work in the case of a comma in a field value.

Also, newlines can exist within a field value, so a line in the file
doesn't equate to a row of data

The best way is just to start parsing at the beginning of the file and
break it into fields one by one from there.

The bit I don't like about characters other than a comma being used in a
"comma separated values" file is that you can't automatically tell what
character has been used as the delimiter. Hence being asked by
spreadsheet programs what the delimiter is if a comma doesn't give up
what it recognises as valid fields.

Thanks,
Ash
http://www.ashleysheridan.co.uk



--- End Message ---
--- Begin Message ---
At 5:18 PM -0700 3/17/10, Tommy Pham wrote:
-snip-
  Below is how I'd do the db structure:

tbl_survey_questions:
questionId = int / uid << your call
languageId = int / uid / char << your call if you intend to I18n it ;)
question = varchar << length is your requirement
PK > questionId + languageId

tbl_participants:
userId = int / uid
userName = varchar
PK > userId

tbl_answers:
userId = int / uid
questionId = int / uid
languageId = int / uid
answer = varchar / mediumtext / or another type of text field
PK > userId + questionId + languageId

The reason why I'd structure it like this is:

Let's say you have question 1 with 5 (a-e) multiple choices, you
aggregrate your query (GROUP BY) to db for question 1 and see how many
responses are for a to e (each).  If your survey is I18n and your DB
reflects it, you can even analyze how/why certain cultural background
would choose each of those answer. (don't flame me... I know the
environment comes in to growing up too :p and that's way beyond the
scope of this list )


Tommy:

The way I handled this was that all responder aspects, such as cultural background, were all recorded before the responder started the survey. This was part an authorization process and the responders had to "earn" their way into the survey by providing personal data. If they did not, then they weren't allowed to enter the survey. Likewise, they had to turn javascript ON or they were not permitted to continue.

Please understand that in this survey, the purpose was that the client wasn't hoping for responders to fill out the survey (even though they would like them to), but rather providing a method for the membership to show their preferences in a union contract for their collective interest. As such, responders had a vested interest in participating. The survey would take between 20 to 60 minutes to complete and thus required a significant time investment.

Considering that each answer (or series) could be compared to any number of others, I thought it best to make each question/answer created an individual record -- the table was very simple:

survey_id
question_id
key1
key2
answer

1) The union wants several surveys like this, so I provided a survey_id.

2) The question_id was simply an identifier for the question -- a remote key to a question table.

3) Key1 and Key2 were simply values that were intended to tie the question/answer pairs together into a single event (i.e., a vote).

4) Answer -- what we are after.

This format lends itself well to analyses using MySQL.

Cheers,

tedd

--
-------
http://sperling.com  http://ancientstones.com  http://earthstones.com

--- End Message ---
--- Begin Message ---
Hi,
I am wanting to protect some pages by requiring a user to log in to
access them. I'd prefer this be as simple as possible, and without
requiring a database.
So for example when a user goes to www.domain.com/example.php they'll
get a page prompting for their log in credentials, and only after
providing them will the page display. I'd prefer to avoid basic
authentication dialog boxes if possible.
Suggestions appreciated.
Thanks.
Dave.

--- End Message ---
--- Begin Message ---
On Thu, 2010-03-18 at 11:40 -0400, David Mehler wrote:

> Hi,
> I am wanting to protect some pages by requiring a user to log in to
> access them. I'd prefer this be as simple as possible, and without
> requiring a database.
> So for example when a user goes to www.domain.com/example.php they'll
> get a page prompting for their log in credentials, and only after
> providing them will the page display. I'd prefer to avoid basic
> authentication dialog boxes if possible.
> Suggestions appreciated.
> Thanks.
> Dave.
> 


By basic authentication dialog boxes, do you mean the sort that come
with password protection added through the use of an .htaccess file?

If that's the case, then you're left with authenticating the same way
you'd do it with a database, but using some sort of flat file storage.
Ideally, this flat file would be kept out of your web root for
protection.

Thanks,
Ash
http://www.ashleysheridan.co.uk



--- End Message ---
--- Begin Message ---
On Thu, Mar 18, 2010 at 11:42 AM, Ashley Sheridan
<a...@ashleysheridan.co.uk> wrote:
>
> On Thu, 2010-03-18 at 11:40 -0400, David Mehler wrote:
>
> > Hi,
> > I am wanting to protect some pages by requiring a user to log in to
> > access them. I'd prefer this be as simple as possible, and without
> > requiring a database.
> > So for example when a user goes to www.domain.com/example.php they'll
> > get a page prompting for their log in credentials, and only after
> > providing them will the page display. I'd prefer to avoid basic
> > authentication dialog boxes if possible.
> > Suggestions appreciated.
> > Thanks.
> > Dave.
> >
>
>
> By basic authentication dialog boxes, do you mean the sort that come
> with password protection added through the use of an .htaccess file?
>
> If that's the case, then you're left with authenticating the same way
> you'd do it with a database, but using some sort of flat file storage.
> Ideally, this flat file would be kept out of your web root for
> protection.
>

Unless you want to have only one (or another very small number) login.
You can make a normal HTML form, then the code that processes the
$_POST data can just compare the username and password to the
"correct" username and password to login. You could make the valid
logins into an array and compare the $_POST data to the array of valid
logins.

Also, look into sessions.
http://us.php.net/manual/en/book.session.php

--- End Message ---

Reply via email to