在joomla模块安装期间创建表

时间:2013-10-30 14:10:46

标签: 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文件中

2 个答案:

答案 0 :(得分:4)

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

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

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

希望这有帮助

答案 1 :(得分:1)

好吧,我发现了问题。

该表格未创建,因为在重新安装模块之前我没有将propers卸载...