Quantcast
Channel: Tópicos
Viewing all articles
Browse latest Browse all 14700

Manipular ficheiro de configuração

$
0
0
Boas pessoal,


Estou desenvolvendo um Painel de Administração e me encontro na seguinte situação:
Código do Painel de Administração (config_geral.php):
Código (PHP):
<?php
        require_once('../includes/SimpleConfig.php');
        SimpleConfig::setFile('../includes/config.php');
        $config = SimpleConfig::getInstance();
?>


<form method="post">
        <h3>Informações Básicas</h3>
        <p><b>URL Base:</b></p> <input type="text" name="Furl" class="username" placeholder="<?php echo $config['URL_Site']; ?>" />
        <br><br>
        <p><b>Email Site:</b></p> <input type="text" name="Fmail" class="username" placeholder="<?php echo $config['Email_Site']; ?>" />
        <br><br>
        <p><b>Registos:</b></p>
        <br><input type="radio" name="Fregistos" value="ativados">Ativados<br><br><input type="radio" name="Fregistos" value="desativados">Desativados
        <br><br><br>
        <p><b>URL Atualizações:</b></p> <input type="text" name="Fatualizacao" class="username" placeholder="<?php echo $config['URL_Atualizacao']; ?>" />
        <br><br>
        <input type="submit" name="Fconfig" class="submit" value="Submeter" />
</form>

<?php
if(isset($_POST['Fconfig'])) {
        $configphp = file_get_contents('../includes/config.php');

        $configphp = preg_replace("/$config\['(Site_URL)', '[^']+?'\];/", "define('$1', '" . $_POST['Furl'] . "');", $configphp);
        $configphp = preg_replace("/$config\['(Email_Site)', '[^']+?'\];/", "define('$1', '" . $_POST['Fmail'] . "');", $configphp);
        $configphp = preg_replace("/$config\['(URL_Atualizacao)', '[^']+?'\];/", "define('$1', '" . $_POST['Fatualizacao'] . "');", $configphp);

        $cphp = fopen('../includes/config.php', 'w');
        fwrite($cphp, $configphp);
        fclose($cphp);
}
?>

Código do Ficheiro de Configuração (config.php):
Código (PHP):
<?php
$config = array();
$config['Site_URL'] = 'http://localhost/projeto';
$config['Email_SITE'] = 'teste@localhost';

$config['Registo_ativado'] = True;
$config['URL_Atualizacao'] = 'https://localhost/projeto/update';

return $config;
?>

Ou seja, consigo visualizar os dados do ficheiro de configuração (config.php) perfeitamente. O problema está na hora de os editar... Por alguma razão os valores do ficheiro de configuração não estão a ser atualizados/substituídos com os do POST.

Alguma ajuda?



Obrigado desde já!

Viewing all articles
Browse latest Browse all 14700