Resource icon

vB4 Importer 3.6b2

No permission to download

Jake Bunce

XenForo moderator
Staff member
Could i uncheck that option at this moment and continue with the import? or may i have to restart the import?
You should restart.

An alternative might be to manually remove the offending thread/post/whatever from the database:

http://xenforo.com/community/threads/import-question-second-import-over-old-one.16663/#post-311819

But this is a dirty thing to do.

The actual option to preserve the source ids is stored in the import session. The import session is stored in the xf_data_registry table (data_key = importSession). You can run this query to view the information:

Code:
SELECT CONVERT(data_value USING utf8)
FROM xf_data_registry
WHERE data_key = 'importSession';
The information is serialized and the field is not normally directly editable. And it might not be safe to change mid-import.

I recommend starting over.
 

Ahmed

Well-known member
Hi Jack,

Thanks for this importer, it seems great.
Anyway, I seriously am thinking about importing my vB4 forum to XF, and I have a question:
Is this importer able to convert all of my data from Arabic to UTF-8?
 

Nasr

Well-known member
Hi Jack,

Thanks for this importer, it seems great.
Anyway, I seriously am thinking about importing my vB4 forum to XF, and I have a question:
Is this importer able to convert all of my data from Arabic to UTF-8?
Hey Ahmed long time. It should convert like the one for vb 3.8.
 

Jake Bunce

XenForo moderator
Staff member
Hi Jack,

Thanks for this importer, it seems great.
Anyway, I seriously am thinking about importing my vB4 forum to XF, and I have a question:
Is this importer able to convert all of my data from Arabic to UTF-8?
Yes. The first step asks you for the $config['Mysqli']['charset'] from vB's config file if you have specified one. Then it converts all imported content to UTF-8.
 

Ahmed

Well-known member
Hi Nasr,

It has been really long time, but I'm back now (I hope, at least ;)).

Anyway, thanks for the answer. I think I need to do some testing and see how it goes. :)
 

Nasr

Well-known member
Yes. The first step asks you for the $config['Mysqli']['charset'] from vB's config file if you have specified one. Then it converts all imported content to UTF-8.
I actually left it blank even though i had that set to utf8 in vb 3.8 and it worked while when i changed that setting to utf8 it didnt work
 

Adam Howard

Well-known member
Question:

Do I need to run the importer again after upgrading XenForo?

Answer:

NO.

The only time you should ever run the importer is to import either for the first time OR to import another site into your current site (merging). If you're done with the importer, you can even uninstall it & re-install it should the need come up in the future.

:)
 

WhiteHat

Member
Thx for answer Jake!

Code:
-------------------------------------------------------------
 
Forum URL:
 
before:
 
http://domain.com/forums/thread/
 
after:
 
http://domain.com/forums/thread.36/
 
-------------------------------------------------------------
 
Member Profile URL:
 
before:
 
http://domain.com/members/member-152/
 
after:
 
http://domain.com/members/member.152/
 
-------------------------------------------------------------
 

Jake Bunce

XenForo moderator
Staff member
Thx for answer Jake!

Code:
-------------------------------------------------------------
 
Forum URL:
 
before:
 
http://domain.com/forums/thread/
 
after:
 
http://domain.com/forums/thread.36/
 
-------------------------------------------------------------
 
Member Profile URL:
 
before:
 
http://domain.com/members/member-152/
 
after:
 
http://domain.com/members/member.152/
 
-------------------------------------------------------------
Is that old thread URL right? It has no id.

For the members, add this to your .htaccess file in the web root:

Code:
RewriteRule ^members/member-([0-9]+)/ /members/member.$1/ [R=301,L]
In XenForo's .htaccess file this should go right after this line:

Code:
RewriteEngine On
 

ggace

Active member
Brand new to xenforo & extremely excited to get things going! So far I have one problem with the importer when attempting to convert the customer user fields, I receive the following:

Code:
Server Error
 
Undefined index: field43_title
 
XenForo_Application::handlePhpError() in XenForo/Importer/vBulletin.php at line 520
 
XenForo_Importer_vBulletin->stepUserFields() in XenForo/Importer/Abstract.php at line 77
 
XenForo_Importer_Abstract->runStep() in XenForo/ControllerAdmin/Import.php at line 180
 
XenForo_ControllerAdmin_Import->_runStep() in XenForo/ControllerAdmin/Import.php at line 232
 
