Example #1
0
 private function getTableMeta()
 {
     $result = $pdo->query("SHOW COLUMNS FROM " . quoteName($table));
     $result->setFetchMode(PDO::FETCH_ASSOC);
     $meta = array();
     foreach ($result as $row) {
         $meta[$row['field']] = array('pk' => $row['key'] == 'PRI', 'type' => $row['type']);
     }
     print_r($meta);
     return $meta;
 }
Example #2
0
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$pdo->setAttribute(PDO::ATTR_CASE, PDO::CASE_LOWER);
switch ($pdo->getAttribute(PDO::ATTR_DRIVER_NAME)) {
    case 'mysql':
        $nameOpening = $nameClosing = '`';
        break;
    case 'mssql':
        $nameOpening = '[';
        $nameClosing = ']';
        break;
    default:
        $nameOpening = $nameClosing = '"';
        break;
}
function quoteName($name)
{
    return $nameOpening . str_replace($nameClosing, $nameClosing . $nameClosing, $name) . $nameClosing;
}
$result = $pdo->query("SHOW COLUMNS FROM " . quoteName($table));
$result->setFetchMode(PDO::FETCH_ASSOC);
$meta = array();
foreach ($result as $row) {
    $meta[$row['field']] = array('pk' => $row['key'] == 'PRI', 'type' => $row['type']);
}
$obj = new stdClass();
foreach ($meta as $key => $value) {
    $obj->{$key} = $value;
}
print_r($obj);
//return $meta;
print_r($meta);
Example #3
0
 public static function checkDeliveryPriceByWeight($carrier_id, $totalWeight, $zone_id)
 {
     $cache_key = $carrier_id . '_' . $totalWeight . '_' . $zone_id;
     if (!isset(self::$price_by_weight2[$cache_key])) {
         $db = JFactory::getDBO();
         $query = "SELECT delivery." . $db->quoteName('price') . " FROM " . $db->quoteName('#__jeproshop_delivery') . " AS delivery LEFT JOIN ";
         $query .= $db->quoteName('#__jeproshop_range_weight') . " AS range_weight ON delivery." . $db->quoteName('range_weight_id') . " = range_weight.";
         $query .= $db->quoteName('range_weight_id') . " WHERE delivery." . $db->quoteName('zone_id') . " = " . (int) $zone_id . " AND " . (double) $totalWeight;
         $query .= " >= range_weight." . $db->quoteName('delimiter1') . " AND " . (double) $totalWeight . " < range_weight." . $db->quoteName('delimiter2');
         $query .= " AND delivery." . $db->quoteName('carrier_id') . " = " . (int) $carrier_id . JeproshopCarrierModelCarrier::sqlDeliveryRangeShop('range_weight');
         $query .= " ORDER BY range_weight." . $db > quoteName('delimiter1') . " ASC";
         $db->setQuery($query);
         $result = $db->loadObject();
         self::$price_by_weight2[$cache_key] = isset($result->price);
     }
     return self::$price_by_weight2[$cache_key];
 }