Change your conditional method. If successful, redirect; else show that it failed.
$conn = new mysqli($hn, $un, $pw, $db);
if ($conn->connect_error) {
die('Connect Error: ' . $conn->connect_error);
}
$query = "INSERT INTO colombia_plaza_new (lease_owner,request_poster,email,address,start_date,end_date,expected_rent, is_deposit,notes) VALUES" .
"('$name','$pos_name', '$email', '$apart', '$start', '$end', '$rent', '$deposit', '$how')";
$result = $conn->query($query);
if ($result)
{
echo "<meta http-equiv=\"refresh\" content=\"0;URL=page3.html\">";
$conn->close();
}
else
{
echo "INSERT failed: $query<br>" .
$conn->error . "<br><br>";
$checksum=1;
$conn->close();
}
Using mysqli_affected_rows()
is another option.
$conn = new mysqli($hn, $un, $pw, $db);
if ($conn->connect_error) {
die('Connect Error: ' . $conn->connect_error);
}
$query = "INSERT INTO colombia_plaza_new (lease_owner,request_poster,email,address,start_date,end_date,expected_rent, is_deposit,notes) VALUES" .
"('$name','$pos_name', '$email', '$apart', '$start', '$end', '$rent', '$deposit', '$how')";
$result = $conn->query($query);
if (mysqli_affected_rows($conn) > 0){
echo "<meta http-equiv=\"refresh\" content=\"0;URL=page3.html\">";
$conn->close();
}
else
{
echo "INSERT failed: $query<br>" .
$conn->error . "<br><br>";
$checksum=1;
$conn->close();
}
- However, another reason for this may be because your query may have failed.
Therefore, you'd be best to check if all your variables have indeed been filled and most likely coming from an HTML form, and using a conditional !empty()
for all of them.
At this point, it is unclear where and how your variables are being assigned.
Sidenote: Your present code is open to SQL injection. Use mysqli
with prepared statements, or PDO with prepared statements, they're much safer.