You can use FIND_IN_SET() function to join two tables.
Try this:
SELECT r.name, r.cuisine_id, GROUP_CONCAT(c.cuisine_name)
FROM tbl_restaurant r
LEFT JOIN tbl_cuisine c ON FIND_IN_SET(c.cuisine_id, r.cuisine_id)
WHERE r.published =1 AND r.id = $id
GROUP BY r.id;
Check the SQL FIDDLE DEMO
OUTPUT
| NAME | CUISINE_ID | GROUP_CONCAT(C.CUISINE_NAME) |
|------|------------|------------------------------|
| abc | 1,2,6,8 | Nepali,Indian,Thai,Korean |