Javascript v PHP

Programovacie jazyky, rady, poradňa...
.:M4jco:.
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 442
Registrovaný: 01 máj 2007, 13:07
Bydlisko: Bassline lover
Kontaktovať používateľa:

Javascript v PHP

Príspevok od používateľa .:M4jco:. »

Nazdar, potrebujem jednu malú pomoc.
Potrebujem vložiť do php kodu jednoduchý javascript, avšak nefunguje to...buď sa script nevykoná alebo to vyhodí error.

Potrebujem vykonať script menom time.js a mám tento kod:

Kód: Vybrať všetko

echo "<script src=\"$url"."components/emoticons.js\" type=\"text/javascript\"></script>
<script src=\"http://www.m4jco.net/time.js\" type=\"text/javascript\"></script>
<form action=\"".articleURL($s, $a)."\" method=\"post\">

<div><strong>Nick:</strong><br /><input type=\"text\" name=\"nick\" value=\"";
atd....
Ale v tomto prípade sa script nevykoná...nevyhodí chybu, len sa nevykoná.

A pokial tam do toho phpčka ten javascript vpíšem celý tak to vypíše error:

Kód: Vybrať všetko

echo "<script src=\"$url"."components/emoticons.js\" type=\"text/javascript\"></script>
function naplnCas (){
var datum = new Date(); 
aktualniCas = datum.getHours() + "." + datum.getMinutes() + ":" + datum.getSeconds();
window.document.getElementById("cas").innerHTML = aktualniCas;

}

naplnCas();
window.setInterval("naplnCas()", 1000); 
<form action=\"".articleURL($s, $a)."\" method=\"post\">

<div><strong>Nick:</strong><br /><input type=\"text\" name=\"nick\" value=\"";
atd...
Netuším ako by som to mohol spraviť ešte, skúšam to už pekne dlho avšak bez úspechu, aj som hladal ale ani jeden spôsob čo som našiel nefungoval, tak neviem. Poradil by mi niekto ako to tam vložiť aby sa script vykonal?

:?
Ďakujem
zaggi
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 314
Registrovaný: 04 feb 2007, 19:32

Príspevok od používateľa zaggi »

aky error to hadze? :)
.:M4jco:.
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 442
Registrovaný: 01 máj 2007, 13:07
Bydlisko: Bassline lover
Kontaktovať používateľa:

Príspevok od používateľa .:M4jco:. »

Kód: Vybrať všetko

Parse error: syntax error, unexpected ':', expecting ',' or ';' in /data/m/4/m4jco.net/web/index.php on line 429
A na 429 riadku je tento zvýraznený kod

function naplnCas (){
var datum = new Date(); // prave aktualni cas
aktualniCas = datum.getHours() + "." + datum.getMinutes() + ":" + datum.getSeconds();
// vybral jsem z data, co potrebuju a obalil znamenky, aby se to prevedlo na retezec
window.document.getElementById("cas").innerHTML = aktualniCas;
// vypocitana hodnota se vklada jako html dovnitr elemnetu, ktery ma id "cas"
}

naplnCas(); //naplneni na zacatku
window.setInterval("naplnCas()", 1000); //pravidelna zmena, 1000 je sekunda
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

tie úvodzovyk ti uzavrú echo, treba ich backslashnúť, alebo nevypisuj ten js cez echo, iba preruš php (pomocou ?> ) potom napíš js, a znovu otvor php
.:M4jco:.
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 442
Registrovaný: 01 máj 2007, 13:07
Bydlisko: Bassline lover
Kontaktovať používateľa:

Príspevok od používateľa .:M4jco:. »

Teraz som to skušal backslashnuť aj dať "medzi" php kod, avšak javascript sa furt nespustil. Fakt netušm kde robím chybu...a či ju robím vlastne ja :?
programator
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 475
Registrovaný: 18 apr 2005, 8:31
Bydlisko: Papua new Guinea
Kontaktovať používateľa:

Príspevok od používateľa programator »

Takto to bolo myslene :

Kód: Vybrať všetko

<?php

printf("<script src=\"%scomponents/emoticons.js\" type=\"text/javascript\"></script><script src=\"http://www.m4jco.net/time.js\" type=\"text/javascript\"></script>", $url);

printf("<form action=\"%s\" method=\"post\">", articleURL($s, $a));

echo "<div><strong>Nick:</strong><br /><input type=\"text\" name=\"nick\" value=\"\">";

?>


<script language="javascript" type="text/javascript">

function naplnCas () { 
   var datum = new Date(); 
   
   aktualniCas = datum.getHours() + "." + datum.getMinutes() + ":" +      datum.getSeconds(); 
   window.document.getElementById("cas").innerHTML = aktualniCas; 
} 

naplnCas(); 

window.setInterval("naplnCas()", 1000); 

</script>


<?php
// dalsi php kod
?>
Mimochodom odporucam pouzivat fciu printf pri vypisovani napr. HTML kodu s hodnotami premennych, je to omnoho prehladnejsie, ako spajanie retazcov pomocou '.' pri fcii echo...
.:M4jco:.
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 442
Registrovaný: 01 máj 2007, 13:07
Bydlisko: Bassline lover
Kontaktovať používateľa:

Príspevok od používateľa .:M4jco:. »

Veď presne takto isto som to robil, možeš sa pozrieť aj na moju stranku ale klikni na nejaký článok najprv, lebo tam je ten kod a dať si zdrojový kod a uvidíš tam ten javascript, avšak on sa nevykoná a netuším prečo, kedže na stránke kde je len html to ide bezproblemovo.
chrono
VIP
VIP
Používateľov profilový obrázok
Príspevky: 7127
Registrovaný: 25 dec 2006, 15:17

Príspevok od používateľa chrono »

Firebug (a aj napr. chybová konzola) mi vo Firefox píše, že tam nemáš element, ktorý by mal id "cas" (takže sa ti ten čas nemá kam uložiť a preto sa nezobrazuje).

PS: Inak neviem, či je dobré dávať do meta tagu informácie ako html (konkrétne Keywords a Description).
programator
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 475
Registrovaný: 18 apr 2005, 8:31
Bydlisko: Papua new Guinea
Kontaktovať používateľa:

Príspevok od používateľa programator »

Presne tak, aj ja som skusal vyhladat element s ID "cas", no nenasiel som ho... TO si skus opravit, popr. zmenit ID elementu v prikaze
window.document.getElementById("cas").innerHTML = aktualniCas;
Napísať odpoveď