Autor Zpráva
Snajp
Profil
Ahoj,
začal jsem známému dělat jednoduché firemní stránky. Je to malířská firma.
Proto jsem do stránek dal i takový orientační vzorník barev. Zde je příklad tabulky:

<table>
<tr style='height:24.0pt'>
<td width=70 valign=top style='background:#CCC188;'>barva 1</td>
<td width=70 valign=top style='background:#CEB487;'>barva 2</td>
<td width=70 valign=top style='background:#CEB487;'>barva 2</td>
</tr>


tabulka má asi 50 řádků a 3 sloupce.
Lze pomocí php udělat to, že když uživatel klikne na některou barvu, tak se mu otevře nové okno bez adresy a všech těch ikonek a tlačítek, které bude mít pozadí zvolené barvy, a po kliknutí na to okno se zase zavře?
Dělám to proto, protože jinak barva vypadá v rámečku 24x70 a jinak přes celej monitor.
Dále bych chtěl upozornit že se php zabývám pouze pár dní. Něco jsem už pochopil, ale ne že na mě vybafnete nějaké kosmické rovnice :-)

Děkuji za pomoc
Hugo
Profil
Snajp

S tim ti php moc nepomuze. Na otvirani oken se pouziva javacsript. Podivej se sem
http://www.jakpsatweb.cz/javascript/window.open.html
Snajp
Profil
Ano, je tam otevření okna bez lišty, adresy atd.
Ale je tam vždy nějaká stránka. To bych musel mít (50řádkůx3sloupce) 150 stránek s různým barevným pozadím a to se mi opravdu nechce dělat.
Myslel jsem něco jako:

<a href="barva.php"><td width=70 valign=top style='background:#CCC188;'>barva 1</td></a>

a v souboru "barva.php" by bylo asi:

<body background="#"></body>
nebo tak nějak.
Takže místo 150 barevnejch stránek bych měl jen 1 soubor kterej by generoval barevný pozadí
kde"#" je barva vždy stejná jako vybraného pole, v tomto příkladě #CCC188.

Možná píšu z pohledu php hovadiny ale věřím že chápete co chci říct.
btw příště budu psát do sekce o php.
Hugo
Profil
No, tak otevri okno pomoci javascriptu a obsah toho okna udelej pomoci php, tzn. neco takoveho

window.open("barva.php?color=ccc188", "nove", "width=800,height=600,menubar=yes,resizable=yes,left=0,top=0")
PerToon
Profil
a co třeba pomocí about, kde by to udělalo pozadí, kterýmu by se Javascriptem přiřadila ta barva? zkusím vymyslet nějaký postup, jestli to teda není velká kravina...
Fred
Profil
V PHP to neumím, ale bylo by to lepší.
Otvírač:
<script type="text/javascript">
function control(barva) {
vlastnosti="location=no,scrollbars=yes,menubars=no,toolbars=no,resizab le=yes,height=200,width=200," ;
var URL="barva.html?pozadi="+barva+"&amp;";
popup=window.open(URL,"control",vlastnosti);
}
</script>
<a href="barva.html?pozadi=000000&amp;" value="otevřít ukázku barvy" onclick="control('000000');return false">ČERNÁ</a>


pozadi.html

<script type="text/javascript">
<!--
var httpGetVars=new Array();
var pole=window.location.search.substr(1).split("&");
for(i=0;i<pole.length;i++){httpGetVars[pole[i].split("=")[0]]=unescape (pole[i].split("=")[1]);}
function init(){
document.body.style.background='#'+httpGetVars["pozadi"];
}
function addEvent(obj,evType,fn){
if(obj.addEventListener){
obj.addEventListener(evType,fn,true);
return true;
}else if(obj.attachEvent){
var r = obj.attachEvent("on"+evType,fn);
return r;
}else{
return false;
}}
addEvent(window,'load',init);
//-->
</script>
Snajp
Profil
UF tak z toho jsem jelen. Zkusim to pochopit. Snad někdo příjde s něčím jednodušším, ale i za toto dík.
Hugo
Profil
Reseni pomoci php:

Do odkazu dej
window.open("barva.php?color=ccc188", "nove", "width=800,height=600,menubar=yes,resizable=yes,left=0,top=0")

Soubor barva.php

<html>
<head><title>Barva <?php print $_GET['color']; ?></title></head>

<body bgcolor="#<?php print $_GET['color']; ?>">
</body>
</html>


Samozrejme by bylo dobre testovat retezec, ktery beres z URL, napr. pomoci regularnich vyrazu.
Fred
Profil
Není na tom nic složitého, prostě si vytvoř novou prázdnou stránku stránku se jménem barva.html do hlavičky mezi <head> přidej ten skript ctrl+c ctrl+v. Do hlavičky odkud se to otvírá přidej ten script co je tam napsaný. A voláš to pak jednoduše.

<a href="barva.html?pozadi=000000&amp;" value="otevřít ukázku barvy" onclick="control('000000');return false">ČERNÁ</a>

<a href="barva.html?pozadi=c0c0c0&amp;" value="otevřít ukázku barvy" onclick="control('c0c0c0');return false">SILVER</a>

<a href="barva.html?pozadi=bebebe&amp;" value="otevřít ukázku barvy" onclick="control('bebebe');return false">GREY</a>
Fred
Profil
Tady si to můžeš vyzkoušet http://xy.wz.cz/barva/ a tady stáhnout http://xy.wz.cz/barva/barva.zip
Snajp
Profil
Fred: máš pravdu, funguje to. Ikdyž na localhostu mi to nahlási chybu 9týho řádku prvního znaku či co, ale na WZ to funguje správně. Jen ještě jak udělat aby se okno po kliknutí zase zavřelo.
A budete mít odemě už pokoj.
Fred
Profil
Snajp kliknutí zase zavřelo :-) to jsem na tom wz udělal předem :-)
Snajp
Profil
Už je to hotové, díky pánové.
error414-
Profil *
Nechapu proc to delate pres okno staci to vypsat PHPckem a misto novych oken ktere nektere prohlizece blokuji pouzit absolutne pozicovani.
jonáš
Profil
<script language="JavaScript">
function(cislo,barva){
var okno=window.open("barva.php?color=ccc188", "nove", "width=800,height=600,menubar=yes,resizable=yes,left=0,top=0");
with(okno.document){
open();
writeln("<html><head><style type='text/css'>body{background-color:#"+barva+";}</style></head><body onClick="close();" onBlur="close();"></body></html>");
close();
}
okno.focus();
}
</script>


<a href="javascript: control(17,'FF0000')"><span style="background-color:#FF0000;">barva 17</span></a>


takhle nepotrebujes zadnej dalsi soubor, a prece se ti JavaScriptem otevre novy okno...
jon
Fred
Profil
jonáš
To jo, ale co když bude vyplý javascript, to co jsem sem pástnul počítalo s záložní php verzí při nepřítomnosti js.
jonáš
Profil
error414- novych oken ktere nektere prohlizece blokuji

Prohlizece blokuji jenom automaticky otevirana okna, tohle je na podnet uzivatele, takze to jde.
J
jonáš
Profil
Fred Jo, asi to je tak lepsi.. Tohle bylo jen tak pro zajimavost, aby bylo videt, ze do prazdnyho okna muzes neco napsat bez specianiho souboru.
J
jonáš
Profil
Ale mas tam .html a asi ne kazdej ma nastaveno, aby .html chodilo pres PHP.. :--)
Toto téma je uzamčeno. Odpověď nelze zaslat.

0