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

HTML table Update row PHP/MySQL

P: n/a
Hi,

I have a dynamic HTML page with 4 columns of data, retrieved with PHP
from a MySQL database.
At the end of every row I have an UPDATE submit button, which activates
a php update script to update the database. I now encounter the problem
that in the update script I cannot trace back for which row the UPDATE
buttom was pressed.

I first had defined the UPDATE button as : <input name="update"
value="UPDATE" type="submit">. That doesn't work ...
If I change the definition to <input name="update" value=<? echo
"UPDATE".$nt['id']; ?type="submit">, then I can get the id number in
the update script, but the display is not that good, because you see
UPDATE1, UPDATE7,UPDATE4 and so on ...
So I need something, so I can find back in the update script for which
row the update button was pressed. Each row has his unique id (which is
not shown in the table)

Anyone has a suggestion on how to solve this ?

Thanks in advance.

Jan 24 '07 #1
Share this Question
Share on Google+
6 Replies


P: n/a
Rik
On Wed, 24 Jan 2007 17:56:33 +0100, rukkie <ru****@belgacom.netwrote:
I first had defined the UPDATE button as : <input name="update"
value="UPDATE" type="submit">. That doesn't work ...
If I change the definition to <input name="update" value=<? echo
"UPDATE".$nt['id']; ?type="submit">, then I can get the id number in
the update script, but the display is not that good, because you see
UPDATE1, UPDATE7,UPDATE4 and so on ...
So I need something, so I can find back in the update script for which
row the update button was pressed. Each row has his unique id (which is
not shown in the table)

Anyone has a suggestion on how to solve this ?
'<input name="update['.$id.']" value="UPDATE" type="submit">'

In the update:
$id = intval(reset(array_keys($_POST['update'])));
--
Rik Wasmus
* I'm testing several new newsreaders at the moment. Please excuse
possible errors and weird content. *
Jan 24 '07 #2

P: n/a
Thanks for the reply ....

Now I get some weird warning :

Warning: array_keys(): The first argument should be an array in
xxxx.php on line 9

and line 9 is the line with : $id =
intval(reset(array_keys($_POST['update'])));

Any suggestion of what could be wrong ?
On 24 jan, 18:03, Rik <luiheidsgoe...@hotmail.comwrote:
On Wed, 24 Jan 2007 17:56:33 +0100, rukkie <ruk...@belgacom.netwrote:
I first had defined the UPDATE button as : <input name="update"
value="UPDATE" type="submit">. That doesn't work ...
If I change the definition to <input name="update" value=<? echo
"UPDATE".$nt['id']; ?type="submit">, then I can get the id number in
the update script, but the display is not that good, because you see
UPDATE1, UPDATE7,UPDATE4 and so on ...
So I need something, so I can find back in the update script for which
row the update button was pressed. Each row has his unique id (which is
not shown in the table)
Anyone has a suggestion on how to solve this ?'<input name="update['.$id.']" value="UPDATE" type="submit">'

In the update:
$id = intval(reset(array_keys($_POST['update'])));
--
Rik Wasmus
* I'm testing several new newsreaders at the moment. Please excuse
possible errors and weird content. *
Jan 24 '07 #3

P: n/a
Message-ID: <11**********************@s48g2000cws.googlegroups .comfrom
rukkie contained the following:
>I first had defined the UPDATE button as : <input name="update"
value="UPDATE" type="submit">. That doesn't work ...
If I change the definition to <input name="update" value=<? echo
"UPDATE".$nt['id']; ?type="submit">, then I can get the id number in
the update script, but the display is not that good, because you see
UPDATE1, UPDATE7,UPDATE4 and so on ...
So I need something, so I can find back in the update script for which
row the update button was pressed. Each row has his unique id (which is
not shown in the table)

Anyone has a suggestion on how to solve this ?
One way is to make each row a separate form and use a hidden field. to
pass the id. Alternatively use checkboxes to get an array of ids and do
a multiple update with a single submit button.

--
Geoff Berrow (put thecat out to email)
It's only Usenet, no one dies.
My opinions, not the committee's, mine.
Simple RFDs http://www.ckdog.co.uk/rfdmaker/
Jan 24 '07 #4

