Autor Tópico: [SMF Converter] phpBB3  (Lida 12261 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline candidosa2

  • Suporte Tecnico
  • Fundador
  • *
  • Mensagens: 5073
  • Rank: 1658
  • Sexo: Masculino
  • Suporte
    • Hosting Moçambique
[SMF Converter] phpBB3
« em: 24 de Janeiro de 2009, 20:03 »
Software: phpBB
Versão: 3.0

É finalmente aqui. Passei o dia inteiro trabalhando nisso e conseguiu obter uma versão beta para fora. O conversor ainda está em beta e há coisas que estão faltando. Se você tiver sugestões de outras coisas para converter apenas publicá-las:). Aqui está uma lista do que é convertido.

Converte

     * Deputados
     * Graduação
     * Grupos
     * Categorias
     * Quadros
     * Tópicos
     * Correios
     * Postes
     * Mensagens pessoais
     * Enquetes

Não converte

     * Permissões (Isto pode não ser suportada em todas as permissões de modo verifique antes de fazer a bordo de viver. Tudo será admin apenas para acesso bordo.)
     * Redireccionamento Câmaras (quero adicionar suporte para o redirecionamento placas mod.)
     * Avatares
     * Perfil Campos (Eu quero olhar para isto e ver se posso torná-las compatíveis SMF. Você só teria necessidade de fazer mudanças no modelo.)
     * Configurações básicas (converso algumas das configurações básicas fórum. (Nome do site, max pós comprimento, etc)
     * Smileys


Senha Suporte
phpBB tem seus próprios costumes hash senha para que você precise editar LogInOut.php senha para adicionar suporte para a conversão. Alternativamente, você pode utilizar o acompanha phpBB3_Login_Fix.tgz modificação (em anexo abaixo) via Package Manager.

Pesquisar
Código: [Seleccione]
// Snitz style - SHA-256.  Technically, this is a downgrade, but most PHP configurations don't support sha256 anyway.
            if (strlen($user_settings['passwd']) == 64 && function_exists('mhash') && defined('MHASH_SHA256'))
                $other_passwords[] = bin2hex(mhash(MHASH_SHA256, $_REQUEST['passwrd']));

Adicionar por Baixo
Código: [Seleccione]
// phpBB3 users new hashing.
            $other_passwords[] = phpBB3_password_check($_REQUEST['passwrd'], $user_settings['passwd']);

Pesquisar
Código: [Seleccione]
?>
Adicionar
Código: [Seleccione]
function phpBB3_password_check($passwd, $passwd_hash)
{
    // Too long or too short?
    if (strlen($passwd_hash) != 34)
        return;

    // Range of characters allowed.
    $range = './0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';

    // Tests
    $strpos = strpos($range, $passwd_hash[3]);
    $count = 1 << $strpos;
    $count2 = $count;
   $salt = substr($passwd_hash, 4, 8);

    // Things are done differently for PHP 5.
    if (@version_compare(PHP_VERSION, '5') == 1)
    {
        $hash = md5($salt . $passwd, true);
        for (; $count != 0; --$count)
            $hash = md5($hash . $passwd, true);;
    }
    else
    {
        $hash = pack('H*', md5($salt . $passwd));
        for (; $count != 0; --$count)
            $hash = pack('H*', md5($hash . $passwd));
    }

    $output = substr($passwd_hash, 0, 12);
    $i = 0;
    while ($i < 16)
    {
        $value = ord($hash[$i++]);
        $output .= $range[$value & 0x3f];

        if ($i < 16)
            $value |= ord($hash[$i]) << 8;

        $output .= $range[($value >> 6) & 0x3f];

        if ($i++ >= 16)
            break;

        if ($i < 16)
            $value |= ord($hash[$i]) << 16;

        $output .= $range[($value >> 12) & 0x3f];

        if ($i++ >= 16)
            break;

        $output .= $range[($value >> 18) & 0x3f];
    }

    // Return now.
    return $output;
}

Notas:
- Definir SMF para UTF-8 desde phpBB3 modo está definido para UTF-8 por omissão.

Changelog
! Certifique-se de que todas os quadros obter convertidos corretamente.
! Primeiro upload.

convert.php
Utilize esta convert.php com a extensão. Sql arquivo anexado a este tópico.