Předmět Autor Datum
Nemůžeš to dát přímo sem? Tam je ten zdroják dost podivně rozházený a na ten obrázek se nedá dostat…
Wikan 24.03.2026 12:33
Wikan
Dávám to sem *************************** Dobrý den Vyskytl se mi problém Umělá inteligence mi dala t…
Víťa 24.03.2026 13:27
Víťa
Máš práva na zápis do adresáře, tam se snažíš ten soubor uložit? nový
Wikan 24.03.2026 19:03
Wikan
Máš free hosting, ten má omezené funkce a přísnější limity. https://www.endora.cz/napoveda/co-je-ch…
host 24.03.2026 13:39
host
Mě to funguje ty skripty které jsem uložil před tím ale od té doby když jsem chtěl přepsat ten stejn… nový
Víťa 25.03.2026 11:07
Víťa
Necháváš si vytvářet skripty od AI, kterým nerozumíš a nevíš, jak fungují - to je špatně. Skripty s… nový
host 25.03.2026 11:14
host
Ten skript funguje. A funguje i na freehostingu Endora, teď vyzkoušeno. Problém je asi nějaký problé… nový
kacikac 25.03.2026 11:50
kacikac
Tam mi napsali toto Dobrý den, v chybovém logu dostupném na FTP logs/php.log je zaznamenána chyba P… nový
Víťa 27.03.2026 11:57
Víťa
Vieš sem dať aktuálny zdrojový kod? V pôvodnom kode, nie je žiadna syntaxtická chyba, ale ktovie, čo… nový
pme 27.03.2026 12:13
pme
$text = $_POST["text"] ?? ""; K čemu tam jsou otazníky a uvozovky? nový
host 27.03.2026 12:34
host
"Hoši, to ale musí Ruda vědet sám" :-) Aha, no jasne... ?? ""; správne to má byť takto: $text = $_… nový
pme 27.03.2026 12:54
pme
Správné je to co je tam teď s těma dvěma otazníkama (operátor koalescence). A jestli náhodou dělají… nový
kacikac 27.03.2026 13:03
kacikac
Akú má verziu php ? No ja neviem, ale hostuje to na endora.cz ?? asi... tam prastará php verzia zrej… nový
pme 27.03.2026 13:26
pme
Já tu už psal, že jsem to testoval na free Endoře: https://pc.poradna.net/questions/3312631-http-err… nový
kacikac 27.03.2026 13:33
kacikac
Teda ja neviem... snažím sa pomôcť a Ty vieš akurát poučovať... Lama rozhodne nie som, ale Ty aj s A… nový
pme 27.03.2026 13:38
pme
Já se též snažím Víťovi pomoci. A taky se snažím tobě a hostovi vysvětlit, co je operátor koalescenc… nový
kacikac 27.03.2026 13:45
kacikac
V PHP nedělám už nějakých 15 let, tak to bude asi tím. :-) nový
host 27.03.2026 14:01
host
https://www.endora.cz/napoveda/jak-zjistit-a-zmenit-verzi-php Nastav si tam nějakou novější verzi ne… nový
Wikan 27.03.2026 13:41
Wikan
Tohle se týká placeného hostingu nebo ne? nový
host 27.03.2026 13:43
host
Ono se to může asi lišit server od serveru. Na půl roku starém freehostingu Endora mám PHP 8.4 a ver… nový
kacikac 27.03.2026 15:38
kacikac
On tam fakt má 5.6: https://jotidom.8u.cz/phpinfo.php :-) Pro Víťu: Víťo, příště, až budeš po AI ch… nový
kacikac 27.03.2026 15:10
kacikac
Nakonec jsme spolu z umělou inteligencí došli ke zdárnému konci .K uložení textu je tento skript <… nový
Víťa 02.04.2026 10:55
Víťa
A přitom stačilo změnit verzi PHP. nový
Wikan 02.04.2026 11:51
Wikan
Já verzi php nebudu protože to neumím nový
Víťa 02.04.2026 12:20
Víťa
Proto jsem sem dával odkaz, jak na to. poslední
Wikan 02.04.2026 12:38
Wikan

Dávám to sem
***************************
Dobrý den
Vyskytl se mi problém
Umělá inteligence mi dala tento zdroják na přenos textu.Moje představa je taková že já si napíšu text na notebooku a ten uložím do boxu 2 a potom jsi tu stránku načtu na mobilu a ten text okopíruji do schránky


<?php
$file = "data.txt";

