Backup e Restore não funcionam

Backup e Restore não funcionam

por George Madson -
Número de respostas: 8
Pessoal, quando tento fazer um backup, aparecem para mim no moodle a figuras 1 e 2 abaixo ...




Mas a figura 3 não aparece, a página fica em branco e nunhuma mensagem de erro aparece mesmo com o modo DEBUB ativado e nenhuma informação ou erro é logado no postgree (uso este banco com o moodle).



Um outro detalhe inportante é que eu também não consigo fazer um restore, quando tento, o mesmo ocorre, seleciono o curso, quando peço para continuar a restaurar um curso existente para um novo curso ou até mesmo para um existente, ao processar obtenho uma tela congelada sem erros e sem nenhum objeto (botões) com a informação de concluida na barra de status do firefox3 ou do IE7 (fiz o teste nos dois)

Buscando informações pela net, achei neste forum uma discussão sobre o limite do tipo de dados do postgree, mas, verificando minha base observei que meu ID não se aproxima de +2147483647, portanto, não é este o meu problema.

integer 4 bytes usual choice for integer -2147483648 to +2147483647
bigint 8 bytes large-range integer -9223372036854775808 to 9223372036854775807

http://moodle.org/mod/forum/discuss.php?d=81530
http://www.enterprisedb.com/docs/en/8.3/server/datatype-numeric.html

Tenho desta forma um sério problema, porque, não há registros no log do postgree, a opção de DEBUB do moodle não me traz informações e estou sem norte porque não achei nada parecido com o meu problema na net.

Alguém já possou por este problema e pode me ajudar ? ou pode sugerir alguns testes que eu possa realizar para tentar encontrar o erro ?

Obrigado,

George Madson
Em resposta a 'George Madson'

Re: Backup e Restore não funcionam

por bruno brx -
Fala galera.

Bom.. o mesmo problema acontecia comigo e no meu caso foi observado o seguinte:
pós avaliar os fonts do site constatei o seguinte:

backup.php
o arquivo recebe o parametro $launch via post pelos arquivos backup_form.html e backup_check.hml que são inclusos no mesmo como pode ser observado abaixo

(...)
$launch = optional_param( 'launch' );
(...)
if (!$launch) {
// if we're at the start, clear the cache of prefs
if (isset($SESSION->backupprefs[$course->id])) {
unset($SESSION->backupprefs[$course->id]);
}
include_once("backup_form.html");
} else if ($launch == "check") {
include_once("backup_check.html");
} else if ($launch == "execute") {
include_once("backup_execute.html");
}

O sistema não chegava a incluir/processar o arquivo backup_execute.html, isso pq o parametro "execute" não era atribuído a variável $launch, ao invés disso observei que a variável recebia o valor ute.
O problema ocorre pq a função (optional_param) utilizada pra obter as variáveis passadas através dos formulários remove algumas expressões, como pode ser observado abaixo:

lib\moodlelib.php
function optional_param($parname, $default=NULL, $type=PARAM_CLEAN) {
// detect_unchecked_vars addition
(...)
$param = preg_replace("/eval|system|passthru|exec|include|require_once|move_uploaded_file/i", "", $param);
return clean_param($param, $type);
}

dessa forma, ao receber o parâmetro execute, a função removia a string exec, e assim as rotinas de backup e restore nao ocorriam
Para solucionar o problema basta alterar o parâmetro passado pelo formulário, ou baseado nos conceitos POG acrecentar o trecho abaixo apos a linha "$launch = optional_param( 'launch' )" nos arquivos restore.php e backup.php

if($launch=="ute"){
$launch = "execute";
}


ps: como peguei o sistema ja implantando a algum tempo na empresa não sei dizer se o font foi alterado, porem por ser similar ao do amigo resolvi postar!

Espero que ajude..
Em resposta a 'bruno brx'

Re: Backup e Restore não funcionam

por George Madson -

Bruno meu amigo,

Vc é o cara !!!! sorriso

Seguindo a sua dica, o código ainda mudava o valor da variável entre a atribuição e o teste (if ...), então, ao invés de mudar o conteúdo da variável, resolvi, graças a vocês, mudando a condicional.

linha 125 (backup.php)

} else if ($launch == "execute" or $launch == "ute") {

Linha 154 (restore.php)

} else if ($launch == "execute" or $launch == "ute") { 

Muito Obrigado!

Valeu, e retribuindo ao parabéns que recebi graças a você, quero lhe dizer MEUS PARABÉNS também!

Grato,

George Madson.

Em resposta a 'George Madson'

Re: Backup e Restore não funcionam

por jessica messias lima -

olá, eu preciso de ajudar 

por mais que eu configure as opções do backup,  não aparece a opção final que seria o " download" 

apenas as alterações de  configurações e salva mudanças

obs; meu chefe me deu permissões no moodle para que eu consiga fazer isso 

help