By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
437,890 Members | 1,039 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 437,890 IT Pros & Developers. It's quick & easy.

PHP equivalent of ASP code

P: n/a
Hi all,

Im trying to duplicate this ASP code in PHP.

Basically its a form of 10 records pulled from an MySQL table. The
form lets the user update all 10 records at once if they want to.

Each text box I name using the ID of the database record and the
Database Field. Example: 3|Name (3 is the ID and Name is the
database field)

When the form is submitted this code is run:

for x = 1 to request.form.count()
if request.form.key(x) <> "Submit" then
curFld = request.form.key(x)
aryCats = split(curFld, "|")

ID = aryCats(1)
Field = aryCats(2)
Data = request.form(curFld)

strSQL = "UPDATE " & Table & " Set " & Field & "= '" & Data "'
WHERE ID = " & ID
'response.write strSQL
conn.execute strSQL

end if
next

The code loops thru all the objects on the form. It takes each object
name and splits it into an array using the | in the object name.

Is there anything in PHP that will count the number of objects on a
form and let you loop thu them like this script?

Thanks in advance,

Mark
ma********@ermsolutions.com
Jul 16 '05 #1
Share this Question
Share on Google+
7 Replies


P: n/a
ma**@ermsolutions.com (Mark) wrote in message
news:<a5**************************@posting.google. com>...

Im trying to duplicate this ASP code in PHP.

for x = 1 to request.form.count()
if request.form.key(x) <> "Submit" then
curFld = request.form.key(x)
aryCats = split(curFld, "|")
ID = aryCats(1)
Field = aryCats(2)
Data = request.form(curFld)
strSQL = "UPDATE " & Table & " Set " & Field & "= '" & Data "'
WHERE ID = " & ID
'response.write strSQL
conn.execute strSQL
end if
next
Well, if I follow your naming conventions, here's what I get:

foreach ($_REQUEST as $curFld => $Data) {
if ($curFld <> 'Submit') {
list ($ID, $Field) = explode('|', $curFld);
$strSQL = "UPDATE $Table SET $Field = '$Data' WHERE ID = $ID";
echo $strSQL;
$result = mysql_query ($strSQL)
or die ("Query failed: $strSQL");
}
}

Obviously, I don't know what database you are using, so I put in
a call to mysql_query(). If you are not using MySQL, you should
replace it with a function call appropriate for your database engine.
Is there anything in PHP that will count the number of objects on a
form and let you loop thu them like this script?


As you can see from the code above, in PHP you don't have to know
the number of elements in array to loop through it; foreach() takes
care of that for you...

Cheers,
NC
Jul 16 '05 #2

P: n/a
Nikolai Chuvakhin wrote on Thursday 04 September 2003 19:01:

Just couple of additional comments:

<snip>
for x = 1 to request.form.count() <snip>
foreach ($_REQUEST as $curFld => $Data) {


<snip>

If I am not mistaken, Request.Form is equivalent of $_POST
Is there anything in PHP that will count the number of objects on a
form and let you loop thu them like this script?


As you can see from the code above, in PHP you don't have to know
the number of elements in array to loop through it; foreach() takes
care of that for you...


It's also worth pointing out that if one was implementing a similar process
in PHP, one would simply use array elements as form element names, such as
ID[0], ID[1], etc., and then there wouldn't be a need to count or go
through all form elements, or implement an ugly hack of separating their
names by | either (which actually restricts how and in what order form
elements are submitted). Maybe of interest to the OP.

--
Business Web Solutions
ActiveLink, LLC
www.active-link.com/intranet/
Jul 16 '05 #3

P: n/a
Thanks for all the input.

Sorry I didnt mention that I can successfully update the records in
MySQL.

Also, the beauty of the asp code is I dont have to know the field
names. If I use array elements wouldnt I need to know the field names
before hand?

Basically I need to write this code and walk away for a couple years.

Ive given the users a tool that lets them update a table (add fields)
and that field would thn appear on the form. Completely dynamic and
out of my hands.

Assume that everything works. Have had this system working in asp for
3 years now. But I really want to move to linux and PHP.

would this also do the trick?
foreach($HTTP_POST_VARS as $key => $value)

Thanks

Mark
Jul 16 '05 #4

P: n/a
On 4 Sep 2003 14:44:23 -0700, ma**@ermsolutions.com (Mark) wrote:
Hi all,

Im trying to duplicate this ASP code in PHP.

Basically its a form of 10 records pulled from an MySQL table. The
form lets the user update all 10 records at once if they want to.

Each text box I name using the ID of the database record and the
Database Field. Example: 3|Name (3 is the ID and Name is the
database field)

When the form is submitted this code is run:

for x = 1 to request.form.count()
if request.form.key(x) <> "Submit" then
curFld = request.form.key(x)
aryCats = split(curFld, "|")

ID = aryCats(1)
Field = aryCats(2)
Data = request.form(curFld)

strSQL = "UPDATE " & Table & " Set " & Field & "= '" & Data "'
WHERE ID = " & ID
'response.write strSQL
conn.execute strSQL

end if
next

The code loops thru all the objects on the form. It takes each object
name and splits it into an array using the | in the object name.

Is there anything in PHP that will count the number of objects on a
form and let you loop thu them like this script?

Thanks in advance,

Mark
ma********@ermsolutions.com


Have you tried ASP2PHP and see what that does?

Jul 16 '05 #5

P: n/a
Zurab Davitiani <ag*@mindless.com> wrote in message
news:<vD******************@newssvr25.news.prodigy. com>...

<snip>
for x = 1 to request.form.count()

<snip>
foreach ($_REQUEST as $curFld => $Data) {

<snip>

If I am not mistaken, Request.Form is equivalent of $_POST


I couldn't remember, so I put in $_REQUEST just in case; it should
work anyway... Also, I've seen some ASP developers do stuff like
this:

<form method="post" action="do_something.asp?id=48">

I don't even want to guess what happens there... :)

Cheers,
NC
Jul 16 '05 #6

P: n/a
"Nikolai Chuvakhin" <nc@iname.com> wrote in message
news:32*************************@posting.google.co m...
<form method="post" action="do_something.asp?id=48">

I don't even want to guess what happens there... :)


There's nothing wrong with that... You have your form elements in $_POST and
the 'id' value set in $_GET.
Jul 16 '05 #7

P: n/a
<ba***@blues.no> wrote in message
news:<T4*********************@news2.telusplanet.ne t>...
"Nikolai Chuvakhin" <nc@iname.com> wrote in message
news:32*************************@posting.google.co m...

<form method="post" action="do_something.asp?id=48">

I don't even want to guess what happens there... :)


There's nothing wrong with that... You have your form elements
in $_POST and the 'id' value set in $_GET.


This is exactly why I used $_REQUEST in my code snippet...

Cheers,
NC
Jul 16 '05 #8

This discussion thread is closed

Replies have been disabled for this discussion.