[PHP/HTML] barva textu

C++, C#, Visual Basic, Delphi, Perl a ostatní

Moderátor: Moderátoři Živě.cz

Odeslat příspěvekod hujmulokop 20. 6. 2012 14:34

dobrý den může mi někdo poradit jak bych mohl v PHP vypsat něco jinou barvou.
např.

<?php
echo 'aaa';
?>

aby se 'aaa' vypsalo červeně.

a aby to fungovalo i v cyklech
např

Kód: Vybrat vše
<?php
for($i=0; $i<$cislo; i++)
{

if ($cislo==2) echo 'aaa'; //čeveně
else echo 'bbb';
  }

?>
Naposledy upravil Vebloud dne 21. 6. 2012 14:38, celkově upraveno 2
Důvod: Název tématu a code tag. Čti pravidla!
hujmulokop
Kolemjdoucí

Odeslat příspěvekod soban 20. 6. 2012 14:49

/----------------------------------------\
| Petr Šobáň |
| Olomouc |
\----------------------------------------/
soban
Junior

Odeslat příspěvekod Odpadlík 20. 6. 2012 15:00

Kód: Vybrat vše
<?php
echo "<style>.cervena{color:red;}</style>";
echo 
"<div class=\"cervena\">aaa</div>";
?>
Odpadlík
Junior

Odeslat příspěvekod hujmulokop 20. 6. 2012 15:01

to jo ale když to chci pouzit u if tak to provede, ale else se uz neprovede
Kód: Vybrat vše
<?php
for($i=0; $i<$cislo; $i++)
{
  if ($cislo==2)?>  <font color="red">  <?php echo 'aaa ';?>  </font> //vypise cervene 'aaa'
<?php
  else echo 'bbb'  //hodi chybu
}
?>


-- 20. 6. 2012 15:04 --

Odpadlík píše:
Kód: Vybrat vše
<?php
echo 
"<style>.cervena{color:red;}</style>";
echo "<div class=\"cervena\">aaa</div>";
?>


jdu to zkusit

-- 20. 6. 2012 15:07 --

jo funguje to díky moc
hujmulokop
Kolemjdoucí

Odeslat příspěvekod Pavouk106 20. 6. 2012 15:16

Kámo, nemusíš je mít rád, ale středníky jsou základ...

Zkus se podívat na řádek

echo 'bbb'

Co chybí na konci? :-)

edit: Nemluvě o tom, že tam je vícero začátků <?php

Začátečník, viď?

Kód: Vybrat vše
<?php
for($i=0; $i<$cislo; $i++)
{
if ($cislo==2) {
echo '<font color="red">aaa</font>'; //vypise cervene 'aaa'
}
else {
echo 'bbb'; //hodi chybu, chybel strednik
} //uzavira else
} // uzavira for
?>

To je upravenej Tvuj kód. Měl by fungovat. Nemusíš ho používat ale poučit by ses z něj mohl ;-)

Ještě jeden dodatek - chceš, aby to bylo červeně, když je $i 2 nebo $cislo 2? Máš napsáno číslo, ale číslo je konstantní, zatímco i se mění... Dobrý ujasnit si...
Naposledy upravil Pavouk106 dne 20. 6. 2012 15:32, celkově upraveno 1
Pavouk106
Junior

Odeslat příspěvekod Odpadlík 20. 6. 2012 15:31

Ono taky je docela fail to nemít naformátované pomocí tabulátorů, pak aby se v těch { } prase vyznalo že ano. Navíc <font color=""> </font> není nejlepší řešení, když pak bude chtít měnit barvy tak to bude měnit na XY místech a hlavně formátování se má dělat pomocí CSS ne v HTML.
Odpadlík
Junior

Odeslat příspěvekod Pavouk106 20. 6. 2012 15:34

Já CSS píšu do externího souboru.

Ten <font> jsem vzal jako předhozenej příklad. Každej nějak začíná ;-) A asi všichni víme, jaký ty začátky jsou :-D Opisování věcí, aniž bysme tušili proč tam vlastně jsou a jak to funguje... ;-)
Pavouk106
Junior

Odeslat příspěvekod hujmulokop 20. 6. 2012 15:47

jj díky moc všem

-- 20. 6. 2012 15:50 --

if ($cislo==2)?> <font color="red"> <?php echo 'aaa ';?> </font> //vypise cervene 'aaa'
když jsem tam dedal ty začátky <?php echo 'aaa'; ?> tak mi to nejelo

ten středník sem tam měl akorát sem ho zapomněl napsat i sem
hujmulokop
Kolemjdoucí

