|
|
|
|
||||||
![]() |
|
|
LinkBack | Outils de la discussion |
|
|
#1 |
|
Messages: n/a
Hébergeur: |
Without giving a lot of script at this time, I am having a problem with
php and form input type="hidden". Problem is that the hidden variable displays last line from database query. Some code. if ($field_name=="member_lname") { echo "<input type='radio' name='selection' value=' " . $result['member_lname']. ',' .$result['member_fname'] ." ' > " . $result['member_lname'] . ', ' . $result['member_fname'] . "<br />"; echo "<input type='hidden' name='member_id' value=" . $result['member_id'] . " ' >" . $result['member_id'] . " />" ; } produces this from form: Back, Joe 0026 Clan, Bill 0025 Dant, Norbert 0020 Cleene, Nor 0013 De Wa, Frank 0012 Erick, B.C. 0006 Evans, Mary 0027 Far, Steve 0005 after selection from form $_POST produces correct name "Dant, Norbert" but grabs last number "0005" and not "0020". Any would be appreciated. |
|
|
|
#2 |
|
Messages: n/a
Hébergeur: |
dba wrote:
> Without giving a lot of script at this time, I am having a problem with > php and form input type="hidden". Problem is that the hidden variable > displays last line from database query. > > Some code. > if ($field_name=="member_lname") { > echo "<input type='radio' name='selection' value=' " . > $result['member_lname']. ',' .$result['member_fname'] ." ' > " . > $result['member_lname'] . ', ' . $result['member_fname'] . "<br />"; > echo "<input type='hidden' name='member_id' value=" . > $result['member_id'] . " ' >" . $result['member_id'] . " />" ; } > > produces this from form: > Back, Joe 0026 > Clan, Bill 0025 > Dant, Norbert 0020 > Cleene, Nor 0013 > De Wa, Frank 0012 > Erick, B.C. 0006 > Evans, Mary 0027 > Far, Steve 0005 > > after selection from form $_POST produces > correct name "Dant, Norbert" but grabs last number "0005" and not "0020". > > Any would be appreciated. > To get multiple values returned, you need to use an array, i.e. echo '<input type=hidden name="member_id[]" value="' . $result['member_id'] . '">'; -- ================== Remove the "x" from my email address Jerry Stuckle JDS Computer Training Corp. jstucklex@attglobal.net ================== |
|
|
|
#3 |
|
Messages: n/a
Hébergeur: |
Thank you. I will give that a try.
Jerry Stuckle wrote: > dba wrote: > >> Without giving a lot of script at this time, I am having a problem >> with php and form input type="hidden". Problem is that the hidden >> variable displays last line from database query. >> >> Some code. >> if ($field_name=="member_lname") { >> echo "<input type='radio' name='selection' value=' " . >> $result['member_lname']. ',' .$result['member_fname'] ." ' > " . >> $result['member_lname'] . ', ' . $result['member_fname'] . "<br />"; >> echo "<input type='hidden' name='member_id' value=" . >> $result['member_id'] . " ' >" . $result['member_id'] . " />" ; } >> >> produces this from form: >> Back, Joe 0026 >> Clan, Bill 0025 >> Dant, Norbert 0020 >> Cleene, Nor 0013 >> De Wa, Frank 0012 >> Erick, B.C. 0006 >> Evans, Mary 0027 >> Far, Steve 0005 >> >> after selection from form $_POST produces >> correct name "Dant, Norbert" but grabs last number "0005" and not "0020". >> >> Any would be appreciated. >> > > To get multiple values returned, you need to use an array, i.e. > > echo '<input type=hidden name="member_id[]" value="' . > $result['member_id'] . '">'; > |
|
|
|
#4 |
|
Messages: n/a
Hébergeur: |
Think you only use an array when you want multiple values put into one
variable/array. As you can see from the included code I am using two separate variables. One variable is 'selection' for 'member_lname' and the other is 'member_id' for 'member_id'. If I wanted both put into a variable, then I would use an array. Right? dba wrote: > Thank you. I will give that a try. > > > Jerry Stuckle wrote: > >> dba wrote: >> >>> Without giving a lot of script at this time, I am having a problem >>> with php and form input type="hidden". Problem is that the hidden >>> variable displays last line from database query. >>> >>> Some code. >>> if ($field_name=="member_lname") { >>> echo "<input type='radio' name='selection' value=' " . >>> $result['member_lname']. ',' .$result['member_fname'] ." ' > " . >>> $result['member_lname'] . ', ' . $result['member_fname'] . "<br />"; >>> echo "<input type='hidden' name='member_id' value=" . >>> $result['member_id'] . " ' >" . $result['member_id'] . " />" ; } >>> >>> produces this from form: >>> Back, Joe 0026 >>> Clan, Bill 0025 >>> Dant, Norbert 0020 >>> Cleene, Nor 0013 >>> De Wa, Frank 0012 >>> Erick, B.C. 0006 >>> Evans, Mary 0027 >>> Far, Steve 0005 >>> >>> after selection from form $_POST produces >>> correct name "Dant, Norbert" but grabs last number "0005" and not >>> "0020". >>> >>> Any would be appreciated. >>> >> >> To get multiple values returned, you need to use an array, i.e. >> >> echo '<input type=hidden name="member_id[]" value="' . >> $result['member_id'] . '">'; >> |
|
|
|
#5 |
|
Messages: n/a
Hébergeur: |
dba wrote:
> Think you only use an array when you want multiple values put into one > variable/array. As you can see from the included code I am using two > separate variables. One variable is 'selection' for 'member_lname' and > the other is 'member_id' for 'member_id'. > > If I wanted both put into a variable, then I would use an array. > > Right? > > > dba wrote: >> Thank you. I will give that a try. >> >> >> Jerry Stuckle wrote: >> >>> dba wrote: >>> >>>> Without giving a lot of script at this time, I am having a problem >>>> with php and form input type="hidden". Problem is that the hidden >>>> variable displays last line from database query. >>>> >>>> Some code. >>>> if ($field_name=="member_lname") { >>>> echo "<input type='radio' name='selection' value=' " . >>>> $result['member_lname']. ',' .$result['member_fname'] ." ' > " . >>>> $result['member_lname'] . ', ' . $result['member_fname'] . "<br />"; >>>> echo "<input type='hidden' name='member_id' value=" . >>>> $result['member_id'] . " ' >" . $result['member_id'] . " />" ; } >>>> >>>> produces this from form: >>>> Back, Joe 0026 >>>> Clan, Bill 0025 >>>> Dant, Norbert 0020 >>>> Cleene, Nor 0013 >>>> De Wa, Frank 0012 >>>> Erick, B.C. 0006 >>>> Evans, Mary 0027 >>>> Far, Steve 0005 >>>> >>>> after selection from form $_POST produces >>>> correct name "Dant, Norbert" but grabs last number "0005" and not >>>> "0020". >>>> >>>> Any would be appreciated. >>>> >>> >>> To get multiple values returned, you need to use an array, i.e. >>> >>> echo '<input type=hidden name="member_id[]" value="' . >>> $result['member_id'] . '">'; >>> > If you don't want to use an array, then you can't place multiple values in the same field name. It works or radio buttons because the group together only sends one value. But hidden fields send one value for each field in the form. And if you don't use an array, PHP will just overlay each previous value with the next one of the same name. The result is you get only the last field. -- ================== Remove the "x" from my email address Jerry Stuckle JDS Computer Training Corp. jstucklex@attglobal.net ================== |
|
|
|
#6 |
|
Messages: n/a
Hébergeur: |
It wont work the way you are trying to do it. You would need to have both
values in the the select or radio value. Then explode it or something. There is no way to link the hidden field to the correct value of the select in your code. if ($field_name=="member_lname") { echo "<input type='radio' name='selection' value='{$result['member_lname']},{$result['member_fname']}:{$result['member_id']}'> {$result['member_lname']},{$result['member_fname']}<br />"; } $value = explode(":",$_REQUEST['selection']); $name = $value[0]; $id = $value[1]; There are many ways to do this this is just a quick example. Also If you use this code be sure to scrub the $_REQUEST var Eric Haskins PHP Programmer Parked.com |
|
![]() |
| Outils de la discussion | |
|
|