P: n/a
Rik
On Wed, 24 Jan 2007 18:23:36 +0100, rukkie <ru****@belgacom.netwrote:
Thanks for the reply ....
Thank me by not topposting.
On 24 jan, 18:03, Rik <luiheidsgoe...@hotmail.comwrote:
>On Wed, 24 Jan 2007 17:56:33 +0100, rukkie <ruk...@belgacom.netwrote:
I first had defined the UPDATE button as : <input name="update"
value="UPDATE" type="submit">. That doesn't work ...
If I change the definition to <input name="update" value=<? echo
"UPDATE".$nt['id']; ?type="submit">, then I can get the id number in
the update script, but the display is not that good, because you see
UPDATE1, UPDATE7,UPDATE4 and so on ...
So I need something, so I can find back in the update script for which
row the update button was pressed. Each row has his unique id (which
is
not shown in the table)
Anyone has a suggestion on how to solve this ?'<input
name="update['.$id.']" value="UPDATE" type="submit">'

In the update:
$id = intval(reset(array_keys($_POST['update'])));

Now I get some weird warning :

Warning: array_keys(): The first argument should be an array in
xxxx.php on line 9
Did you alter the name of the input like I told you?
The HTML-source should look like: '<input name="update[123]"
value="UPDATE">';
After posting, var_dump $_POST to see what it contains.

--
Rik Wasmus
* I'm testing several new newsreaders at the moment. Please excuse
possible errors and weird content. *
Jan 24 '07 #5

P: n/a
Hi,

thanks a lot.

At the end I've got it working with this part of code : <?echo "<input
name=\"update[".$nt['id']."]\""; ?>
Some quotes and/or double quotes makes the difference

Thanks !!

On 24 jan, 18:49, Rik <luiheidsgoe...@hotmail.comwrote:
On Wed, 24 Jan 2007 18:23:36 +0100, rukkie <ruk...@belgacom.netwrote:
Thanks for the reply ....Thank me by not topposting.


On 24 jan, 18:03, Rik <luiheidsgoe...@hotmail.comwrote:
On Wed, 24 Jan 2007 17:56:33 +0100, rukkie <ruk...@belgacom.netwrote:
I first had defined the UPDATE button as : <input name="update"
value="UPDATE" type="submit">. That doesn't work ...
If I change the definition to <input name="update" value=<? echo
"UPDATE".$nt['id']; ?type="submit">, then I can get the id number in
the update script, but the display is not that good, because you see
UPDATE1, UPDATE7,UPDATE4 and so on ...
So I need something, so I can find back in the update script for which
row the update button was pressed. Each row has his unique id (which
is
not shown in the table)
Anyone has a suggestion on how to solve this ?'<input
name="update['.$id.']" value="UPDATE" type="submit">'
In the update:
$id = intval(reset(array_keys($_POST['update'])));
Now I get some weird warning :
Warning: array_keys(): The first argument should be an array in
xxxx.php on line 9Did you alter the name of the input like I told you?
The HTML-source should look like: '<input name="update[123]"
value="UPDATE">';
After posting, var_dump $_POST to see what it contains.

--
Rik Wasmus
* I'm testing several new newsreaders at the moment. Please excuse
possible errors and weird content. *
Jan 24 '07 #6

P: n/a
Rik
On Wed, 24 Jan 2007 20:04:32 +0100, rukkie <ru****@belgacom.netwrote:
thanks a lot.
You'd really thank me by starting to bottompost instead of toppost.
>'<input name="update['.$id.']" value="UPDATE" type="submit">'

In the update:
$id = intval(reset(array_keys($_POST['update'])));
Now I get some weird warning :
Warning: array_keys(): The first argument should be an array in
xxxx.php on line 9Did you alter the name of the input like I told you?
The HTML-source should look like: '<input name="update[123]"
value="UPDATE">';
After posting, var_dump $_POST to see what it contains.
At the end I've got it working with this part of code : <?echo "<input
name=\"update[".$nt['id']."]\""; ?>
Some quotes and/or double quotes makes the difference
That's why I said:
'<input name="update['.$id.']" value="UPDATE" type="submit">'
Seems a lot more readable then:
"<input name=\"update[".$nt['id']."]\"" value=\"UPDATE\"
type=\"submit\">";
--
Rik Wasmus
* I'm testing several new newsreaders at the moment. Please excuse
possible errors and weird content. *
Jan 24 '07 #7

This discussion thread is closed

Replies have been disabled for this discussion.