Autor Zpráva
danielhubacek
Profil
Dobrý den,
chtěl bych se zeptat, jde udělat něco, aby se mi v určitý čas (např. v 16:00) změnil text (např. z "aAa" na "bBb")?
Amunak
Profil
Ano. Pokud ti nejde o přílišnou přesnost a chceš to dělat až po načtení stránky, použij nějaký serverový skript. V PHP třeba
if ( date('H') >= 16 ) {
  echo 'bBb';
} else {
  echo 'aAa';
}

Pokud to potřebuješ bez načtení stránky anebo přesněji, něco podobného vyrobíš v javascriptu.
danielhubacek
Profil
Ano děkuji, ale nemělo by být aAa první? přeci jen, bude to dříve :))
A ještě, když bych chtěl tam dát ještě datum? Že třeba až za týden ve 16:00?
juriad
Profil
if ( date('H') < 16 ) {
  echo 'aAa';
} else {
  echo 'bBb';
}
A je první. Tento kód je funkčně zcela identický Amunakovu, jen je změněna nerovnost, aby bylo respektováno chronologické pořádí větví.
danielhubacek
Profil
OK a ten datum?

Je mi líto, ale nejde to:

<script>
if ( date('H') < 16 ) {
    echo '<small>aAa</small>';
} else {
      echo '<small>bBb</small>';
}
</script>
juriad
Profil
$now = time();
$then = strtotime('2013-10-12 16:00:00');
echo $now, "\n", $then, "\n";
if($now < $then) {
        echo "before";
} else {
        echo "after";
}
danielhubacek
Profil
Je mi líto, ale nejde mi to. V případě, že to přímo zkopíruji, objeví se mi na stránce tento kód. V případě, že to dám mezi <script></script> neukáže se mi nic :(
okolojsoucí
Profil *
Ale toto je PHP nikoliv JavaScript.
danielhubacek
Profil
a jak mám tedy udělat, aby to fungovalo? musím tam přeci něco ještě udělat, když mi to nefunguje...
okolojsoucí
Profil *
Vytvořit soubor např. page.php a do toho vložit výše zmíněný script [#4][#6]
danielhubacek
Profil
A jak ten page.php pak vložím do již vytvořeného html souboru?
okolojsoucí
Profil *
Přesně na opak, do page.php budete vkládat html, nejlépe pomocí include


Ale na toto bych doporučil php třídu Smarty.
juriad
Profil
Svou stránku přejmenuješ tak, aby měla příponu php. A budeš se na ní i tak odkazovat. Jinak se tato stránka chová úplně stejně jako kdyby měla připonu html.

Dovnitř této stránky vložíš můj kód [#6] obalený značkami <?php a ?>; tedy:
<?php

# tady je kus PHP, třeba výpis aktuálního času s sekundách:
echo time();

?>



okolojsoucí:
Nechoď se Smarty na někoho, do slyší o PHP poprvé v životě. danieluhubackovi úplně stačí vědět, že do stránky, která má příponu .php může vložit mezi značky <?php a ?> kus "magie", jejíž výstup se pak na stránce objeví.
danielhubacek
Profil
ok, otevřel jsem si nový poznámkový blok, vepsal jsem do něj:
<?php
$now = time();
$then = strtotime('2013-10-05 14:01:00');
echo $now, "\n", $then, "\n";
if($now < $then) {
        echo "before";
} else {
        echo "after";
}
?>
a když jsem to chtěl otevřít, zeptalo se to, jestli chci soubor otevřít nebo uložit, dal jsem otevřít a akce se opakovala...
okolojsoucí
Profil *
Podle textu to vypadá že se to snažíte spustit na pc, přes prohlížeč. Na to musíte mít nainstalovaný na localhostu Apache a PHP případně nějaký balíček WampServer
danielhubacek
Profil
no, děkuji za pomoc, ale mě je 14 a pokouším se o nějaké jednoduché stránky, myslel jsem to trochu jinak, děkuji za pomoc... Hold to nebude tak přesné :))
okolojsoucí
Profil *
Když tu zanecháš na sebe skype můžu ti nějak lépe poradit, nebo se můžeme domluvit.
danielhubacek
Profil
okolojsoucí:
daniel34201 mám za to, že tam mám takovej červenej obrázek, ale dnes již ne, již mě z toho bolí hlava :) děkuji, ale rovnou vám řikám, že bych radši zůstal u HTML, takový profík nejsem, abych si stahoval programy, ale můžete zkusit mě to naučit :-) HTML je "jednoduchý" a jde toho přez něj také spoustu.

Budu se těšit, nashlednaou :-)

_______________________________________________
jdu se tedy přihlásit na skype a počkám na vás abych to potvrdil :-)


přidal jste si již mě?
okolojsoucí
Profil *
Ano
Amunak
Profil
danielhubacek:
Možná by pro tebe bylo snazší si někde pořídit webhosting s PHP zdarma a testovat to tam. Rozjet na lokálu apache s PHP může být pro začátečníka docela obtížné.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0