Registrace nového uživatele     Návod     Kluby     Archív  Lopuchu     Lopuch.cz  

Když diskuse,
tak s Lopuchem

Lopuch.cz

Jméno:
Heslo:
Podpora LCD:
 
Klub PHP [ŽP: neomezená] (kategorie Programování) moderuje makovec.
Archiv
Diskuse o vybornem skriptovacim jazyku php. Dulezite odkazy, pred polozenim dotazu zkuste hledat odpoved zde:
  1. www.php.net - domovská stránka PHP
  2. www.kosek.cz - spousta tutorialu pro PHP v češtině
  Nastavení klubu     Nastavení práv     Homepage     Anketa     Přítomní     Oblíbené     Lopuch     Kategorie  
autor: 
text: 
vyplnit a 
Help
 Titulek, text příspěvku  
Opište pozpátku následující text bez prostředního znaku: apzcsbf
[ 1845 ] <Novější  <<<Nejnovější  Nejstarší>>>  Starší>  
huh huh 7.5.2012 10:40  3239
Píšu z hlavy, možná blbě :-)
$x = 4;
if (isset($_POST['gal_tab_x'])) { // formular byl poslan, menime hodnotu
  $x = (int)$_POST['gal_tab_x'];
  if ($x >= 2 and $x <= 6) { // je-li platna
    setcookie('tabulka_x', $x);
  }
} elseif (isset($_COOKIE['tabulka_x'])) {
  $x = (int)$_COOKIE['tabulka_x'];
  if ($x < 2 or $x > 6) { // neni-li platna
    $x = 4;
  }
}
a pri cteni
$tx = 4;
if (isset($_COOKIE['tabulka_x'])) {
  $tx = (int)$_COOKIE['tabulka_x'];
  if ($tx < 2 or $tx > 6) { // neni-li platna
    $tx = 4;
  }
}
puschpull puschpull být nad věcí, pohoda a klid ... - AV-Com (Homepage) 7.5.2012 10:11 - Oblíbené kluby (08:01) 3238
zase se plácám v "jednoduchém" problémuna jedné stránce s formulářem chci zvolit rozměr tabulky, který bude platný i na jiných stránkách webu (po celou dobu, kdy uživatel bude na stránkách či nezrestartuje prohlížeč)

určitá hodnota bude výchozí (například 4)
uživatel bude moci zvolit mezi 2,3,4,5,6

potřebuji aby zvolená proměnná zapamatována



zkouším něco jako:

if (!isset($_POST['gal_tab_x'])) {$x = 4;}
else { $x = $_POST['gal_tab_x'];}
if(isset($_COOKIE['tabulka_x'])) {setcookie ('tabulka_x', $x);}

nebo
if (!isset($_POST['gal_tab_x'])) {$x = 4;}
else { $x = $_POST['gal_tab_x'];}
if(!isset($_COOKIE['tabulka_x'])) {setcookie ('tabulka_x', $x);}

nebo
if(!isset($_COOKIE["tabulka_x"])) {setcookie ("tabulka_x", 4);}
else {$x = $_POST['gal_tab_x']; setcookie ("tabulka_x", $x);}

ale pořád to není ono.
Když se vrátím na stránky s volbou hodnoty, tak je ta v cookies přepsána tou výchozí

při použítí na stránce proměnné volám:
$tx = $_COOKIE['tabulka_x'];
$ty = $_COOKIE['tabulka_y'];


Potřebuji trochu popostrčit (či nakopnout) jakou techniku mám použít.
A možná také že místo cookies použít sessions či globals ... nevím
puschpull puschpull být nad věcí, pohoda a klid ... - AV-Com (Homepage) 25.4.2012 11:18 - Oblíbené kluby (08:01) 3237
knedle [3236]:
dík
:)
knedle knedle online - Krabice živých 25.4.2012 10:59  3236
do promenne (pozdeji pouzite jako podminka/hodnota ve where v sql dotazu) $cond nastavi hodnotu

priklad>
$parent = 0;
bude sql
where parent IS NULL

$parent = 6
bude sql
where parent = 6

