Please upgrade here. These earlier versions are no longer being updated and have security issues.
HackerOne users: Testing against this community violates our program's Terms of Service and will result in your bounty being denied.
Options

Fatal Error in PHP.trigger_error() - Table doesn't exist

Hello and sorry for my english :/

I had a FluxBB forum and I wanted to do it again with vanilla.

I did FluxBB -> MyBB with the official MyBB tool then MyBB -> Vanilla with Vanilla Porter.

I installed a clean version of vanilla on wampserver (apache 2.4.23, mysql 5.7.14, php 5.6.25), it works.

Now I want to send the whole on the production server (OVH perso, apache 2.2.22, MySql 5.6, php 5.6). I try two things:

  1. I exported my local database (sql file) then I imported it to the remote server, I sent all the forum on the server via FTP and I modified conf / config.php with the Connection information to my database. (I had tested from one local server to another and it worked)

But here I have the following error:

Fatal Error in PHP.trigger_error ();
Table 'xxxx.GDN_User' does not exist

Xxxx represents the name of my database (or my username? Because they are identical)
However, the GDN_User table is there. I do not really understand.

  1. I exported my local content with Vanilla Porter, I installed a clean version of vanilla on the remote server and I import the backup.

But there again, a mistake:

CommentCont can not be NULL (approximately, I no longer have the message in front of me)

And the import does not end.

If anyone can help me, it would be great :)

Best Answer

Answers

  • Options
    R_JR_J Ex-Fanboy Munich Admin

    @illysane said:
    Table 'xxxx.GDN_User' does not exist**

    I haven't ever seen that the database name is shown before the table name. Which config settings have you changed concerning the database? Only
    $Configuration['Database']['Name'],
    $Configuration['Database']['Host'],
    $Configuration['Database']['User'] and
    $Configuration['Database']['Password']?
    Or have you touched $Configuration['Database']['DatabasePrefix']? (You should have not)

    @illysane said:
    2. I exported my local content with Vanilla Porter, I installed a clean version of vanilla on the remote server and I import the backup.

    Vanilla porter is no Vanilla backup solution!

    If you install a clean version of Vanilla on your remote server and simply
    a) copy the /conf folder
    b) copy the /uploads folder
    c) import the sql backup
    you would have done what a backup mechanism would do.

    Afterwards you have to change the database credentials.
    It never hurts to delete all *.ini files in the /cache folder.

    And that's really all I can think of...


    Just one additional word of caution: after using Vanilla Porter, there can be all the exported files from your former forum in a subfolder of /uploads. You do not need them after you have imported the forum and should delete them there!

  • Options

    Thanks for your answer !

    I only change:

    $Configuration['Database']['Name'],
    $Configuration['Database']['Host'],
    $Configuration['Database']['User']
    $Configuration['Database']['Password']

    I will try your solution, I come back after that.

  • Options

    For strange reasons I have a "too many redirect" error when I upload Vanilla files on my server and try to go in /dashboard/setup.

    Other things to do today, I come back later..

  • Options
    R_JR_J Ex-Fanboy Munich Admin

    Please add $Configuration['Garden']['RewriteUrls'] = false; to /conf/config.php in order to get started. After that you would have to open /index.php?p=/dashboard/settings, but it would help you to find where there are things to fix left.

    If everything works with this line added to your config, you could start fixing .htaccess issues.

  • Options
    illysaneillysane New
    edited June 2017

    The config.php file does not exist since vanilla is not yet installed. I create this file and add the specified line but it does not change anything.

    On the other hand I looked at the contents of the .htaccess file which indicates the following lines:

    # If you modify this file then change the above line to: # Modified
    # Certain hosts may require the following line.
    # If vanilla is in a subfolder then you need to specify it after the /.
    # (ex. You put Vanilla in /forum so change the next line to: RewriteBase /forum)
    

    The new content of my .htacces file is:

    # Modified
    # If you modify this file then change the above line to: # Modified
    
    <IfModule mod_rewrite.c>
        RewriteEngine On
    
        # Certain hosts may require the following line.
        # If vanilla is in a subfolder then you need to specify it after the /.
        # (ex. You put Vanilla in /forum so change the next line to: RewriteBase /forum)
    
        RewriteBase /lerenardetlacawotte
    
        RewriteCond %{QUERY_STRING} ^p=/?([^&]+)(&([^?]+))?$
        RewriteRule ^index\.php %1?%3 [E=X_REWRITE:1,L]
    
        # The basic rewrite rule.
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule ^(.*)$ index.php [QSA,E=X_REWRITE:1,E=X_PATH_INFO:/$1,L]
    
        # Add the proper X_REWRITE server variable for rewritten requests.
        RewriteCond %{ENV:REDIRECT_X_REWRITE} .+
        RewriteCond %{ENV:REDIRECT_X_PATH_INFO} (.+)
        RewriteRule ^index\.php - [QSA,E=X_REWRITE:1,E=!REDIRECT_X_REWRITE,E=X_PATH_INFO:%1,E=!REDIRECT_X_PATH_INFO,L]
    
        # 301 redirect urls that start with index.php
        #RewriteCond %{REQUEST_METHOD} GET [NC]
        #RewriteCond %{REQUEST_URI} ^(.*?)/index\.php(.*)$
        #RewriteRule ^index\.php /%1%2 [QSA,R,L]
    </IfModule>
    
    <IfModule mod_headers.c>
       <FilesMatch "(?<!embed)\.(css|js|woff|ttf|eot|svg|png|gif|jpeg|jpg|ico|swf)$">
          Header set Cache-Control "max-age=315360000"
          Header set Expires "31 December 2037 23:59:59 GMT"
       </FilesMatch>
    </IfModule>
    

    I have no "too many redirect" error but a 500 internal server error..

  • Options
    R_JR_J Ex-Fanboy Munich Admin

    I thought you were starting from a clean install? And you've said that it is working.

    Please ask one question after the other: that makes answering much more easy ;)

    Are you able to install a fresh installation of Vanilla on you remote server? It doesn't take long to test that.
    (And if that will fail, you will never be able to run a ported forum that you were hosting locally before)

  • Options
    illysaneillysane New
    edited June 2017

    To clarify:

    1. I download vanilla here:

    https://open.vanillaforums.com/download

    1. I unzip the archive and I send the files to my server via FTP (on a sub folder -> /lerenardetlacawotte)

    2. And when I want to run the instalation, I have the Too many redirect error.

    3. I changed the .htacces as I showed it just before

    4. I have now a "500 internal server error"

  • Options
    R_JR_J Ex-Fanboy Munich Admin

    Please add $Configuration['Garden']['RewriteUrls'] = false; to /conf/config-defaults.php.

    You should delete that later but if this is just to get you started. If installation works that way, please search a little bit through this forum. There have been quite a lot .htaccess related discussions here recently.

  • Options

    @R_J said:
    Please add $Configuration['Garden']['RewriteUrls'] = false; to /conf/config-defaults.php.

    Ok, it's done, the sever try to go here: http://lerenardetlacawotte.com/index.php?p=/dashboard/setup but same error, too many redirects.

    Give up for today, thanks for your help.

  • Options
    R_JR_J Ex-Fanboy Munich Admin

    You have to use RewriteBase / or, in such a case, simply comment that line again so that it is not used.

    You would only need that entry if your forum were reachable at : http://lerenardetlacawotte.com/lerenardetlacawotte/index.php?p=/dashboard/setup

Sign In or Register to comment.