Autor | Zpráva | ||
---|---|---|---|
Nuimi Profil |
Mam tento kon, je plne funkcni, ale email odesle az po prihlaseni na stranky, slo by nejak odesilat email aniz by se musel clovek prihlasit??
<script language="javascript" type="text/javascript"> function tiktak() { var cas=new Date() var hodina=cas.getHours() var minuta=cas.getMinutes() var sekunda=cas.getSeconds() if (minuta<10) { minuta="0"+minuta } if (sekunda<10) { sekunda="0"+sekunda } document.zobraz.hodiny.value=hodina+":"+minuta+":"+sekunda setTimeout("tiktak()",1000) if(hodina == "17" && minuta == "20" && sekunda == "00") { <?php include"pripojeni.php"; $datum=Date("m-d"); $den=Date("d"); $mesic=Date("m"); $_='<br>'; $overeni="SELECT datum, jmeno, prijmeni FROM registrace WHERE SUBSTRING(datum,6) = '".$datum."'"; $dotaz=$db -> query($overeni); while($row = $dotaz ->fetch_assoc()) { if($dotaz->num_rows > 0) { $cil="Nuimi@seznam.cz"; $predmet = "Narozeniny"; $odesilatel = "Charita Jičín"; $zahlavi = "MIME-Version: 1.0\r\n"; $zahlavi .= "Content-type: text/html; charset=\"utf-8\"\r\n";; $zahlavi .= "From: Charita Jicin\r\n"; $text ="Dnes má narozeniny ".$row['jmeno']." ".$row['prijmeni']."\r\n"; mail($cil, $predmet, $text, $zahlavi); } } $overeni1="SELECT registrace.jmeno AS 'jmeno1', svatky.jmeno AS 'jmeno2', prijmeni FROM registrace LEFT JOIN svatky ON registrace.jmeno=svatky.jmeno WHERE den=".$den." AND mesic=".$mesic.""; $dotaz1=$db -> query($overeni1); while($row1 = $dotaz1 ->fetch_assoc()) { if($row1['jmeno1'] == $row1['jmeno2']) { $cil="Nuimi@charitajicin.cz"; $predmet = "Svátek"; $odesilatel = "Charita Jičín"; $zahlavi = "MIME-Version: 1.0\r\n"; $zahlavi .= "Content-type: text/html; charset=\"utf-8\"\r\n";; $zahlavi .= "From: Charita Jicin\r\n"; $text ="Dnes má svátek ".$row1['jmeno1']." ".$row1['prijmeni']."\r\n"; mail($cil, $predmet, $text, $zahlavi); } } ?> } } tiktak() </script> |
||
Keeehi Profil |
Takhle se ale javascript s PHP nedá spojit.
www.pehapko.cz/zakladni-kurz/15-php-a-javascript nebo Nejčastější potíže s PHP (FAQ) » Jak přenést proměnnou z javascriptu do PHP |
||
Nuimi Profil |
#3 · Zasláno: 27. 8. 2016, 20:14:28
tak proc to funguje ??
|
||
Keeehi Profil |
#4 · Zasláno: 27. 8. 2016, 20:22:36
Emaily se odesílají úplně nezávisle na tom javascriptu. Když bys ho odstranil, bude to "fungovat" úplně stejně. To proto, že PHP se vykoná už na serveru a teprva až když skončí (emaily jsou už odeslané), tak teprve pak se stránka odešle do prohlížeče návštěvníka a může se začít vykonávat javascript.
Dá se to taky poznat ze zdrojového kódu stránky, který si zobrazíš v prohlížeči. Na tom místě, kde ho máš ve scriptu v prohlížeči nic nebude. Když se na to místo dostane javascript, neměl by ani podle čeho zjistit, že tam na tom místě na serveru PHP kód je, takže by ho ani nemohl nějak spustit nebo tak. To že ti to "funguje" je jen souhra náhod. Víc informací najdeš v dokázaných článcích. |
||
Nuimi Profil |
#5 · Zasláno: 27. 8. 2016, 23:40:37
Dobrá, převedl jsem proměnnou, ale nenacpu tam cely kus kodu, to je nemozny
|
||
Keeehi Profil |
Nuimi:
„Dobrá, převedl jsem proměnnou, ale nenacpu tam cely kus kodu, to je nemozny“ Evidentně jsi to nepochopil. Nemůžeš to dát do jednoho souboru. Nebo alespoň ne tak, jak si myslíš. Nejjednodušší bude, když do jednoho souboru dáš ten PHP script a ten odešle email pokaždé, když ho zavoláš. A v tom javascriptu v místě, kde byl původně ten PHP kód budeš ten nový soubor volat. Jak? AJAXem. Úplně ti bude stačit z části Pseudo AJAX to Pingnutí obrázkem. Je ti ale snad doufám jasné, že tu stránku s javascriptovým kódem budeš muset mít někde pořád otevřenou! To se dá ale velmi jednoduše vyřešit tak, že tu práci s časováním nesvěříš javascriptu, ale programu na to přímo určenému. Jmenuje se CRON. |
||
Časová prodleva: 8 let
|
0