XenForo_ControllerAdmin_Import->_startStep() in XenForo/ControllerAdmin/Import.php at line 175
    XenForo_ControllerAdmin_Import->actionStartStep() in XenForo/FrontController.php at line 310
 
XenForo_FrontController->dispatch() in XenForo/FrontController.php at line 132
 
XenForo_FrontController->run() in /home/******/public_html/forum/admin.php at line 13
I uploaded the files & ran the importer. I can see the files in the applicable directories but can't see what's causing the error. Would this be a permission issue?

Any help is appreciated =)

Your friend
~Gg
 

Jake Bunce

XenForo moderator
Staff member
Brand new to xenforo & extremely excited to get things going! So far I have one problem with the importer when attempting to convert the customer user fields, I receive the following:

Code:
Server Error
 
Undefined index: field43_title
 
XenForo_Application::handlePhpError() in XenForo/Importer/vBulletin.php at line 520
 
XenForo_Importer_vBulletin->stepUserFields() in XenForo/Importer/Abstract.php at line 77
 
XenForo_Importer_Abstract->runStep() in XenForo/ControllerAdmin/Import.php at line 180
 
XenForo_ControllerAdmin_Import->_runStep() in XenForo/ControllerAdmin/Import.php at line 232
 
XenForo_ControllerAdmin_Import->_startStep() in XenForo/ControllerAdmin/Import.php at line 175
    XenForo_ControllerAdmin_Import->actionStartStep() in XenForo/FrontController.php at line 310
 
XenForo_FrontController->dispatch() in XenForo/FrontController.php at line 132
 
XenForo_FrontController->run() in /home/******/public_html/forum/admin.php at line 13
I uploaded the files & ran the importer. I can see the files in the applicable directories but can't see what's causing the error. Would this be a permission issue?

Any help is appreciated =)

Your friend
~Gg
That likely indicates missing data in your vB database. The phrase is missing.

Login to your vB Admin CP and edit/save field43:

Admin CP -> User Profile Fields -> User Profile Field Manager

That may fix the error.
 

ggace

Active member
That was strange. I had a "hidden" field but that was most certainly the culprit. Removing this resolved the issue. Thank you!
 

ggace

Active member
This should be my last & only error as I can't see any problems happening in the last few fields.

Code:
Server Error
 
Mysqli statement execute error : Duplicate entry '36' for key 'PRIMARY'
 
    Zend_Db_Statement_Mysqli->_execute() in Zend/Db/Statement.php at line 297
    Zend_Db_Statement->execute() in Zend/Db/Adapter/Abstract.php at line 479
    Zend_Db_Adapter_Abstract->query() in Zend/Db/Adapter/Abstract.php at line 574
    Zend_Db_Adapter_Abstract->insert() in XenForo/DataWriter.php at line 1591
    XenForo_DataWriter->_insert() in XenForo/DataWriter.php at line 1580
    XenForo_DataWriter->_save() in XenForo/DataWriter.php at line 1381
    XenForo_DataWriter->save() in XenForo/Model/Import.php at line 1718
    XenForo_Model_Import->importPostAttachment() in XenForo/Importer/myvbulletin4.php at line 237
    XenForo_Importer_myvBulletin4->_makeAttachment() in XenForo/Importer/myvbulletin4.php at line 557
    XenForo_Importer_myvBulletin4->stepAlbums() in XenForo/Importer/Abstract.php at line 77
    XenForo_Importer_Abstract->runStep() in XenForo/ControllerAdmin/Import.php at line 180
    XenForo_ControllerAdmin_Import->_runStep() in XenForo/ControllerAdmin/Import.php at line 132
    XenForo_ControllerAdmin_Import->actionImport() in XenForo/FrontController.php at line 310
    XenForo_FrontController->dispatch() in XenForo/FrontController.php at line 132
    XenForo_FrontController->run() in /home/******/public_html/admin.php at line 13
 

Jake Bunce

XenForo moderator
Staff member
This should be my last & only error as I can't see any problems happening in the last few fields.

Code:
Server Error
 
