SELECT jobs.id,jobs.title, jobs.budget, jobs.views_count, jobs.is_active, count(job_applications.id) as count
FROM jobs
LEFT JOIN job_applications ON job_applications.job_id = jobs.id WHERE jobs.user_id ='.$id.'' AND jobs.title=''.$title.' group by jobs.id
This query give error:
syntax error, unexpected '=', expecting ',' or ';'
The problem is with PHP, not with SQL.
You have messed up with single quotes.
Updated query:
$sql = "SELECT jobs.id,jobs.title, jobs.budget, jobs.views_count, jobs.is_active, count(job_applications.id) as count
FROM jobs
LEFT JOIN job_applications ON job_applications.job_id = jobs.id WHERE jobs.user_id ='$id' AND jobs.title='$title' group by jobs.id";
try like this
$your_query = "SELECT jobs.id,jobs.title, jobs.budget, jobs.views_count, jobs.is_active, count(job_applications.id) as count FROM jobs
LEFT JOIN job_applications ON job_applications.job_id = jobs.id WHERE jobs.user_id =".$id." AND jobs.title='".$title."' group by jobs.id";
Watch your quotes. Here is your query fixed without double use of quotes:
$query = 'SELECT
jobs.id,
jobs.title,
jobs.budget,
jobs.views_count,
jobs.is_active,
count(job_applications.id) as count
FROM jobs
LEFT JOIN job_applications ON job_applications.job_id = jobs.id
WHERE
jobs.user_id ='.$id.'
AND jobs.title='.$title.'
group by jobs.id';
If $title
pertains to a string, use the following, as pointed out by @daiscog:
$query = 'SELECT
jobs.id,
jobs.title,
jobs.budget,
jobs.views_count,
jobs.is_active,
count(job_applications.id) as count
FROM jobs
LEFT JOIN job_applications ON job_applications.job_id = jobs.id
WHERE
jobs.user_id ='.$id.'
AND jobs.title=\''.$title.'\'
group by jobs.id';
Change this
jobs.user_id ='.$id.'' AND jobs.title=''.$title.'
to
jobs.user_id ='.$id.' AND jobs.title='.$title.'