put $firstname above your line: 
// prepare and bind
$firstname = "John";
$stmt = $conn->prepare("INSERT INTO b4sonic (first_name) VALUES ('$firstname')");
2
solved Wrong parameter count for mysqli_stmt::bind_param() [closed]
 
put $firstname above your line: 
// prepare and bind
$firstname = "John";
$stmt = $conn->prepare("INSERT INTO b4sonic (first_name) VALUES ('$firstname')");
2
solved Wrong parameter count for mysqli_stmt::bind_param() [closed]