php - 在 joomla 模块安装期间创建表

标签 php mysql sql joomla

我目前正在开发一个 joomla 模块(使用 joomla 2.5),我必须创建一个表才能使用它。

我遵循本教程:http://docs.joomla.org/J2.5:Creating_a_simple_module/Developing_a_Basic_Module但是当我安装它时,没有创建表。

这是我的 xml 文件:

<?xml version="1.0" encoding="utf-8"?>
<extension type="module" version="2.5.0" client="site" method="upgrade">
<name>Valid Order Module</name>
<author>Mathiewz</author>
<version>1.0.0</version>
<description>Module de validation des commandes !</description>
<files>
    <filename module="mod_valid_order">mod_valid_order.php</filename>
    <filename>index.html</filename>
    <filename>helper.php</filename>
    <filename>search.php</filename>
    <filename>export_gc.php</filename>
    <folder>tmpl</folder>
    <folder>img</folder>
    <folder>sql</folder>
</files>

<install>
    <sql>
        <file driver="mysql">sql/install.sql</file>
    </sql>
</install>
<update>
    <sql>
        <file driver="mysql">sql/install.sql</file>
    </sql>
</update>
<uninstall>
    <sql>
        <file driver="mysql">sql/uninstall.sql</file>
    </sql>
</uninstall>
<config>
</config>
</extension>

我直接在 phpmyadmin 上尝试了我的 sql 请求并且它有效,所以我认为问题出在 xml 文件中

最佳答案

您错过了 charset"" 参数。尝试使用以下内容:

<install>
    <sql>
         <file driver="mysql" charset="utf8">sql/install.sql</file>
    </sql>
</install>

这正是我们用于扩展的内容,因此它应该可以工作。

希望对你有帮助

关于php - 在 joomla 模块安装期间创建表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19684625/

相关文章:

php - 仅使用 docker-compose up 命令设置 Docker 容器

sql - ORDER BY 索引列仍然很慢

mysql - 内存中 SQL/NoSQL - 保持查询能力 - 可能使用 MySQL 或 SQL Server

sql - 如何用 Hive 做 Max in count(*)?

sql - 有没有办法在一个 SELECT 语句中执行此操作?使用分组依据

php - 在此服务器上找不到请求的 URL/blog/CodeIgniter_2.2.0/posts/post/5

php - MySQL 类别列表与单独的类别表

php - 从 Prestashop 后台的订单详细信息中获取数据库值

php - MySQL "Sending to client"进程正在备份

MySQL:合并下一个重复结果