Warning: Undefined variable $post_id

Try this instead:

$posts_with_category = new WP_Query( $args );

if( $posts_with_category->have_posts() ) {

Instead of just checking if $posts_with_category is non-empty it checks if it’s an array of WP_Post objects.

We don’t have line numbers to see where the error is being thrown. Is line 47 your return statement?

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)