Jump to content
GSForum - Segélyvonal

ONMOUSEOVER + PHP


Kiskalóz

Recommended Posts

Kiskalóz

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>

Link to comment
Share on other sites

Pjotr

A "nem akar mûködni" mit jelent pontosabban? Mit fog kiírni?

Link to comment
Share on other sites

Kiskalóz

Konkrétan azt hogy nem jön elõ a popup ablak, benne a szöveggel.

Link to comment
Share on other sites

kléni

Nem lehetséges, hogy a pr változó üres?

Link to comment
Share on other sites

Pjotr
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.

Link to comment
Share on other sites

arpsoft
<?php
echo '<a href="#" ONMOUSEOVER="popup('.$pr.', \'white\')"; ONMOUSEOUT="kill()">Akármi</a>';
?>

Link to comment
Share on other sites

Kiskalóz

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

Link to comment
Share on other sites

arpsoft

És értelmeznie is kell a változóban lévõ változóneveket?

Link to comment
Share on other sites

Kiskalóz

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.

Link to comment
Share on other sites

arpsoft

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?

Link to comment
Share on other sites

Kiskalóz

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>

Link to comment
Share on other sites

Tasi

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 :lol:

 

Ez viszont működik

<a href="#" ONMOUSEOVER=popup('<?=$pr?>','white') ONMOUSEOUT="kill()">Akármi</a>

Link to comment
Share on other sites

Kiskalóz

Ez nem akar mûködni.. hiányzik 1-2 "-jel.

Link to comment
Share on other sites

Pjotr

Mûködne, ha engedélyezve lenne a sort tag-ek használata a php.ini-ben.

Link to comment
Share on other sites

Kiskalóz

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.

Link to comment
Share on other sites

kléni

Szerintem mielõtt megjön valamelyik websulis tanár, a fenti kódot töröld :hááát:

Egyébként érdemesebb lenne egy globális változóba kiírni a szöveget, így elkerülnéd az invalid kódot.

Link to comment
Share on other sites

Kiskalóz

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.

Link to comment
Share on other sites

kléni

Szabályzat nélkül is alap, hogy valid, friss kódot írunk, netrõl szerezni meg méginkább...

Link to comment
Share on other sites

Kiskalóz

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.

Link to comment
Share on other sites

arpsoft

Mi van a böngészõ által mutatott forrásban? Van különbség, ami miatt az egyik megy a másik nem?

Link to comment
Share on other sites

Kiskalóz

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)

Link to comment
Share on other sites

kléni

Tudtommal sortörés nem lehet a javascript ""-jeiben (micsoda szép megfogalmazás :D). Tegyél oda egy $pr = str_replace"\n", "", $pr)-t.

Link to comment
Share on other sites

Kiskalóz

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!

 

 

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...