2012-06-03 4 views
1

안녕하세요 bussoc paypal 익스프레스 체크 아웃 옵션을 사용할 때마다 .. paypal 계정 로그인 및 지불 진행 버튼을 입력하면 mysql 서버 오류 메시지가 표시됩니다. 여기서 msg는 paypalOpencart Checkout 내 sql 오류

공지 사항 : 오류, SQL 구문에 오류가 있습니다. 가까운 구문을 사용하기 위해 올바른 구문을 보려면 MYSQL 서버 버전에 해당하는 매뉴얼을 확인하십시오. SET customer_id = '27 'WHERE order_id ='279 'at line 1

오류 번호 1064

UPD ATE 주문 SET customer_id = '27'WHERE order_id = '279'in home/public_html/site/system/database/mysql.php 줄 49 여기에 쿼리가 있습니다. 어디에서 변화가 필요한가?

<?php 
final class MySQL { 
private $connection; 

public function __construct($hostname, $username, $password, $database) { 
    if (!$this->connection = mysql_connect($hostname, $username, $password)) { 
     exit('Error: Could not make a database connection using ' . $username . '@' . $hostname); 
    } 

    if (!mysql_select_db($database, $this->connection)) { 
     exit('Error: Could not connect to database ' . $database); 
    } 

    mysql_query("SET NAMES 'utf8'", $this->connection); 
    mysql_query("SET CHARACTER SET utf8", $this->connection); 
    mysql_query("SET CHARACTER_SET_CONNECTION=utf8", $this->connection); 
    mysql_query("SET SQL_MODE = ''", $this->connection); 
} 

public function query($sql) { 
    $resource = mysql_query($sql, $this->connection); 

    if ($resource) { 
     if (is_resource($resource)) { 
      $i = 0; 

      $data = array(); 

      while ($result = mysql_fetch_assoc($resource)) { 
       $data[$i] = $result; 

       $i++; 
      } 

      mysql_free_result($resource); 

      $query = new stdClass(); 
      $query->row = isset($data[0]) ? $data[0] : array(); 
      $query->rows = $data; 
      $query->num_rows = $i; 

      unset($data); 

      return $query; 
     } else { 
      return true; 
     } 
    } else { 
     trigger_error('Error: ' . mysql_error($this->connection) . '<br />Error No: ' . mysql_errno($this->connection) . '<br />' . $sql); 
     exit(); 
    } 
} 

public function escape($value) { 
    return mysql_real_escape_string($value, $this->connection); 
} 

public function countAffected() { 
    return mysql_affected_rows($this->connection); 
} 

public function getLastId() { 
    return mysql_insert_id($this->connection); 
} 

public function __destruct() { 
    mysql_close($this->connection); 
} 
} 
?> 
+1

SQL 쿼리에 오류가 있습니다. 그 쿼리를 보여 주시겠습니까? –

답변

1

테이블 이름은 order입니다. 이것은 MySQL에서 예약 된 키워드입니다. 당신은 당신이 opencart를 설치 한 경우, 역 따옴표

당신이 추가 된 테이블 name.This 접두사에 대한 접두사를 추가해야
update `order` 
SET customer_id='27' 
WHERE order_id='279' 
+0

그것은 페이팔 체크 아웃과 관련된 모든 문제를 해결할 것입니까? 제발 내가 backticks 할 수있는 방법을 안내해주십시오 답장 덕분에 이해가 안 돼요 – kishmish

+0

당신이 보여주는 오류를 해결합니다. –

+0

내가 사이트에서 모든 제품과 함께 페이팔 익스프레스를 통해 결제 프로세스를 사용할 때마다이 문제에 직면합니다. – kishmish

1
update `oc_order` 
SET customer_id='27' 
WHERE order_id='279' 

으로 탈출해야합니다.

기본적으로 'oc_'입니다. 바꾸면 바뀝니다.