I have a funny problem with Drupal 7 and Views. I created programatically a simple form with two submit buttons (yes / no). This form is displayed on a full view of a node and when the 'yes' is pressed, it goes to a 'review' form which autofills the title with the one from the node. It works very well! function mymodule_form($form, &$form_state,$nodeid) { global $user; $form['nodeid'] = array( '#type' => 'value', '#value' => $nodeid, '#access' => false, ); $form['yes_button'] = array( '#type' => 'submit', '#value' => t('Yes'), '#submit' => array('yes_button_submit'), ); $form['no_button'] = array( '#type' => 'submit', '#value' => t('No'), '#submit' => array('no_button_submit'), ); return $form; } //Submit handlers function yes_button_submit($form, &$form_state) { $nodeid = $form_state['values']['nodeid']; drupal_goto('node/add/review', array('query'=>array('id'=>$nodeid))); } I decided to add the buttons on the teasers that I display in a Views block. I call the form through a function which is called via a Global Php field. Here is the code inside the Global Php field, having added 'content: nid' as a hidden field in the view: <?php $bling=mymodule_answers($row->nid); echo $bling; ?> With the bit of code from mymodule_answers: function mymodule_answers($nodeid) { $theform3 = drupal_get_form('mymodule_form',$nodeid); $output .= '<p class="text-center over">'.drupal_render($theform3).'</p>'; return $output; } My problem is that if the view is something like this: - Node 1 - Node 2 - Node 3 - Node 4 If I press 'yes' on any of the node teasers 2 to 4, then the review form is filled with the title of Node 1... meaning, the one at the top of the list! I have thought about creating uniquely named forms, but I wouldn't know how to automatically generate the differently named submit handlers. Any ideas?