// uložení textu
if ($_SERVER["REQUEST_METHOD"] === "POST") {
    $text = $_POST["text"] ?? "";
    file_put_contents($file, $text, LOCK_EX);
    exit;
}

// načtení textu
$text = file_exists($file) ? file_get_contents($file) : "";
?>

<!DOCTYPE html>
<html lang="cs">
<head>
<meta charset="UTF-8">
<title>Přenos textu</title>
</head>
<body>

<h2>Box 1 (sem píšeš)</h2>
<textarea id="box1" rows="5" cols="40"></textarea>

<h2>Box 2 (uložený text)</h2>
<textarea id="box2" rows="5" cols="40" readonly><?php echo htmlspecialchars($text, ENT_QUOTES, 'UTF-8'); ?></textarea>

<br><br>

<button onclick="transfer()">➡️ Přenést a uložit</button>
<button onclick="copyBox2()">📋 Kopírovat Box 2</button>

<p id="status"></p>

<script>
function transfer() {
  const text = document.getElementById("box1").value;

  // přenese do druhého boxu
  document.getElementById("box2").value = text;

  // uloží na server
  fetch("", {
    method: "POST",
    headers: {"Content-Type": "application/x-www-form-urlencoded"},
    body: "text=" + encodeURIComponent(text)
  })
  .then(() => {
    document.getElementById("status").innerText = "Uloženo ✔️";
    document.getElementById("box1").value = "";
  });
}

// ✅ FUNKČNÍ KOPÍROVÁNÍ (i na HTTP)
function copyBox2() {
  const text = document.getElementById("box2").value;

  // moderní způsob (funguje jen HTTPS)
  if (navigator.clipboard && window.isSecureContext) {
    navigator.clipboard.writeText(text)
      .then(() => {
        setStatus("Zkopírováno ✔️");
      })
      .catch(() => fallbackCopy());
  } else {
    fallbackCopy();
  }
}

// fallback pro HTTP (Endora)
function fallbackCopy() {
  const textarea = document.getElementById("box2");

  textarea.removeAttribute("readonly");
  textarea.select();
  textarea.setSelectionRange(0, 99999);

  try {
    document.execCommand("copy");
    setStatus("Zkopírováno ✔️");
  } catch (err) {
    setStatus("Chyba při kopírování ❌");
    console.error(err);
  }

  textarea.setAttribute("readonly", true);
}

// helper na status
function setStatus(msg) {
  document.getElementById("status").innerText = msg;
}
</script>

</body>
</html>

jestli jsem udělal chybu já nebo umělá inteligence protože od té chvíle mi to dělá toto at už ukládám další skripty

Mě to funguje ty skripty které jsem uložil před tím ale od té doby když jsem chtěl přepsat ten stejný soubor -skript něčím jiným tak co vytvořím - napíšu tak to dopadne stejně.Musím počkat až se vyjádří někdo od endory co je za problém

Tam mi napsali toto

Dobrý den, v chybovém logu dostupném na FTP logs/php.log je zaznamenána chyba PHP Parse error: syntax error, unexpected '?' in /home/html/jotidom.8u.cz/public_html/prenos.php on line 6 kterou postačí opravit a skript vám poběží.

já nevím co mám opravit díky

Správné je to co je tam teď s těma dvěma otazníkama (operátor koalescence).
A jestli náhodou dělají problém tyto dva otazníky tak tam má nastavenou nějakou pravěkou verzi PHP (já mám na free Endoře verzi PHP 8.4, ta problém s operátorem koalescence nemá a neměla by mít ani veze 7.0 (rok 2015) nebo vyšší pokud jsem dobře googlil).
Co jsou ty dva otazníky je vysvětlené třeba tu:
https://www.php.net/manual/en/migration70.new-features.php

Akú má verziu php ? No ja neviem, ale hostuje to na endora.cz ?? asi... tam prastará php verzia zrejme nebude...
Možno nejaké nastavenie pre free účty?

Odjakživa som to riešil takto:
if (isset($_POST['text'])) {....

P.S.
alebo tam má na riadku 6 úplne niečo iné....

Já tu už psal, že jsem to testoval na free Endoře:
https://pc.poradna.net/questions/3312631-http-error-500#r3312674
A problém tam není.
Na free Endoře mám PHP 8.4, freehosting jsem si tam pořizoval před asi půl rokem.
Je teoreticky možné, že nějaký jiný starší free server Endora může mít PHP třeba 5 :-), proto jsem tu napsal tu poznámku s verzí PHP.

