1

I have created a test form just to try to send my radio button value to mysql. I am having problems with it at the moment. The code below is just a test, I want the radio button to submit the value but it isn't.

    <table width="300" border="0" align="center" cellpadding="0" cellspacing="1">
<tr>
<td><form name="form1" method="post" action="insert_ac.php">
<table width="100%" border="0" cellspacing="1" cellpadding="3">
<tr>
<td colspan="3"><strong>TEST </strong></td>
</tr>
<tr>
<td width="71">Name</td>
<td width="6">:</td>
<td width="301"><input name="name" type="text" id="name"></td>
</tr>
<tr>
<td>Case</td>
<td>:</td>
<td><input name="case" type="radio" id="case1"> <input name="case" type="radio" id="case2"> <input name="case" type="radio" id="case3"></td>
</tr>
<tr>
<td>Email</td>
<td>:</td>
<td><input name="email" type="text" id="email"></td>
</tr>
<tr>
<td colspan="3" align="center"><input type="submit" name="Submit" value="Submit"></td>
</tr>
</table>
</form>
</td>
</tr>
</table>

And here is the connection part of the database

<?php

$host="localhost"; // Host name 
$username="root"; // Mysql username 
$password="123"; // Mysql password 
$db_name="store"; // Database name 
$tbl_name="test_mysql"; // Table name 

// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB");

// Get values from form 
$name=$_POST['name'];
$case=$_POST['case'];
$email=$_POST['email'];

// Insert data into mysql 
$sql="INSERT INTO $tbl_name(name, case, email)VALUES('$name', '$case', '$email')";
$result=mysql_query($sql);

// if successfully insert data into database, displays message "Successful". 
if($result){
echo "Successful";
echo "<BR>";
echo "<a href='insert.php'>Back to main page</a>";
}

else {
echo "ERROR";
}
?> 

<?php 
// close connection 
mysql_close();
?>
2
  • none of your radios have values so nothing will be posted - <input name="case" type="radio" id="case1"> <input name="case" type="radio" id="case2"> <input name="case" type="radio" id="case3"> -> value="yourvalue" -> <input name="case" type="radio" id="case1" value="yourvalue" /> Commented Aug 13, 2014 at 20:33
  • Many thanks will give this a shot a little later on Commented Aug 13, 2014 at 21:49

3 Answers 3

3

This is done by adding values to radio button input. For instance:

<form method="post">
<input type="radio" name="sex" value="male">Male<br>
<input type="radio" name="sex" value="female">Female
<input type="submit">
</form> 
Sign up to request clarification or add additional context in comments.

1 Comment

Many thanks for the help will try this and get back to you if I need extra assistance
0

You should start with closing all of your <input> tags with </input> or at least a slash at the end (like <input name="case" type="radio" id="case1"></input>).

You should set values to your radios (like this they always return 'on'), whereas the submit button needs neither name nor value.

EDIT:

Define a default radio with selected in yout input tag! If none is selected, there's no case getting transmitted and PHP will throw Undefined index: case when accessing $_POST['case'].

A good way to prevent such errors is to check if all necessary indices are set. You can do the following:

if(isset($_POST['name']) and isset($_POST['case']) and isset($_POST['email'])) { ... }

1 Comment

<input> doesn't have a closing tag! also HTML5 coding doesn't need a / either!
-2

   <!-- Once you have created Mysql connection and column in specified database table,-->
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "website";

// Create connection
$conn = mysqli_connect($servername, $username, $password,$dbname);

// Check connection
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}
else{
echo "Connected successfully";}           
$sql="INSERT INTO Registration(Name,FatherName,CNIC,FCNIC,Email,Password,Contact,Gender) VALUES ('$_POST[Name]','$_POST[FatherName]','$_POST[CNIC]','$_POST[FCNIC]','$_POST[Email]','$_POST[Password]','$_POST[Contact]','$_POST[Gender]')"; 
if (!mysqli_query($conn,$sql))
{
  die('Error:'.mysqli_error($conn));
}
echo "         & 1 record added";
mysqli_close($conn);




?>
 <!--after that you just need to  write this code and make sure to adjust this code because i'm posting some portion of my code."-->



<h4>Gender</h4> <input type="radio" value="Male"  name="Gender"> Male 
     &nbsp;&nbsp;&nbsp; 
<input type="radio" value="Female"   name="Gender" >Female <br><br>
        <button type="Submit">Submit</button><br>
//This answer is for you.

1 Comment

While this code may answer the question, providing additional context regarding why and/or how this code answers the question improves its long-term value.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.