Odeslat příspěvekod Pavouk106 20. 6. 2012 16:02

Ono se totiž často vyplatí prvním řádkem souboru začít a posledním skončit. To znamená, že v každém PHP souboru budeš mít jen jedno <?php a jen jedno ?>.

Soubor by pak vypadal třeba takhle
Kód: Vybrat vše
  1: <?php
  2: echo '<html>
  3:   <head>
  4:   ... ... ...';

spousta řádků kódu

152: ?>

(čísla samozřejmě znamenají čísla řádek, ne že by byla přímo napsaná v tom souboru ;-) )

Začátky jsou vždycky těžký... Ještě když začínáš PHP a CSS najednou. Doporučuju zkusit si udělat statickou (bez PHP) stránku za použití CSS (barvy písma, tučné, kurzíva, barvy pozadí, rámečky apod.), aby ses naučil s CSS alespoň něco. Učit se víc najednou je sice fajn, ale dost na bednu.
Pavouk106
Junior

Odeslat příspěvekod hujmulokop 20. 6. 2012 16:29

Když mam <?php a ?> tak mě mezi tím nefunguje HTML

aha už to vidím to bude asi tím echo ' <html>
hujmulokop
Kolemjdoucí

Odeslat příspěvekod Pavouk106 20. 6. 2012 16:41

Když chceš použít html, tak ho použiješ přes echo.

Kód: Vybrat vše
echo '<html>
  <head>
    ...
  </head>
  <body>
    ...
  </body>
</html>';


Pak se dá do výstupu dát i proměnná (třeba to Tvoje číslo), např:
Kód: Vybrat vše
echo 'Počet je: '.$cislo.' kusů';


Laicky řečeno: Druhým apostrofem se ukončila první část textu, tečkou se "připojil" PHP kód, tečkou se ukončilo připojení PHP kódu a zase se pokračuje apostrofem s další částí textu.
Pavouk106
Junior

Odeslat příspěvekod karlos00x 21. 6. 2012 12:37

nauc se nejaky rozumny formatovani, treba:
Kód: Vybrat vše
<?php
for ($i = 0; $i < $cislo; i++) {
  if ($cislo == 2) {
    echo 'aaa'; //čeveně
  } else {
    echo 'bbb';
  }
}

cele ti to usnadni pokud pouzijes nejaky k tomu urceny editor/ide ktery ti po napsani otevreni zavorky doplni jeji zavreni, zobrazi syntakticke chyby, barvou zvyrazni promenne, komentare atd.
Naposledy upravil karlos00x dne 21. 6. 2012 12:56, celkově upraveno 1
Upgrade který má smysl: SSD. Zažijete svižný počítač.
karlos00x
Pokročilý

Odeslat příspěvekod Pavouk106 21. 6. 2012 12:52

Navážu na karlose a doporučím PSPad. Je to malý, jednoduchý (i složitý - v nastavení, pokud se v tom chce člově hrabat :-) ), umí to editovat na FTP atd. A po stisknutí Ctrl + mezerník nabídne seznam funkcí/tagů (a když se v něm napíše pár písmen, tak funkce vyfiltruje). Formátování (TAB nebo mezery) se v tom dá taky nastavit.

Pro začátečníka určitě dobrej nástroj.

Pro moderátora: Možná by stálo za přesunutí do sekce o webu.
Pavouk106
Junior

Odeslat příspěvekod Johnyz 21. 6. 2012 13:04

trošku si dovolím poupravit kód Karlose,
jsou tam 2 příklady v cyklu,


Kód: Vybrat vše
<?php
   
for ($i = 0; $i < $cislo; i++)
{

   // 1. pokud je splnena podminka, nasleduje aaa, jinak vypise bbb
   echo ($cislo == 2) ? 'aaa' : 'bbb'; 
   
   // 2. pokud je nutno vice podminek, idalni pouzit switch
   switch ($cislo)
   {
      case(2): $p = 'aaa'; break;
      case(3): $p = 'bbb'; break;
      case(4): $p = 'ccc'; break;
      default: $p = 'ddd';       
   }
   
   echo $p;
}
Johnyz
Junior

Odeslat příspěvekod karlos00x 21. 6. 2012 14:08

a zrovna ja bych za ty case() frknul dalsi radek a pak pred break dalsi :)

slo mi hlavne o odsazovani kodu a pouzivani slozenych zavorek.
Upgrade který má smysl: SSD. Zažijete svižný počítač.
karlos00x
Pokročilý

Další stránka

Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 2 návštevníků