Autor Zpráva
gully
Profil
Potreboval bych na zaklade zjisteneho rozliseni generovat v php dalsi kod stranky a nevim, jak predat zjistenou hodnotu rozliseni v Javascriptu do php. Zkousel jsem to takto, ale toto nefunguje:

<script type="text/javascript">
  sirka = screen.width;
  vyska = screen.height;
</script>


<?php
  echo "Sirka  : ".$_GET['sirka']."<br>";
  echo "Vyska : ".$_GET['vyska']."<br>";
?>
SpotRudloff
Profil
Já bych to řešil takhle:

<script type="text/javascript">
  var sirka = screen.width;
  var vyska = screen.height;
</script>

<?php
  $sirka = "<script>document.write(sirka);</script>";
  $vyska = "<script>document.write(vyska);</script>";
  echo "Šířka: ".$sirka."<br>";
  echo "Výška: ".$vyska."<br>";
?>
gully
Profil
Super. Dekuju moc!
Yur4Y
Profil
Ale to je hlúposť. V PHP premenných $sirka a $vyska nie sú konkrétne čísla, ale reťazce Javascriptu, ktoré sa jednoducho vypíšu, prebehnú v prehliadači a potom to možno tak vyzerá, že v $sirka a $vyska sú čísla. Stačí si zobraziť zdrojový kód.
Vždy najprv prebehne PHP na serveri a až potom sa odošle HTML stránka vrátane Javascriptu do prehliadača. Pokiaľ treba s hodnotami získanými Javascriptom na serveri pracovať, treba použiť Ajax.
gully
Profil
Je to tak. Nemuzu tu hodnotu otestovat, ptz. tam v dobe prekladu php jeste neni.
Debo
Profil *
Nebo můžeš proměnnou do php odeslat pomocí odkazu, a pak to z něj natáhnout pomocí $_GET... Myslím že už se to tu řešilo.
gully
Profil
Nakonec jsem to vyřešil tak, ze používám pouze JavaScript:

<script language="javascript">
var sirka = screen.width;

if (sirka >= 1280)
{
   document.write('<div class="graff_cmaranice-1">');
   document.write('<img src="http://s-o-s.cz/templates/bizportal_ii/images/graffiti/cmaranice-1.png"/></a>');
   document.write('</div>');
   
   document.write('<div class="graff_cmaranice-2">');
   document.write('<img src="http://s-o-s.cz/templates/bizportal_ii/images/graffiti/cmaranice-2.png"/></a>');
   document.write('</div>');
   
   document.write('<div class="graff_cmaranice-3">');
   document.write('<img src="http://s-o-s.cz/templates/bizportal_ii/images/graffiti/cmaranice-3.png"/></a>');
   document.write('</div>');
}
</script>


Nevím, nakolik je to ne/profesionálně provedené, zřejmě to ale asi moc profesionání není, protože v css jsou při rozlišení menším než 1280px na šířku zbytečná data.
Na druhou stranu je to řešení jednoduché a funguje.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

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

0