Drupal 到 zen cart sql 查询转换
Drupal to zen cart sql query conversion
我正在将 Drupal 模块移植到 Zen Cart,需要转换一些 sql 查询。由于需要转换的项目数量众多,我不能简单地更改一项然后测试我是否正确完成,但我不想全部完成然后发现我在每个项目上都犯了错误。过去我已经为 Zen Cart 移植了一些 OSCommerce,但这是我第一次尝试 Drupal 移植。
原来的Drupal代码是
function getCustomerData($customerId) {
$sql = "SELECT " . $this->fields['customer_firstname'] . " AS firstname, " .
$this->fields['customer_lastname'] . " AS lastname, " .
$this->fields['customer_email'] . " AS email" .
" FROM " . $this->tables['customers'] .
" WHERE " . $this->fields['customer_id'] . " = '$customerId'";
$query = $this->dbQuery($sql);
if ($this->dbNumRows($query)) {
$row = $this->dbFetchArray($query);
$customerData = array(
'firstname' => $row['firstname'],
'lastname' => $row['lastname'],
'email' => $row['email']
);
} else {
$customerData = false;
}
return $customerData;
}
我对转换代码的最佳猜测是
function getCustomerData($customerId) {
global $db;
$query = $db->Execute("SELECT customers_firstname AS firstname, customers_lastname AS lastname, customers_email AS email
FROM " . TABLE_CUSTOMERS . "
WHERE customers_id = ". $customerId ."");
if ($query->RecordCount()){
$customerData = array(
'firstname' => $query->fields['firstname'],
'lastname' => $query->fields['lastname'],
'email' => $query->fields['email']
);
} else {
$customerData = false;
}
return $customerData;
}
这里有任何 Drupal 和 Zen Cart 专家可以确认这是否正确,如果不正确,请指出正确的方向?
大功告成 - 只需调整字段名称并将客户 ID 转换为 int。如果您不想,您也不会 有 到 SELECT AS - 您可以按原样使用字段名称并在设置数组时更改它们。
函数 getCustomerData($customerId) {
全球 $db;
$query = $db->Execute("SELECT customers_firstname, customers_lastname, customers_email_address
FROM " . TABLE_CUSTOMERS . "
WHERE customers_id = '". (int)$customerId ."'");
if ($query->RecordCount()){
$customerData = array(
'firstname' => $query->fields['customers_firstname'],
'lastname' => $query->fields['customers_lastname'],
'email' => $query->fields['customers_email_address']
);
} else {
$customerData = false;
}
return $customerData;
}
我正在将 Drupal 模块移植到 Zen Cart,需要转换一些 sql 查询。由于需要转换的项目数量众多,我不能简单地更改一项然后测试我是否正确完成,但我不想全部完成然后发现我在每个项目上都犯了错误。过去我已经为 Zen Cart 移植了一些 OSCommerce,但这是我第一次尝试 Drupal 移植。
原来的Drupal代码是
function getCustomerData($customerId) {
$sql = "SELECT " . $this->fields['customer_firstname'] . " AS firstname, " .
$this->fields['customer_lastname'] . " AS lastname, " .
$this->fields['customer_email'] . " AS email" .
" FROM " . $this->tables['customers'] .
" WHERE " . $this->fields['customer_id'] . " = '$customerId'";
$query = $this->dbQuery($sql);
if ($this->dbNumRows($query)) {
$row = $this->dbFetchArray($query);
$customerData = array(
'firstname' => $row['firstname'],
'lastname' => $row['lastname'],
'email' => $row['email']
);
} else {
$customerData = false;
}
return $customerData;
}
我对转换代码的最佳猜测是
function getCustomerData($customerId) {
global $db;
$query = $db->Execute("SELECT customers_firstname AS firstname, customers_lastname AS lastname, customers_email AS email
FROM " . TABLE_CUSTOMERS . "
WHERE customers_id = ". $customerId ."");
if ($query->RecordCount()){
$customerData = array(
'firstname' => $query->fields['firstname'],
'lastname' => $query->fields['lastname'],
'email' => $query->fields['email']
);
} else {
$customerData = false;
}
return $customerData;
}
这里有任何 Drupal 和 Zen Cart 专家可以确认这是否正确,如果不正确,请指出正确的方向?
大功告成 - 只需调整字段名称并将客户 ID 转换为 int。如果您不想,您也不会 有 到 SELECT AS - 您可以按原样使用字段名称并在设置数组时更改它们。
函数 getCustomerData($customerId) { 全球 $db;
$query = $db->Execute("SELECT customers_firstname, customers_lastname, customers_email_address
FROM " . TABLE_CUSTOMERS . "
WHERE customers_id = '". (int)$customerId ."'");
if ($query->RecordCount()){
$customerData = array(
'firstname' => $query->fields['customers_firstname'],
'lastname' => $query->fields['customers_lastname'],
'email' => $query->fields['customers_email_address']
);
} else {
$customerData = false;
}
return $customerData;
}