草庐IT

php - MySQL 数据库 I18N,一种 JSON 方法?

更新:几年后我遇到了这个问题:现在我知道这是一个非常糟糕的方法。请不要使用这个。您始终可以为i18n使用额外的表(例如products和products_lang),每个区域设置都有单独的条目:更好地用于索引,更好地用于搜索等。我正在尝试在MySQL/PHP站点中实现i18n。我读过一些回答说“i18n通常不是数据库的一部分”,我认为这是一种有点狭隘的方法。命名的产品,或者像我的例子一样,存储在数据库中的菜单结构和内容怎么样?我想知道您如何看待我的方法,考虑到语言应该是可扩展的,所以我试图避免“每种语言解决方案一栏”。一种解决方案是对要翻译的字符串使用引用(id),并且每个可翻译列都有

mysql - Magento 和重新索引目录上的错误 1452(违反完整性约束)

Magento拒绝重新索引我的产品目录。它正在记录此错误:2013-01-29T23:24:51+00:00DEBUG(7):Exceptionmessage:SQLSTATE[23000]:Integrityconstraintviolation:1452Cannotaddorupdateachildrow:aforeignkeyconstraintfails(`cjsquash_mgnt1`.`catalog_category_product_index`,CONSTRAINT`FK_CAT_CTGR_PRD_IDX_CTGR_ID_CAT_CTGR_ENTT_ENTT_ID`FO

php - 如何将此查询转换为 yii 查询?

这个问题在这里已经有了答案:howtoconvertthisqueryinyiiframeworkmodel(2个答案)关闭9年前。我希望将此Sql命令转换为yiicactivedataprovider格式,以便我可以向数据提供程序提供此条件。SELECT*FROM(SELECT(CASEWHENproduct_nameLIKE'%nokia%'THEN1ELSE0END+CASEWHENproduct_nameLIKE'%lumia%'THEN1ELSE0END+CASEWHENproduct_nameLIKE'%800%'THEN1ELSE0END)ASnumMatches,pro

php - MySQL 使用 "in"条件检索重复结果

在编码的所有方面,SQL是我最薄弱的技能,所以如果我听起来好像不知道自己在说什么,请原谅我,因为我可能不知道!情况:构建一个购物车,其中名为“cart”的表有一个名为“products”的字段,类型为VARCHAR255,“products”的值将是一个逗号分隔的字符串。字符串的每个元素都是一个数字,表示“产品”表中产品的ID。客户的记录可能在“产品”字段中包含一个类似于1,1,1,2,3的值。这意味着客户添加了项目1中的三个、项目2中的一个和项目3中的一个。问题:所以,这是我目前的sql语句,但问题是我需要一个sql语句,它会从产品表中返回重复的产品数据:SELECTproduct_

php - 将多个数组插入mysql数据库

每个input->post都是一个键/值数组。每个数组中的每个值都与数组的其余值匹配。因此,数据库插入的第一行将是所有数组键0中的所有数据。第二行将是1,依此类推。我如何使用此方法从post数组中获取所有数据并将它们插入数据库?$selected_size=$this->input->post('selected_size');$product_id=$this->input->post('product_id');$product_name=$this->input->post('product_name');$product_color=$this->input->post('pr

mysql - Doctrine - 导出mysql时首字母大写

当我将SQL从我的本地主机导出到我的服务器时,发生了一些非常奇怪/不寻常的事情。出于某种原因,Doctrine想要同一张表,但第一个字母是大写字母。例如,我有一个名为“cart”的表。一直都是这样,从来没有变过。在我的本地主机上,实体加载没有任何问题。我上传我的Symfony2项目,当我加载我的购物车实体时,Doctrine抛出一个错误,说“购物车”不存在。如果我将表格名称更改为“购物车”,它就会起作用。这是发生这种情况的第二个项目。有人遇到过同样的问题吗?如果是的话你是怎么解决的?错误信息是:SQLSTATE[42S02]:Basetableorviewnotfound:1146Ta

mysql - 反引号导致sql查询错误

SELECT`text`,`oc_product_to_category.product_id`FROM`oc_product_attribute`ASpaLEFTJOIN`oc_attribute_description`ASodONpa.`attribute_id`=od.`attribute_id`LEFTJOIN`oc_product_to_category`ASopcONpa.`product_id`=od.`product_id`由oc_product_to_category.product_id引起的问题。我删除了它并且它有效。据我所知,我可以这样做opc.product

mysql - MySQL 中特定的 ORDER BY 子句

我的MySQL数据库包含存储在4个类别中的多个产品。所有信息都在同一个表中:id-name-description-price-category我正在尝试按此顺序列出它们。我想知道如果可能的话只能通过MySQL请求来执行此操作。Cat1:product-name-with-lower-price1Cat2:product-name-with-lower-price1Cat3:product-name-with-lower-price1Cat4:product-name-with-lower-price1Cat1:product-name-with-lower-price2Cat2:pr

同题下PHP组sql查询

我正在尝试做一个人们可以看到菜单的餐厅网站。我有一个看起来像这样的表:现在我想根据标题输出这些数据:披萨火腿奶酪$150洋葱和奶酪$120沙拉凯撒$70西红柿和橄榄$60甜点冰淇淋$110Vanilla蛋糕$90-将来menu_title可以由客户端更改...这意味着还需要从数据库中检索标题。这是我正在尝试的代码,但我不知道如何在标题下方添加内容:prepare($sql_product);$stmt_product->execute();$result_product=$stmt_product->setFetchMode(PDO::FETCH_ASSOC);if($result_p

mysql - Mariadb 语法错误 1064 (42000)

因此,当我尝试在MariaDB中运行此脚本时出现错误,内容如下:“错误1064(42000):您的SQL语法有错误;请查看与您的MariaDB服务器版本对应的手册在附近使用的正确语法CREATETABLEcustomers(customer_idintNOTNULL,customer_f在第1行奇怪的是,MariaDB似乎正在读取命令的第一行,然后读取下一行的一点点作为1行。整个脚本如下:如果有人能提供帮助,我将不胜感激。DROPTABLEcustomers;DROPTABLEorders;DROPTABLEproducts;DROPTABLEorderitem;​CREATETABL