1

Need help with PHP Mysql code to insert multiple select data into database. With the current code i only get "Arry" in the ccaid field in the MySQL database, it should contain the Md5 code generated by first code.

Here is the code for Multiple Select data:

<?php include ('incl/_dbconnection.php'); include ('incl/_dbopen.php'); include ('_header.php'); $base1 = '<option value="'; $base2 = '">'; $base3 = '</option>'; $updatekey = md5(uniqid(mt_rand(), true)); $clientId = md5(uniqid(mt_rand(), true)); $subject = 'Complete your Registration'; mysql_query("INSERT INTO clients (clientid, cname, caddress, ctel, cfax, cmobile, cemail, cperson, cdescription, cproducts, cupdatekey, cwebsite, clastip, cvalidated) VALUES ('$clientId', '$_POST[company]', '$_POST[address]', '$_POST[tel]', '$_POST[fax]', '$_POST[mobile]', '$_POST[email]', '$_POST[person]', '$_POST[description]', '$_POST[products]', '$updatekey', '$_POST[website]', '$_POST[ipaddress]', '$_POST[validate]')"); ?> <div class="full-width-wrapper"> <div class="fixed-width-wrapper" id="body-content"> <div id="content" class="float-left content-left"> <h1 class="first-word sp"> <strong>Client Registered!</strong> </h1> <div id="mlogin" class="clear"> <h2 align="center"><strong>Choose Categories!</strong></h2> <br/> <table width="100%" border="0" class="m-table"> <thead> <tr> <td colspan="2" scope="col"> <div class="formRight"> <form action="registration_complete.php?id=<?php echo $clientId ;?>" method="post"> <select multiple="multiple" class="multiple" title="" name="categories[]"> <?php $SQL = "SELECT * FROM wdcategories ORDER BY `caname` ASC"; $result = mysql_query($SQL); while ($db_field = mysql_fetch_assoc($result)) { echo $base1; print $db_field['caid']; echo $base2; print $db_field['caname']; echo $base3; };?> </select> <br/><br/><br/> <button type="submit" class="black border-radius-3px bold submit" title=""> Complete Registration </button> </tr> </thead> </table></form> <div class="clear"> </div> </div> </div> <?php include ('_footer.php'); include ('incl/_dbclose.php'); ?> 

Here is the code that insert the multiple select data into the database:

<?php include ('incl/_dbconnection.php'); include ('incl/_dbopen.php'); include ('_header.php'); $id=$_GET['id']; $categories = $_POST['categories']; for ($i = 0; $i < count($categories); $i++) { $category = $categories[$i]; mysql_query("INSERT INTO ccategories (ccaid, cclientid) VALUES ('" . $_POST['categories'] . "','$id')"); } ?> <div class="full-width-wrapper"> <div class="fixed-width-wrapper" id="body-content"> <div id="content" class="float-left content-left"> <h1 class="first-word sp"> <strong>Client Listed!</strong> </h1> <div id="mlogin" class="clear"> <h2 align="center"><strong>Registration Completed!</strong></h2> <br/> <img src="images/success.png" width="256" height="256"> <br/> <h3 align="center"><a href="index.php">Click Here to add another Client</a></h3> <div class="clear"> </div> </div> </div> <?php include ('_footer.php'); include ('incl/_dbclose.php'); ?> 

1 Answer 1

1
mysql_query("INSERT INTO ccategories (ccaid, cclientid) VALUES ('" . $_POST['categories'] . "','$id')"); 

...should be...

mysql_query("INSERT INTO ccategories (ccaid, cclientid) VALUES ('" . $category . "','$id')"); 
Sign up to request clarification or add additional context in comments.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.