Jump to content

saving radio button values


nadiam

Recommended Posts

i have an rsvp page where the table is populated by guests according to event selected in the drop down list. the rsvp table has 2 columns: guest names and status. status(radio button) is divided into 3: unconfirmed(default status), attending and not attending. user has to choose either one. but i am having trouble saving the status. tia for any help!

 

this is the saving code:

<?php
if(isset($_SESSION['sess_user_id']))
{
	if(isset($_POST['save-rsvp']))
	{
		require "connection.php";
		$name = $_POST['name'];
		$radio = $_POST['rsvp'];
		$session = $_SESSION['sess_user_id'];

		$rsvp = $dbh->prepare("UPDATE guest SET status = ? WHERE guser_id = ? AND guest_name = ?");

		$rad = implode("','", $radio);

		for($i = 0; $i < count($_POST['name']); $i++)
		{
			if(trim($_POST['name'][$i]) !== '')// validate this form
            {
				$rsvp->bindParam(1, $rad, PDO::PARAM_INT);
				$rsvp->bindParam(2, $session, PDO::PARAM_INT);
				$rsvp->bindParam(3, $name[$i], PDO::PARAM_STR);
				$rsvp->execute();
			}
		}
	}
}
?>

which when save doesn't save according to status selected. for example

 

5 names: noreen, pete, marzuki, nora, mishal

 

noreen                   unconfirmed

pete                       attending

marzuki                  attending

nora                       attending

mishal                   not attending

micah                    not attending

 

when saved, all is saved as unconfirmed.

 

noreen                   not attending

pete                      attending

marzuki                 not attending

nora                      attending

mishal                   not attending

micah                    attending

 

when saved, all is saved as not attending.

 

noreen                   attending

pete                       not attending

marzuki                 attending

nora                      not attending

mishal                   attending

micah                    not attending

 

when saved, all is saved as attending.

 

it seems to save according to first choice.

Link to comment
Share on other sites

you are using ->bindParam() incorrectly. the ->bindParam() statements should be before your loop. the only thing that should be inside your loop is the code that gets/produces and assigns the dynamic values to the variables that were bound to the place holders and the ->execute() method statement.

 

if you are submitting a radio button selection for each name, you would need to loop over both the array of radio inputs and the array of name inputs, using the same array index, to get the corresponding sets of radio/name values.

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.