PHP/MYSQL Help: Best way to enter text with special characters in an SQL TEXT column

I wish to enter text with special characters in biography, research, publications, and Projects into their respective TEXT columns. I used VARCHAR for the rest of the variables. However, when I run this, SQL returns a #1064 error for every special character in these variables. Here is my code:

``` 
if (!$conn) {
die('No pudo conectarse: ' . $conn->error($e)); // Failed to Connect
}

$sql = "INSERT INTO $table (FULL_NAME, PHONE_EXT, PRIMARY_MAIL, ALT_MAIL, POSITION, DEPARTMENT,  BIOGRAPHY, PROJECTS, RESEARCH_AREAS, RESEARCH_DESCRIPTION, MENTORING, PUBLICATIONS, ORCID_LINK)VALUES ('$name','$phone','$p_mail','$alt_mail','$pos','$dept', '$bio','$projects','$res_areas, '$res_desc', '$mentoring','$pubs','$orcid_link')";


 // Query to Select all publications

// Query to Select all publications
$mysqli = $conn->query($sql);
if (!$mysqli){
  echo "Error #". $conn->errno . " \n";
  echo $conn->error;
} else{
  echo "Success!"
}

```

But when I previously tried this:

$projects = real_escape_string(addslashes($projects));

This too returned the same error everytime I used this method on my variables, plus the data would be different in the table than what would be entered.