Ty to řešíš přes isset, protože lamičky to řeší přes isset. Rozumní programátoři a AI to řeší přes operátor koalescence. Víťovi ten kód vytvořila AI...

Ano, Víťa tam může mít úplně něco jiné, to jsi psal Víťovi už o poledni :-)

Ono se to může asi lišit server od serveru.
Na půl roku starém freehostingu Endora mám PHP 8.4 a verzi PHP nemůžu ručně měnit, prostě mám tu, kterou ve výchozím nastavení používá freehosting.
Na webu prezentace hostingů Endora je uvedeno, že freehosting Endora nemá starší verze PHP (např. 5.6).
Takže buď má Víťa na té free doméně od Endory placený hosting a ručně nastavenu verzi 5.6 nebo má nějaký starý free hosting se starým nastavením, které umožňovalo nastavovat verzi PHP a má nastavenu PHP 5.6, jinak by se mu to tam zaktualizovalo na nějakou aktuálnější.

On tam fakt má 5.6:
https://jotidom.8u.cz/phpinfo.php
:-)

Pro Víťu:
Víťo, příště, až budeš po AI chtít nějaký kód, tak AI musíš napsat co používáš, pokud nepoužíváš něco, co je v dnešní době běžné .-)
Pravěká verze PHP 5.6 opravdu dnes není běžná verze PHP, používáš ji ty, pravěké warforum na http a to je zhruba tak všechno :-)
Nebo ideálně používej co možná nejnovější verzi PHP :-)

Nakonec jsme spolu z umělou inteligencí došli ke zdárnému konci .K uložení textu je tento skript

 <?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    if (!empty($_POST["text"])) {
        $text = $_POST["text"];

        // soubor, kam se bude ukládat

        $soubor = "xxx.txt";
        // uložení textu
        file_put_contents($soubor, $text);

        $zprava = "Text byl uložen.";
    } else {
        $zprava = "Textové pole je prázdné.";
    }
}
?>

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Uložení textu</title>
</head>
<body>

<?php
// zobrazí zprávu po odeslání
if (!empty($zprava)) {
    echo "<p>$zprava</p>";
}
?>

<form method="post">
    <textarea name="text" rows="5" cols="40" placeholder="Napiš něco..."></textarea><br>
    <button type="submit">Uložit</button>
</form>

</body>
</html>

a druhého skriptu který na mobilu zkopíruje text do schránky

 <?php
$filename = "xxx.txt";
$content = "";
if (file_exists($filename)) {
    $content = file_get_contents($filename);
}
?>

<!DOCTYPE html>
<html lang="cs">
<head>
    <meta charset="UTF-8">
    <title>Načtení a kopírování textu</title>
    <style>
        textarea { width: 100%; max-width: 600px; }
        button { margin-top: 10px; padding: 8px 12px; }
    </style>
</head>
<body>
    <h2>Text ze souboru</h2>
    <form action="" method="post">
        <textarea id="text" name="text" rows="10"><?php echo htmlspecialchars($content); ?></textarea><br>
        <button type="button" onclick="copyText()">Kopírovat do schránky</button>
    </form>

    <script>
        function copyText() {
            const textarea = document.getElementById('text');
            const text = textarea.value;

            // Moderní API pro schránku
            if (navigator.clipboard && navigator.clipboard.writeText) {
                navigator.clipboard.writeText(text).then(() => {
                    showMessage("Text zkopírován!");
                }).catch(() => {
                    fallbackCopy(textarea);
                });
            } else {
                fallbackCopy(textarea);
            }
        }

        function fallbackCopy(textarea) {
            textarea.select();
            textarea.setSelectionRange(0, 99999); // pro mobilní zařízení
            try {
                document.execCommand('copy');
                showMessage("Text zkopírován pomocí fallbacku!");
            } catch (err) {
                showMessage("Nepodařilo se kopírovat text.");
            }
        }

        function showMessage(msg) {
            // Krátká notifikace místo alertu
            let div = document.createElement('div');
            div.textContent = msg;
            div.style.position = 'fixed';
            div.style.bottom = '20px';
            div.style.left = '50%';
            div.style.transform = 'translateX(-50%)';
            div.style.background = '#4CAF50';
            div.style.color = 'white';
            div.style.padding = '10px 20px';
            div.style.borderRadius = '5px';
            div.style.zIndex = '1000';
            document.body.appendChild(div);
            setTimeout(() => div.remove(), 2000);
        }
    </script>
</body>
</html>

Zpět do poradny Odpovědět na původní otázku Nahoru