in a wordpress site, this code gives the following error I tried to change it to mysqli, but the same error anybody has an idea where is the problem, how to deal with. I searched a lot of answers here but non worked for me.
this code is part of file "class_design.php"
function MYORDERS($user_id){
global $wpdb,$PPT, $ThemeDesign, $userdata;
get_currentuserinfo(); 
$content=""; 
$dwl_content=""; 
$td=1; 
$STRING ='<input type="hidden" value="" id="moreinfodiv" name="moreinfodiv">';
$date_format = get_option('date_format') . ' ' . get_option('time_format');
if(!is_numeric($user_id)){ die("nice try!"); }
$SQL = "SELECT * FROM 
       ".$wpdb->prefix."orderdata
       WHERE cus_id='".$userdata->ID."'
       GROUP BY order_id
       ORDER BY autoid DESC";  
$posts = mysql_query($SQL, $wpdb->dbh) or die(mysql_error().' on line: '.__LINE__);
  if ($posts && mysql_num_rows($posts) > 0) {
    while ($thepost = mysql_fetch_object($posts)) { if($thepost->order_total > 0){
    if($thepost->order_status ==0){  
    $status = $PPT->_e(array('myaccount','_paymentstatus0'));
    }elseif($thepost->order_status ==3){ 
    $status = "<b style='color:green;'>".$PPT->_e(array('myaccount','_paymentstatus1'))."</b>";
    }elseif($thepost->order_status ==5){ 
    $status = "<b style='color:green;'>".$PPT->_e(array('myaccount','_paymentstatus2'))."</b>";
    }elseif($thepost->order_status ==6){  
    $status = "<b style='color:red;'>".$PPT->_e(array('myaccount','_paymentstatus3'))."</b>";
    }elseif($thepost->order_status ==7){ 
    $status = "<b style='color:blue;'>".$PPT->_e(array('myaccount','_paymentstatus4'))."</b>";
    }elseif($thepost->order_status ==8){ 
    $status = "<b>".$PPT->_e(array('myaccount','_paymentstatus5'))."</b>";
    }  

 
     
    