nadiam Posted October 14, 2014 Share Posted October 14, 2014 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. Quote Link to comment https://forums.phpfreaks.com/topic/291611-saving-radio-button-values/ Share on other sites More sharing options...
mac_gyver Posted October 14, 2014 Share Posted October 14, 2014 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. Quote Link to comment https://forums.phpfreaks.com/topic/291611-saving-radio-button-values/#findComment-1493494 Share on other sites More sharing options...
nadiam Posted October 14, 2014 Author Share Posted October 14, 2014 but doesn't my ->bindParam() need to be in the loop coz of [$i] ? Quote Link to comment https://forums.phpfreaks.com/topic/291611-saving-radio-button-values/#findComment-1493497 Share on other sites More sharing options...
Frank_b Posted October 14, 2014 Share Posted October 14, 2014 Why do you check on id AND name in the where claus? If the id is unique than that would be enough. Quote Link to comment https://forums.phpfreaks.com/topic/291611-saving-radio-button-values/#findComment-1493508 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.