Reputation: 21
I've looked at some of the other similar questions, but still can't seem to get it working. FWIW, I am not getting any specific error message.
<?php
// Create connection
$con=mysqli_connect("localhost","username","password");
mysqli_select_db($con, "database");
//let's start our session, so we have access to stored data
session_start();
$class = mysqli_real_escape_string($_SESSION['exclass']);
$fullname = mysqli_real_escape_string($_SESSION['fullname']);
$june = mysqli_real_escape_string($_SESSION['June']);
$july = mysqli_real_escape_string($_SESSION['July']);
$email = mysqli_real_escape_string($_POST['email']);
$phone = mysqli_real_escape_string($_POST['phone']);
//let's create the query
$insert_query = "INSERT INTO Responses (class,fullname,June,July,email,phone) VALUES ('$class','$fullname',$june,$july,'$email','$phone',)";
//let's run the query
$result = mysqli_query($con,$insert_query);
if($result){
echo "Your response has been recorded. Thank you!";
}else{
printf("Insert failed: %s\n", mysqli_error());
}
?>
Upvotes: 1
Views: 5052
Reputation: 15389
MySQL does not support trailing comma notation.
Thus, replace:
,'$phone',)
with
,'$phone')
Also, add a fallback condition to see the error output buffer:
mysqli_query($con, $insert_query) or die(mysqli_error($con));
Upvotes: 3
Reputation: 27356
"INSERT INTO Responses (class,fullname,June,July,email,phone) VALUES ('$class','$fullname',$june,$july,'$email','$phone',<--- LOOK AT THIS COMMA)
This will more than likely explain the failure to insert into the database. Remove the comma from the SQL string, and it will parse correctly.
Upvotes: 1