ugrás a tartalomhoz

Archívum - 2012

június 25

Tábla bővités

bnc1995 · 2012. Jún. 25. (H), 08.14
Sziasztok!

Az lenne a kérdésem, hogy hogyan tudnék egy gombnyomással bővíteni egy táblázatot új sorokkal?
Mindehhez elég a JavaScript, vagy valami más is kell hozzá?
<table>
<tr>
<td>egy</td>
<td>kettő</td>
<td>három</td>
</tr>
<tr>
<td colspan="3"><input type="button" name="plusz" id="plusz" value="+" onClick="" /></td>
</tr>
</table>
Most kezdtem el tanulni a JavaScriptet, és csak akadozva megy.

Valaki tudna adni nekem linkeket tutorialokról? Első sorban magyar nyelvűt, de jó az angol is.

Segítségeteket előre is köszönöm

Bence
 

június 23

SQL Injection védése keresés esetén

haho · 2012. Jún. 23. (Szo), 15.51
Sziasztok!
Fórum üzenet írásakor az adatbázisba feltöltendő kódot a htmlentities($keresettKifejezes,ENT_QUOTES,"UTF-8") és a mysqli_real_escape_string() függvényekkel kódoltam. Ez eddig oké. Jól működik.

De keresés esetén (SELECT * FROM filmek WHERE filmCimek LIKE '%$keresettKifejezes%') olyan gondot okoz, hogy az escape-elt írásjelek miatt nem kapok megfelelő találatot.
Pl. ha egy film címben szerepel az aposztróf (valami'filmcím) akkor ugyanez a keresett kifejezés ez lesz "valami\'filmcím" ugye és ezért nem kapok megfelelő találatot.

Nem tudom mi lenne a megoldás. Hogyan kell ilyenkor eljárni? Köszi!
 

június 23

A lepattanó labdák kapcsán (OOP)

eddig bírtam szó nélkül · 2012. Jún. 22. (P), 22.04
Mikor megláttam morocztamás topikját, az első reakcióm az volt, hogy ha már Python, akkor miért nem OOP?
Nem akarok beleszemetelni a témájába, ezért inkább áthozom önálló topikba: ha van egy ilyen, bár nem webes, de egyszerűnek látszó feladvány, hogy néhány golyót kell mozgatni egy 2D-s, grafikus felületen, ezt hogy lehetne objektumokra bontani?
A feladat egyszerűnek tűnik, nem kell semmiféle különösebb fizikával foglalkozni. A mozgó "golyók" (nevezzük inkább korongnak, mivel 2D) véletlenszerű irányba mozognak azonos sebességgel. Ütközéskor a mozgás irányát 180fokkal megfordítom. Hogy melyik irányt (x v. y tengely) az mondjuk attól függ, hogy a korong kerületének mely pontján történt az ütközés.

Már a kiindulásnál elakadtam: a Tiszta kódban azt olvastam, hogy egy osztályról úgy lehet legegyszerűbben eldönteni, megfelel-e a SRP-nek, hogy leírom néhány szóban a feladatát. Amennyiben a leírásban megjelenik legalább egy "és", akkor az az osztály biztosan nem felel meg neki. Sajnos amit el tudok képzelni, azzal nem jön össze.
Egy osztály/objektum lenne a tábla, amin a korongok mozognak.
Ennek van mérete, színe és...
Két feladata: részben konténer jellegű objektum, amelynek egyik feladata a korongok "tárolása", másik feladata a megjelenítés. Máris egy "és" kapcsolat(??? ezen az osztályon/objektumon nem sokat gondolkodtam, számomra a lényeg a Korong osztály lenne)

Másik osztály a Korong nevű, amely a korongokat modellezné.
Ennek vannak olyan tulajdonságai, hogy szín, aktuális pozíció, valamilyen formában tárolva a mozgás iránya. Eddig OK.
És vannak feladatai... Többesszám??? Akkor ez eleve nem lesz jó. De... lehet, hogy mégis, csak én értelmezem rosszul a SRP-t?

Python egymásról lepattanó labdák

morocztamas · 2012. Jún. 22. (P), 14.44
Egy Python alkalmazás készítése során akadt gondom. Nem pont a nyelvvel, inkább a feladat megoldással. A lényeg, hogy a labdáknak egymásról vissza kellene pattanniuk, de nem nagyon csinálják, vagy ha igen, akkor is csak néha. Hogyan hozhatom helyre? Két labdánál tökéletesen működött még.

[colorer=python]# -*- coding:Utf-8 -*-
################################################################################
# Python program #
# Szerző: Mórocz Tamás, Budapest, 2012 #
# Liszensz: GPL #
# #
# Több színű labda mozog, amik egymásról és az oldalfalakról visszapattannak.

css betűk

Garpeer · 2012. Jún. 22. (P), 11.53
Üdv!

A Shapes of CSS nézegetése közben jött ötlet kicsit elburjánzott, de sikerült megalkotni az angol ABC-t CSS-sel.
Nem szép, de legalább nem jó semmire.
Esetleg valakinek ötlete, hogy az ékezeteket hogy lehetne megoldani?
 

június 21

An Introduction to WebVTT and <track>

Joó Ádám · 2012. Jún. 21. (Cs), 13.06
A webes videók feliratozására használatos új formátum
 

onmousedown onmouseup

csman007 · 2012. Jún. 21. (Cs), 12.41
Sziasztok!
A következő lenne a problémám.
Egy "csúszkát" csinálok éppen.
A js kód:

function getBox(e){
    	    var x=0;
    	    var y=0;
    	    var p=e;
    	    while(p){
    	        x+=p.offsetLeft;
    	        y+=p.offsetTop;
    	        p=p.offsetParent;
    	    }
    	    p=e;
    	    while(p){
    	        if((p.scrollLeft||p.scrollTop)){
    	            x-=p.scrollLeft;
    	            y-=p.scrollTop;
    	        }
    	        p=p.parentNode;
    	    }
    	    
    	    
    	    return [x,y,x+e.offsetWidth, y+e.offsetHeight]
    	}
    	intervalButton={};

    	function intervalButtonDown(ev,e,name,side){
    	    ev=ev?e:window.event;
    	    intervalButton.e=e;
    	    intervalButton.name=document.getElementById(name);
    	    intervalButton.side=side;
    	    e.parentNode.onselectstart = function (){return false};
    	    e.parentNode.style.MozUserSelect="none";
    	    return false;
    	}
    	
    	function intervalButtonMove(t,e){
    	    if(!intervalButton.e){return};
    	    e=e?e:window.event;
    	    var b=getBox(intervalButton.e.parentNode)
    	   	var v=Math.round((e.clientX-b[0])/30)*5+30;
		   	v=Math.min(v,55);
		    intervalButton.e.style.left=((6*(v-30))-5)+"px";
    	    intervalButton.e.parentNode[intervalButton.side]=v;
    	    $('#einsparung').val(v-25);
    	}
    	function intervalButtonUp(t,e){
    	    intervalButton={};
    	}
a html kód pedig

<div class="intervalInput" onMouseMove="intervalButtonMove(this,event);" onMouseUp="intervalButtonUp(this,event);" >
   <div style="left: 55px;" onMouseDown="intervalButtonDown(event,this,'minV','min');"  class="intervalButton"></div>
</div>
Minden jól megy, csak néha olyat csinál, hogy lenyomom az egérgombot és nem áll meg az onmousemove ha nincs lenyomva az egér gombja, hanem csúszkál ahogy húzom az egeret, pedig nincs lenyomva az egérgomb.
 

Szöveg megjelenítés probléma

pilot · 2012. Jún. 21. (Cs), 10.32
Sziasztok!

Egy weblap készítése során az a probléma merült fel, hogy az Internet Explorer 8 és a Mozilla Firefox 3.5 az oldal szöveges tartalmát nem egyformán jeleníti meg.
Konkrétan: 17px-es betűméretig a karakterek IE esetén kövérebbek, mint a Mozillá-nal. 18px-től már nem szembetűnő a probléma.

Itt a kód:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
BODY {
	font-family: Arial, Helvetica, sans-serif; 
	font-weight: normal;
	font-size: 17px;   
}
</style>
<title>Untitled Document</title>
</head>
<body>
<?php
echo 'teszt';
?>
</body>
</html>
 

PHP - kivételek szerializálása

inf · 2012. Jún. 21. (Cs), 06.08
Üdv.

Nem akartam ennek külön blog bejegyzést, mert annyira kis dolog, úgyhogy ide teszem be.

class Clean_Exception extends Exception {

    public function __sleep() {
        return array_keys(get_object_vars($this));
    }

}
Ha sima Exception-t akarunk szerializálni, vagy annak valami leszármazottját, akkor az egész stack trace-t is szerializálja a php az összes benne lévő változóval. Ez vicces dolgokat tud okozni, mondjuk amikor a munkamenet kezelő objektumok meg hasonlók is belekerülnek...

Egyébként mindez űrlap validáláshoz kell nekem. Jelenleg úgy oldom meg, hogy a validator-tól el lehet kérni egy kivétel példányt, ha hiba van, és utána eldobni, vagy menteni, attól függően, hogy mi a szitu... Felhasználóbarátabb űrlapoknál így vissza lehet küldeni az eredeti űrlaphoz munkamenet változókban a hiba okát. Azért ezt a módszert választottam, mert működik rá az automatikus kiegészítés, és lehet nézni a típusokat. Ha mondjuk típuskóddal, vagy bármi mással küldeném vissza a hiba okát, az sokkal nehezebben kezelhető lenne.
 

Kódkiegészítés

Pepita · 2012. Jún. 21. (Cs), 01.24
Sziasztok!

Olyan gondom van, hogy egy számomra nagyon tetsző framework-ot (CodeIgniter 2.1.0) és - szerintem - nagyon jó szerkesztőt (Komodo Edit 6) használok, de nincs kódkiegészítésem a CI "gyári" osztályaihoz és az általam írtakhoz sem. Ez nekem elég nagy probléma, úgy gyorsaságban, mint szintaktikai hibalehetőségként.

Próbáltam a Komodo-t "ráuszítani" a használt könyvtárakra (még egyenként is, bár elvileg az alkönyvtárakat is felveszi), de a plafon - jelenleg - az, hogy egy-egy helpernél működik. Ezek nem definiálnak osztályt, csak függvényeket.

Gondolom, a CI load->library(...) osztály betöltése/kezelése körül van valami trükk, amit a Komodo "nem ért". Annyira még nem bengéztem át a kódják, hogy rájönnék. Illetve valószínűleg nem is tudok eleget hozzá, legalábbis tartok tőle. (Kicsit még mindig idegen az interpreteres OOP.) A saját doksijában erre nem térnek ki, csak kb. annyi van, hogy "ha betartod ezeket és ezeket a név/fájlnév/könyvtár szabályokat, akkor hú de jó neked, használhatod a loadert és csak egyszer fogja betölteni stb."

Letöltöttem már a Komodo 7-et és a CI-ből is van már 2.1.1, de egyelőre nincs időm azokkal kísérletezni, de ha valaki azt mondaná, hogy akkor megoldódik a probléma, akkor a következő projektre már úgy készülnék.

Megköszönök minden észrevételt, elsősorban azok válaszát várom, akik használják/használták a fent említett szoftvereket.

Üdv. Pepita