Kiskalóz Posted June 30, 2011 Posted June 30, 2011 Segítene valaki abban , hogy JS ONMOUSEOVER eseménybe hogyan tudok php kódot beleilleszteni? Lényeg van egy php változó (szöveg), amit szeretnék megjeleníteni.. de nem akar mûködni. Ezt csináltam: <a href="#" ONMOUSEOVER="popup('<?php echo $pr;?>', 'white')"; ONMOUSEOUT="kill()">Akármi</a> és nem mûködik.. így viszont rendben van: <a href="#" ONMOUSEOVER="popup('blablablablabla', 'white')"; ONMOUSEOUT="kill()">Akármi</a>
Pjotr Posted June 30, 2011 Posted June 30, 2011 A "nem akar mûködni" mit jelent pontosabban? Mit fog kiírni?
Kiskalóz Posted June 30, 2011 Author Posted June 30, 2011 Konkrétan azt hogy nem jön elõ a popup ablak, benne a szöveggel.
Pjotr Posted June 30, 2011 Posted June 30, 2011 Konkrétan azt hogy nem jön elõ a popup ablak, benne a szöveggel. HTML-ként mi jelenik meg? Azt gondoltam, hogy nem mûködik a kliensoldali kód.
arpsoft Posted June 30, 2011 Posted June 30, 2011 <?php echo '<a href="#" ONMOUSEOVER="popup('.$pr.', \'white\')"; ONMOUSEOUT="kill()">Akármi</a>'; ?>
Kiskalóz Posted June 30, 2011 Author Posted June 30, 2011 Na közben sikerült kicsit debuggolni a kódot.. szóval.. írtam egy másik pr változó és azzal mûködött. Szóval a pr változóban van valami gond. De a változó létezik mert azt is kiírtam. Szóval a változó: $pr="Mai nap:".date('Y.m.d', $tomb['naptar_datum'])."<br> Kezdés:".$tomb['naptar_munka_kezd'].":00-kor<br> Vége:".$tomb['naptar_munka_vege'].":00-kor<br> Munkaidõ:".$tomb['naptar_munkaido']."óra<br> Napi munka :".$auto_db."darab"; Simán echo $pr -nél szépen kiírja az adatokat.. de a js-ben már nem. @arpsoft: sajna ez sem jó.. próbáltam
arpsoft Posted June 30, 2011 Posted June 30, 2011 És értelmeznie is kell a változóban lévõ változóneveket?
Kiskalóz Posted June 30, 2011 Author Posted June 30, 2011 Ezt nem értem.. a $pr-ben már csak string-ként tárolom az adatokat nem? Amikor belerakom a $pr-be akkor értelmezi a php a tömbök adatait. Tehát csak kiírja oszt jólvan.
arpsoft Posted June 30, 2011 Posted June 30, 2011 Bocsi, csak rosszul értelmeztem amit olvastam. Azt hittem, hogy ez van benne a $pr-ben és nem értékadásként kezeltem. Megkaphatnánk a popup() kódját?
Kiskalóz Posted June 30, 2011 Author Posted June 30, 2011 Nem saját.. Netrõl <STYLE TYPE="text/css"> #dek { POSITION:absolute; VISIBILITY:hidden; Z-INDEX:200; } </STYLE> <DIV ID="dek"></DIV> <script TYPE="text/javascript"> <!-- Xoffset=-30; // modify these values to ... Yoffset= 20; // change the popup position. var old,skn,iex=(document.all),yyy=-1000; var ns4=document.layers var ns6=document.getElementById&&!document.all var ie4=document.all if (ns4) skn=document.dek else if (ns6) skn=document.getElementById("dek").style else if (ie4) skn=document.all.dek.style if(ns4)document.captureEvents(Event.MOUSEMOVE); else{ skn.visibility="visible" skn.display="none" } document.onmousemove=get_mouse; function popup(msg,bak){ var content="<TABLE WIDTH=250 BORDER=1 BORDERCOLOR=black CELLPADDING=2 CELLSPACING=0 "+ "BGCOLOR="+bak+"><TD ALIGN=center><FONT COLOR=black SIZE=2>"+msg+"</FONT></TD></TABLE>"; yyy=Yoffset; if(ns4){skn.document.write(content);skn.document.close();skn.visibility="visible"} if(ns6){document.getElementById("dek").innerHTML=content;skn.display=''} if(ie4){document.all("dek").innerHTML=content;skn.display=''} } function get_mouse(e){ var x=(ns4||ns6)?e.pageX:event.x+document.body.scrollLeft; skn.left=x+Xoffset; var y=(ns4||ns6)?e.pageY:event.y+document.body.scrollTop; skn.top=y+yyy; } function kill(){ yyy=-1000; if(ns4){skn.visibility="hidden";} else if (ns6||ie4) skn.display="none" } //--> </SCRIPT>
Tasi Posted June 30, 2011 Posted June 30, 2011 A fájl amiben a php kódot akarod használni az php kiterjesztésű? Szerk: biztos az, mert különben látnád a kódot szövegként Ez viszont működik <a href="#" ONMOUSEOVER=popup('<?=$pr?>','white') ONMOUSEOUT="kill()">Akármi</a>
Pjotr Posted July 1, 2011 Posted July 1, 2011 Mûködne, ha engedélyezve lenne a sort tag-ek használata a php.ini-ben.
Kiskalóz Posted July 1, 2011 Author Posted July 1, 2011 Engedélyezve van.. mert máshol használtam én is. ----------------- Nos.. azt hiszem megvan a probléma oka.. Mégpedig Windows Server + IIS .. Ugyanis feltettem egy másik szerverre (Linux + apache) a kódot és hibátlanul mûködik. Nagyon köszönöm hogy próbáltatok segíteni.
kléni Posted July 1, 2011 Posted July 1, 2011 Szerintem mielõtt megjön valamelyik websulis tanár, a fenti kódot töröld Egyébként érdemesebb lenne egy globális változóba kiírni a szöveget, így elkerülnéd az invalid kódot.
Kiskalóz Posted July 1, 2011 Author Posted July 1, 2011 Mint mondottam megvan a probléma oka. Az meg hogy kinek hogy tettszik a kód .. hát magasról lesz..rom. Én nem olvastam a fórumszabályzatba, hogy csak Valid, és a legfrissebb keretrendszernek megfelelõ kódot lehet megosztani.
kléni Posted July 1, 2011 Posted July 1, 2011 Szabályzat nélkül is alap, hogy valid, friss kódot írunk, netrõl szerezni meg méginkább...
Kiskalóz Posted July 2, 2011 Author Posted July 2, 2011 Ne haragudj nem rád vagyok dühös. De úgy írtad mintha félni kéne akárkitől is, azért mert bemásoltam egy általam használt kódot, ami nem éppen a legjobb, és nem a legutolsó szabványt követi.
arpsoft Posted July 2, 2011 Posted July 2, 2011 Mi van a böngészõ által mutatott forrásban? Van különbség, ami miatt az egyik megy a másik nem?
Kiskalóz Posted July 2, 2011 Author Posted July 2, 2011 Ez az apache szerver forrása ami mûködik: <a href="#" ONMOUSEOVER="popup(' Netto:6000<br>Áfa:1500<br>Brutto:7500 ', 'white')"; ONMOUSEOUT="kill()">blablabla</a><br> Ez a win server + IIS: <a href="#" ONMOUSEOVER="popup(' Mai nap:2011.07.02<br> Kezdés:16:00-kor<br> Vége:22:00-kor<br> Munkaidõ:6óra<br> Napi munka :0darab ', 'white')"; ONMOUSEOUT="kill()">blablabla</a> Én nem látok különbséget. (Azért más a 2 adat mert más adatbázisból vesz ki adatokat.. adatbázist nem akartam ezért másolni)
kléni Posted July 2, 2011 Posted July 2, 2011 Tudtommal sortörés nem lehet a javascript ""-jeiben (micsoda szép megfogalmazás ). Tegyél oda egy $pr = str_replace"\n", "", $pr)-t.
Kiskalóz Posted July 2, 2011 Author Posted July 2, 2011 Na itt a megoldás. A kódban hogy átláthatóbb, olvashatóbb legyen nyomtam 1-1- entert.. na ez volt a baj. Köszönöm a segítséget!
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now