Heledte, neda se (asi ne, ale ptam se) udelat, za kdyz PHP "premejsli" tak tam nabehne stranka "cekejte - pracuju!" a az se to dokonci, tak nabehne ta vygenerovana stranky.... Jde to nejak?
Protoze ja se bojim, ze kdyz se u me generuje skrypt (a to na 1236 Kb/s trva nekdy i dyl nez 30 sekund) tak to mezitim nekdo vypne a vzda to, protoze si bude myslet ze to nefunguje!.....
please wait.....jde to nejak?
<?php
print "Cekejte...";
flush();
for(;;) print "bla bla :)))";
?>
jasne ze to de.. ale php pracuje strasne rychle.. takze je to zbytecny
Ja za to nemuzu - ja odesilam dva maily - do kazdyho z nich se generujou dve nahodny cislo (delka mezi 100 a 10000000), potom se do nich vklada dnesni datum, vase IP a hafo dat z formulare - a trva to dyl jak 30 sekund - a to je uz celkem pekna daba :-)
Tak zhruba takhle to vypada (teda asi 2/3 veci jsem z toho vymazal, takze to neni kompletni ...) a nekam sem bych to potreboval dostat - kdyz tam proste dam ty tri radky, jak radil >Tomík< tak trot trvá asi tri minuty a pak mi to vypise celou stranku blablablablablablablabal (a takhle este asi 15000 radku....)
tak asi sem to holt nepochopil - musite na me opatrne, fakt pls, moooc nutne bych to potreboval :-)
<?
$fp = fopen("$registrace", "a");
fputs($fp, "Registrační číslo -<b> $klic </b><br>Datum přijetí
registrace -<b> $datum </b><br>Váš nick - <b> $nick </b><br>Váš kontaktní email - <b> $email</b><br>Status registrace -<b> registrace přijata</b><br><br>Pokud registrace trvá déle než 2 týdny od odeslání registrace nebo máte nějaké dotazy, napište mi na email : <a href='mailto:myflower@atlas.cz'>MyFlower@atlas.cz");
fclose($fp);
mail("bla@bla.blabla", "blablabla", "blablabla");
mail("$email", "blabla", "blablablablablabla");
?>
>a trva to dyl jak 30 sekund
no.. nejdyl asi trva to odesilani mailu..
jestli chces muzes to vrazit na samostatnou stranku a po odeslani to presmerovat..
<loading.php>
Cekejte prosim, zpracovavam..
<?
$m[1]=mail("bla@bla.blabla", "blablabla", "blablabla");
$m[2]=mail("$email", "blabla", "blablablablablabla");
if($m[1] and $m[2]){
?>
<meta http-equiv="refresh" content="0; url=sent.php">
<? } ?>
//nevim jestli sem ten meta napsal dobre.. radsi me nekdo vopravte.
jenom takovej detail. Vam asi nedoslo, ze jakejkoliv text se do prohlizece posle, az kdyz parser dokonci zpracovani kompletne cely stranky do posledniho skriptu... Mozna staci spolehat na to, ze nez se zacne ta pozadovana stranka nacitat, tak v prohlizeci zustane viset ta, co tam byla predtim. Tedy nacist jako prvni nejakou prvni stranku, kde by bylo "cekejte prosim", a tu s meta refreshem (s dostatecnym casovym odstupem, aby se ta prvni stihla nacist) presmerovat na ten dlouhotrvajici skript.
ok.. a co takhle..
<loading.php>
Cekejte prosim, zpracovavam..
<? include("mail.php"); ?>
<mail.php>
<?
$m[1]=mail("bla@bla.blabla", "blablabla", "blablabla");
$m[2]=mail("$email", "blabla", "blablablablablabla");
if($m[1] and $m[2]){
?>
<meta http-equiv="refresh" content="0; url=sent.php">
<? } ?>
Sak pisu flush(). Se mrknete do manualu. Tato funkce zpusobu vypradneni bufferu. Proste vysle do sveta jiz zpracovany skript a zbytek se posle pozdeji.
I kdyz v tomto pripade by to bylo zbytecny, protoze mail by se mel poslat rychle.
Mozna, ze by se mel poslat rychle, ale on se rychle neposila ;-)
MyFlower: docela by me zajimal algoritmus,ktery na ten tricetisekundovej vypocet pouzivas..jestli teda neni nijak klicovy z bezpecnostnich duvodu...
Pokud se me chces na neco zepotat - mluv na me CESKY a ne INTERNĚŤÁCKY... tzn. - nechápu na co se ptáš -teda pokud se ptáš...
Algoritmus (nebo dřívějším pravopisem algorithmus) je přesný návod či postup, kterým lze vyřešit daný typ úlohy. Pojem algoritmu se nejčastěji objevuje při programování, kdy se jím myslí teoretický princip řešení problému (oproti přesnému zápisu v konkrétním programovacím jazyce).
:: http://cs.wikipedia.org/wiki/Algoritmus ::
zjednodusene receno me zajima, jestli mi prozradis, jakej vypocet muze trvat tak dlouho... (presne jakej postup u toho vypoctu pouzivas)
Dobre - rekl si o to ;-)
Tady ti posilam celou stranku - jestli tam je nejaka blbost, tak se ze ni omlouvam...
<head>
<meta name="author" content="MyFlower">
<meta name="copyright" content="(c) MyFlower (cs) 2004-2006">
<title>Battlefield 2 >>>Rónin CLAN<<<</title>
<link rel="shortcut icon" href="favicon.ico" >
<meta http-equiv="Content-Language" content="cs">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250">
</head>
<body link="#000000" vlink="#000000" alink="#000000" bgcolor="#620000">
<font color="#FFFFFF">
<?
function strgen($pocet_pismen, $slovnik=7)
{
if (!is_int($pocet_pismen) or !is_int($slovnik)) { return false; }
if ($pocet_pismen<0 or $slovnik<0 or $slovnik>7) { return false; }
$a_mala = array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z');
$a_velka = array('A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z');
$a_cisla = array(0,1,2,3,4,5,6,7,8,9);
$a_vyber = array();
$ret = '';
if (($slovnik & 1) == 1) $a_vyber = $a_mala;
if (($slovnik & 2) == 2) $a_vyber = array_merge($a_vyber, $a_velka);
if (($slovnik & 4) == 4) $a_vyber = array_merge($a_vyber, $a_cisla);
srand((double)microtime()*1000000);
for($i=0;$i<$pocet_pismen;$i++) $ret .= $a_vyber[array_rand($a_vyber)];
return $ret;
}
$klickodeslani = strgen(30,7);
$klic = $klickodeslani;
$datum = date("d.m. Y");
$registrace = "registrace/$klickodeslani.htm";
$nick2 = $nick;
$email = $email;
$jmeno = $jmeno;
$prijmeni = $prijmeni;
$narozeni = $narozeni;
$original = $original;
$proslov = $proslov;
$dodatky = $dodatky;
$datum = $datum;
$klic = $klic;
$klickodeslani = $klickodeslani;
$fp = fopen("$registrace", "a");
fputs($fp, "Registrační číslo -<b> $klic </b><br>Datum přijetí registrace -<b>
$datum </b><br>Váš nick - <b> $nick </b><br>Váš kontaktní email - <b>
$email</b><br>Status registrace -<b> registrace přijata</b><br><br>Pokud registrace
trvá déle než 2 týdny od odeslání registrace nebo máte nějaké dotazy, napište mi na
email : <a href='mailto:myflower@atlas.cz'>MyFlower@atlas.cz");
fclose($fp);
mail("myflower@atlas.cz", "Registrace (reg. klic - $klic)", "Cau, práve se někdo
zaregistroval do klanu:\nInformace o
nem:\nNick: $nick\nEmail: $email\nIP: $REMOTE_ADDR\nJméno: $jmeno\nPrijmení:
$prijmeni\nDatum narození: $narozeni\nMá originálku? - $original\nProslov:
$proslov\n\nDodatky: $dodatky\n\nDatum prijeti registrace: $datum\nRegistracni klic:
$klic\n\nJeho osobni stranka je
tady:\nhttp://www.ronin-clan.wz.cz/cz/registrace/$klickodeslani.htm\n(jeho
vygenerovana stranky by mela koncit na $klickodeslani.htm");
mail("$email", "Registrace do klanu Rónin", "Vase registrace do klan uprobehla
uspesne!\nPro kontrolu zasilame jeste jednou vsechna vyplnena data:\nNick:
$nick\nEmail: $email\nJméno: $jmeno\nPrijmení: $prijmeni\nDatum narození:
$narozeni\nMá originálku? - $original\nProslov: $proslov\n\nDodatky:
$dodatky\n\nDatum prijeti registrace: $datum\n\nVas registracni klic je $klic (klic
USCHOVEJTE!)\n\nPokud chcete byt prubezne informovani o postupu vasi
registrace, muzete se kouknout na vasi soukromou stranku:\nAdresa je zde
http://www.ronin-clan.wz.cz/cz/registrace/$klickodeslani.htm\n\nJeste jednou
dekujeme za registraci a tesime se na brzke shledani!\nTeam klanu
Rónin!\n\n_________________\nZadost o registraci prisla z IP:
$REMOTE_ADDR\nPro vice informaci navstivte vasi soukromou stranku...");
echo "<p align='center'><table align='center' onclick='window.close()' border='1' cellpadding='0' cellspacing='0' style='border-collapse: collapse' width='60%' id='ZAVRI_OKNO'><tr><td width='100%' gcolor='#FF0000'><p
align='center'>Zavři okno</td></tr></table><b><H2>Vaše registrace proběhla úspěšně!</H2><b><br><H3>Zaregistroval jste
se takto:</H3></b></p><p align='left'><br>Nick: $nick<br>Email:
$email<br>Skutečné jméno: $jmeno<br>Příjmení:
$prijmeni<br>Datum narození: $narozeni<br>Máte originálku? $original<br>Váš proslov: $proslov<br>Dodatky:
$dodatky<br><br>Jelikož jste souhlasil(a) s pravidly klanu, byla vaše IP adresa a všechny údaje uloženy do databáze
členů!<br>(Vaše IP: $REMOTE_ADDR)<br><br><b>Datum přijetí registrace:
$datum<br>Registrační klíč:<font size='5' color='#00FFFF'><br><b>$klic
</b></font></b><i><br>Registrační klíč uschovejte ke
kontrole!</i><br><br><br></p><h3><p align='right'>Děkujeme za
registraci!<br>Team klanu Rónin</p></h3>";
?>
a k cemu je tohle?
$email = $email;
$jmeno = $jmeno;
$prijmeni = $prijmeni;
$narozeni = $narozeni;
$original = $original;
$proslov = $proslov;
$dodatky = $dodatky;
$datum = $datum;
$klic = $klic;
$klickodeslani = $klickodeslani;
dyt to nic nedela...
no trosku nechapu $nick2 = $nick;$email = $email;$jmeno = $jmeno;$prijmeni = $prijmeni;$narozeni = $narozeni;$original = $original;$proslov = $proslov;$dodatky = $dodatky;$datum = $datum;$klic = $klic;$klickodeslani = $klickodeslani;... ale predpokladam, ze to jsou POST promenne. No tak jediný, co by na tom mohlo trvat, je ta fce mail().
jaktoze ne? vzdyt to priradi do promene hodnotu kterou uz davno ma:D
docela dobrej zp. jak zaplacavat script
mozna z toho neco vypadlo, kdyz to kopiroval sem...
mozna z toho neco vypadlo, kdyz to kopiroval sem...
Tamtop se zase resi jinde - viz formum: " Jak soi "podržet" vyplněná data na další stránku? "
jj - uz jsem to vyresil - sice uplne jinak, ale uz je to v pohode!
Díííky!