Mysqli statement execute error : Duplicate entry '36' for key 'PRIMARY'
 
    Zend_Db_Statement_Mysqli->_execute() in Zend/Db/Statement.php at line 297
    Zend_Db_Statement->execute() in Zend/Db/Adapter/Abstract.php at line 479
    Zend_Db_Adapter_Abstract->query() in Zend/Db/Adapter/Abstract.php at line 574
    Zend_Db_Adapter_Abstract->insert() in XenForo/DataWriter.php at line 1591
    XenForo_DataWriter->_insert() in XenForo/DataWriter.php at line 1580
    XenForo_DataWriter->_save() in XenForo/DataWriter.php at line 1381
    XenForo_DataWriter->save() in XenForo/Model/Import.php at line 1718
    XenForo_Model_Import->importPostAttachment() in XenForo/Importer/myvbulletin4.php at line 237
    XenForo_Importer_myvBulletin4->_makeAttachment() in XenForo/Importer/myvbulletin4.php at line 557
    XenForo_Importer_myvBulletin4->stepAlbums() in XenForo/Importer/Abstract.php at line 77
    XenForo_Importer_Abstract->runStep() in XenForo/ControllerAdmin/Import.php at line 180
    XenForo_ControllerAdmin_Import->_runStep() in XenForo/ControllerAdmin/Import.php at line 132
    XenForo_ControllerAdmin_Import->actionImport() in XenForo/FrontController.php at line 310
    XenForo_FrontController->dispatch() in XenForo/FrontController.php at line 132
    XenForo_FrontController->run() in /home/******/public_html/admin.php at line 13
It appears that you enabled the import option to preserve the source ids (checkbox at beginning). If you enable that option then the XF forum must be empty and brand new. If you had previously posted an attachment on your XF forum then it can result in a collision like this during the import.

The solution is to delete the offending attachment from your XF forum or restart the import and disable the option to preserve the source ids.
 

ggace

Active member
Thank you again. The install itself was fresh. No forum boards or anything else were created as I installed the forum & came straight to the importer. I was not able to continue with the import & was not willing to start over (2 hours to move over threads & posts). With that said, I didn't need the remaining content & everything else worked perfectly. Thank you for your quick support & great import tool.

Your friend
~Gg
 

WhiteHat

Member
Is that old thread URL right? It has no id.

For the members, add this to your .htaccess file in the web root:

Code:
RewriteRule ^members/member-([0-9]+)/ /members/member.$1/ [R=301,L]
In XenForo's .htaccess file this should go right after this line:

Code:
RewriteEngine On
Sorry, don't work, my .htaccess:

Code:
 <IfModule mod_expires.c>
  FileETag MTime Size
  ExpiresActive on
 
  ExpiresByType application/javascript "access plus 1 week"
  ExpiresByType application/x-javascript "access plus 1 week"
  ExpiresByType application/x-shockwave-flash "access plus 1 week"
 
  ExpiresByType text/css "access plus 1 week"
 
  ExpiresByType image/jpg "access plus 1 month"
  ExpiresByType image/jpeg "access plus 1 month"
  ExpiresByType image/gif "access plus 1 month"
  ExpiresByType image/png "access plus 1 month"
  ExpiresByType image/x-icon "access plus 6 month"
  ExpiresByType image/ico "access plus 6 month"
 
  </IfModule>
 
#    Mod_security can interfere with uploading of content such as attachments. If you
#    cannot attach files, remove the "#" from the lines below.
#<IfModule mod_security.c>
#    SecFilterEngine Off
#    SecFilterScanPOST Off
#</IfModule>
 
ErrorDocument 401 default
ErrorDocument 403 default
ErrorDocument 404 default
ErrorDocument 500 default
 
<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule ^members/member-([0-9]+)/ /members/member.$1/ [R=301,L]
    RewriteRule [^/]+-[\d]+/.+-([\d]+)/index([\d]+).html showthread.php?t=$1&page=$2 [NC,L]
    RewriteRule ([\d]+)-.+.html showthread.php?t=$1 [NC,L]
    RewriteCond %{REQUEST_FILENAME} -f [OR]
    RewriteCond %{REQUEST_FILENAME} -l [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^.*$ - [NC,L]
    RewriteRule ^(data/|js/|styles/|install/|favicon\.ico|crossdomain\.xml|robots\.txt) - [NC,L]
    RewriteRule ^.*$ index.php [NC,L]
</IfModule>
 

Jake Bunce

XenForo moderator
Staff member
Sorry, don't work, my .htaccess:
The rewriterule is correct based on the example you provided:

Code:
Member Profile URL:
 
before:
 
http://domain.com/members/member-152/
 
after:
 
http://domain.com/members/member.152/
It also assumes XenForo and its .htaccess file is in the web root which is consistent with the example.
 
Top