puschpull puschpull být nad věcí, pohoda a klid ... - AV-Com (Homepage) 25.4.2012 10:56 - Oblíbené kluby (08:01) 3235
co přesně dělá tento řádek?:

$cond = $parent == 0 ? "IS NULL" : "= $parent";


bredy 23.4.2012 22:22  3234
tvxSpíš jde o databázi. Netuším, kolik tam bude záznamů. Ze začátku asi málo, ale jak budou přibývat uživatelů, tak každý aktiv na mobilu (i v pozadí) tam bude mít záznam.
tvx tvx Myslet si, že svět je JEN takový, jak - ho v daný čas můžeme pochopit je hloupé. 23.4.2012 15:59  3233
at funguje v linuxu
urcite bude lepsi si udelat vlastni univerzalni cron-skript kterej to bude resit sam. jednou za minutu ho pousteby nemel bejt problem, pokud to bude na serveru. problem by to asi byl pro nejakej hodne slabej HW ale mobilni zarizeni ci staleta zalezitost.
bredy 23.4.2012 13:22  3232
vibsoftMám pocit, že tam něco takového je. Ale když není, tak si to asi napíšu. To zpoždění takto realizovat nechci, protože těch plánovaných akcí se může sejít víc. Dokonce se bojím, že atnebude až tak vhodný, takže si to nakonec napíšu, protože by to chtělo, aby se ty požadavky nějak groupovali v případě, že se jich sejde víc. Ten čas není až tak kritický, a odchylka půl minuty je dostatečná, takže zgroupování update na čas 3:05 a 3:10 do jednoho požadavku ideální.

Jen jsem se chtěl zeptat, jestli není nějaký standardnější postup, abych nevymýšlel kolo.
vitsoft vitsoft Pryč se zrůdnou obrazotvorností mládeže! - about.me 21.4.2012 14:34  3231
at existuje i v Linuxu? Ve Windows je to jen submitér džobů do cronu (kterému Microsoft říká Scheduler).
Ještě je možnost spouštět zpožděné akce tak, že se aktuální thread uspí, ale neukončí (takže přitom bohužel zabírá paměť webserveru):

set_time_limit(60*$zpožděníMinut);
sleep(60*$zpožděníMinut);
ProveďAkci();
bredy 20.4.2012 14:15  3230
huh at by možná šel.
huh huh 19.4.2012 14:05  3229
že by se to nějak jmenovalo, o tom nic nevím
puschpull puschpull být nad věcí, pohoda a klid ... - AV-Com (Homepage) 19.4.2012 13:18 - Oblíbené kluby (08:01) 3228
hezký elegantní řešení

i pro mě pochopitelný (teď když to vidím napsané)
:-)
puschpull puschpull být nad věcí, pohoda a klid ... - AV-Com (Homepage) 19.4.2012 13:11 - Oblíbené kluby (08:01) 3227
super!huh [3226]:
chápeš to naprosto skvěle
otestoval jsem s tím různé rozměry a šlo to vždy tak jak bylo zadání.

Jmenuje se tento úkol (řešení) nějak? Česky či anglicky?
huh huh 19.4.2012 12:40  3226
puschpull [3221]: nevím, jestli to chápu správně, ale třeba:
<?php
$P = 24;
$k = 8;
$vysl = array('a','b','c','d','e','f','g','h','i','j','k','l','m');
$t = '<table border=1>';
$length = count($vysl);
$poli = max($P, $k); 
for ($i = 0; $i < $poli; $i += $k) {
   $t .= '<tr>';
   for ($j = $i; $j < $i + $k; ++$j) {
      if ($j < $length) {
         $field = $vysl[$j];
      } else {
         $field = '&nbsp;';
      }
      $t .= '<td>'.$field.'</td>';
   }
   $t .= '</tr>';
}
$t .= '</table>';
echo $t;
?>

puschpull puschpull být nad věcí, pohoda a klid ... - AV-Com (Homepage) 19.4.2012 12:32 - Oblíbené kluby (08:01) 3225
knedle [3223]:
dík
večer zkusím
:)

[ 1845 ] <Novější  <<<Nejnovější  Nejstarší>>>  Starší>  

(c) 2001-2011 Lopuch.cz   
Kontakt