Ваш заполненный запрос не может принять SQL String в качестве col_id.
$redIDSQL = "SELECT id FROM colours WHERE colour = '$red'";
$redIDQuery=$conn->query($redIDSQL);
$redIDArray=array();
while($redIDResult=mysqli_fetch_assoc($redIDQuery)){
$redIDArray[]=$redIDResult['id'];
}
if(count($redIDArray)>0){
$populateSQL = "INSERT INTO numbers (col_id) VALUES ('".implode("'),('",$redID)."')";
$populateQuery=$conn->query($populateSQL);
}else{
echo "redID could not be found with colour matching ".$red;
}