Hugme adlı üyeden alıntı: mesajı görüntüle
sizide yordum bu düzenlemeden sonra çalışmazsa iş ciddiye binecek

function cot_installConfigReplace(&$file_contents, $config_name, $config_value)
{
    // Gelen değeri temizle
    $config_value = trim($config_value);
    
    // Değer boş string ise
    if ($config_value === '') {
        $config_value_escaped = "''";
    }
    // Değer tırnaklarla başlayıp bitiyorsa
    elseif (preg_match('/^(["\'])(.*)\1$/', $config_value, $matches)) {
        $content = $matches[2];
        if ($matches[1] === '"') {
            // Çift tırnaktan tek tırnağa çevir
            $content = str_replace(['\\', '$', "'"], ['\\\\', '\\$', "\\'"], $content);
            $config_value_escaped = "'" . $content . "'";
        } else {
            // Tek tırnaktan çift tırnağa çevir
            $content = str_replace(['\\', '$', '"'], ['\\\\', '\\$', '\\"'], $content);
            $config_value_escaped = '"' . $content . '"';
        }
    }
    // Tırnaksız gelen değer
    else {
        $content = str_replace(['\\', '$', "'"], ['\\\\', '\\$', "\\'"], $config_value);
        $config_value_escaped = "'" . $content . "'";
    }

    // Config içeriğini güncelle
    $search = "\$cfg['$config_name'] = ";
    $pos = strpos($file_contents, $search);
    
    if ($pos !== false) {
        // Noktalı virgüle kadar olan kısmı bul
        $end_pos = strpos($file_contents, ';', $pos);
        if ($end_pos !== false) {
            $before = substr($file_contents, 0, $pos + strlen($search));
            $after = substr($file_contents, $end_pos);
            $file_contents = $before . $config_value_escaped . $after;
            return true;
        }
    }
    
    return false;
}


iş yoldan ççıktı zaten dün geceden beri denemediğim yönetm kalmadı
Chatgpt ile de çözemedik

$cfg['mysqlpassword'] = "....@$3....";
bu arada yine olmadı ))