genista Posted August 18, 2006 Share Posted August 18, 2006 Hi all,After messing around with this and making it complicated I have created a very simple script to allow a user to update their details. The problem sits with checkboxes that are not filled in come up as undefined indexes.I have a page with html that allows the user to update, it then passes all the data to this form for processing, I need some way in here of posting the data even when it is empty:[code=php:0]Session start information ect at the top then, <?php //now we need to get the information passed into us from the edit data form $first_name=addslashes($_POST['first_name']); $maiden_name=($_POST['maiden_name']); $last_name=($_POST['last_name']); $address_line1=($_POST['address_line1']); $address_line2=($_POST['address_line2']); $town=($_POST['town']); $county=($_POST['county']); $postcode=($_POST['postcode']); $daytime_phone=($_POST['daytime_phone']); $mobile_phone=($_POST['mobile_phone']); $evening_phone=($_POST['evening_phone']); $email_address=($_POST['email_address']); $test1=($_POST['test1']); $test2=($_POST['test2']); $query = "UPDATE users SET first_name='$first_name', maiden_name='$maiden_name', last_name='$last_name', address_line1='$address_line1', address_line2='$address_line2', town='$town', county='$county', postcode='$postcode', etc etc $result=mysql_query($query) or die("Could not insert data.".mysql_error()); //$result represents the status of the operation true if it worked false if it failed if($result){ print "Your details have been sucesfully updated. You can go back to the <a href=members.php>index</a> page now."; }else{ print "Could not update data."; } //finally close the connection mysql_close();[/code]Thanks,G Link to comment https://forums.phpfreaks.com/topic/17931-starting-again-updating-users-details/ Share on other sites More sharing options...
ToonMariner Posted August 18, 2006 Share Posted August 18, 2006 Check boxes and radio buttons are thopse little oddities that are NOT set if they are unchecked...In your script where you look to set the values sent by these elements simply use..$val = isset($_POST['chkbx1') ? $_POST['chkbx1'] : 'default';you can then have set your default to whatever value you like and NOT kill the query. Link to comment https://forums.phpfreaks.com/topic/17931-starting-again-updating-users-details/#findComment-76686 Share on other sites More sharing options...
genista Posted August 18, 2006 Author Share Posted August 18, 2006 Ok so I now have:[code=php:0] $password=($_POST['password']); $first_name=($_POST['first_name']); $last_name=($_POST['last_name']); $address_line1=($_POST['address_line1']); $address_line2=($_POST['address_line2']); $town=($_POST['town']); $county=($_POST['county']); $postcode=($_POST['postcode']); $daytime_phone=($_POST['daytime_phone']); $mobile_phone=($_POST['mobile_phone']); $email_address=($_POST['email_address']); $val = isset ($_POST['test1']) ? ($_POST['test1']) : 'NULL';Test1 being a checkbox.Then we have $query = "UPDATE suppliers SET first_name='$first_name', last_name='$last_name', password='$password', address_line1='$address_line1', address_line2='$address_line2', town='$town' , county='$county', postcode='$postcode', daytime_phone='$daytime_phone', mobile_phone='$mobile_phone', email_address='$email_address', test1='$test1', etc etc[/code]I am still getting an undefined inded as before, I assume I have misunderstood your answer.. Link to comment https://forums.phpfreaks.com/topic/17931-starting-again-updating-users-details/#findComment-76693 Share on other sites More sharing options...
genista Posted August 18, 2006 Author Share Posted August 18, 2006 Ok so now I have used before the $query the following code, but still no joy:[code=php:0]if (isset($_POST['submit'])) { if (isset($_POST['test1'])) {echo 'you checked the Beautician checkbox';} else {echo '';} } [/code]Any ideas as this is driving me nuts....Thanks,G Link to comment https://forums.phpfreaks.com/topic/17931-starting-again-updating-users-details/#findComment-76709 Share on other sites More sharing options...
ToonMariner Posted August 18, 2006 Share Posted August 18, 2006 Yeah.. you are still using $test1 in your query instead of $val!!!!!!! Link to comment https://forums.phpfreaks.com/topic/17931-starting-again-updating-users-details/#findComment-76721 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.