Archívum - 2012
június 25
Tábla bővités
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á?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
■ 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>
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
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!
■ 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)
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?
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
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.
[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
Ü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?
■ 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>
A webes videók feliratozására használatos új formátum
■ onmousedown onmouseup
Sziasztok!
A következő lenne a problémám.
Egy "csúszkát" csinálok éppen.
A js kód:a html kód pedigMinden 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.
■ 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={};
}
<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>
Szöveg megjelenítés probléma
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:
■ 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
Üdv.
Nem akartam ennek külön blog bejegyzést, mert annyira kis dolog, úgyhogy ide teszem be.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.
■ 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));
}
}
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
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
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
■ 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