You do not have '
wrapped around your key accessors on your $_POST
variables that you pass directly to the query function (which you shouldn't...see below). However instead of showing you how to correct that, I will instead show you how to secure yourself from SQL injection a bit better.
As it stands, you're super vulnerable to SQL injection by simply allowing the user to post data directly to your database. Instead use a prepared statement
to combat this particular case.
$stmt = $mysqli->prepare('INSERT INTO info(username, password, first_name, last_name, location, email, pwv) VALUES(?,?,?,?,?,?,?)');
$stmt->bind_param('sssssss',
$_POST['username'],
$_POST['password'],
$_POST['firstname'],
$_POST['lastname'],
$_POST['location'],
$_POST['email'],
$_POST['pwv']);
$stmt->execute();
$stmt->store_result();
if( count( $stmt->num_rows ) > 0 ) {
//this is success
}