fejlesztés - 2006 április - 23 megfelelő bejegyzés

Mutass mindent

Jelöld be, hogy főbb mely kategóriákat akarod olvasni, vagy ha csak egyet: kattints a nevére.


WiZARD

Üdv

©   WiZARD   |   barátok fejlesztés történelem

Én is egy újonc vagyok (nem tudom hányan vagyunk/leszünk, szám szerint a harmadik beköszönő vagyok). Eddig nem sokat látogattam a blogot (más blogokat sem), és blog ellenes voltam, értelmetlen dolognak tartottam. Most picit emiatt gondban is vagyok, mert Haszprus kérte (najó, felajánlotta), hogy írhatok ide, ha akarok, és egyfelől akarok, másfelől picit az eddigi gondolataimnak ellentmondok ezzel. Szóval nem ígérem 100%-ra hogy rendszeresen írogatni fogok, de első lépésnek ez jó . (ja és a html dolgokkal nem vagyok teljesen tisztában, szóval lehet hogy néha vicces dolgokat fogok alkotni)

Magamról néhány szót: pár éve a BMF-en kezdtem informatikát tanulni, sikerült ezzel-azzal elcsúszni, így egy ideje ott tanulok, és egy ideig még várat magára a diploma . Mellesleg időközben rájöttem hogy az informatika mégsem érdekel annyira, mint ahogy régen gondoltam, és főleg nem akarok egész életemben gép előtt görnyedve informatikusként dolgozni, így valami mást is kellene tanulni. Lövésem se volt, hogy mit tanuljak, alapvetően semmi sincs, ami nagyon érdekelne, illetve ami olyan lenne, abból nem feltétlen lehet jól megélni, én elég pénzorientált vagyok, így ez fontos volt. Végül a BGF-Külkernél (angol KG) kötöttem ki, mint jó hírü iskola, egy jól hangzó képzéssel, ami még számomra elvégezhetőnek is tünt. A BMF-en ez a negyedik évem, Külkeren pedig az első, eddig elégedett vagyok a döntésemmel.

Szabadidőmben sok extrát nem csinálok, alszok, számítógépezek, mozizok, ilyesmi. Dolgozok is (már amennyire ezt munkának lehet nevezni), egy ismerős cégénél rendszergazda vagyok (haha), valamint a Mellesleg.hu-nak fotózok bulikban, meg kattintgatok pénzért bárkinek bárhol bármit . Hogy miről fogok írni, az jó kérdés. Filmek (+házimozi), fotózás, sulikról, néha pc, meg ami épp eszembejut.

Haszprus

Socket programozás help

©   Haszprus   |   fejlesztés howto

Toljatok nekem plz kulcsszavakat, miként lehet C progival unix alatt letölteni http-ről egy fájlt.

Be kéne olvasnom és a tartalmát elemezgetni. Még nem olvastam utána (és soha nem szoktam c-ben programozni) de egyelőre nem nagyon bírok elindulni guglival, a határidő meg enyhén szólva közeli.

(konkrétabban)

GigaThx!

Haszprus

Bejegyzés-várólista

©   Haszprus   |   blog éjjel fejlesztés version history

Ha minden igaz, ez a bejegyzés reggel 7:0x tájékán jelenik meg, noha 02:56-kor írtam/írom.

Reménykedjünk.

Később erről még többet.

BTW a társszerzőkkel átléptünk blog 2.6-ba.

Update 15:37: na íme egy screenshot arról, hogy miként viselkedett a bejegyzés várólista, amíg aludtam. Mindhárom bejegyzést éjjel 3 körül írtam, mielőtt aludni mentem. A script tökéletesen müködik, ahogy akartam, én viszont a bejegyzések írásakor rosszul gondoltam át a megjelenések időpontjait, mert kifelejtettem a harmadik szabályt.

A megjelenési szabályok:

  1. 23 és 6 óra között nem jelenik meg bejegyzés.
  2. Minden bejegyzés között min. 5 órának el kell telnie.
  3. Egy szerző két bejegyzése között min. 10 órának el kell telnie.
  4. Két filmes bejegyzés között minimum 20 óra kell elteljen, de ha van más témájú post is a várólistában, akkor min. 40.
  5. az utolsó post hossza beleszól a következő post megjelenítésének időpontjába. Lényegében hosszabb post több ideig lesz legfelül, de maximum 15 óráig (amennyiben van más, a többi szabály szerint megjeleníthető post).
  6. az utolsó postra érkezett kommentek darabonként egy óra várakoztatást okoznak (nem adódik hozzá a többi várakoztatáshoz), de legfeljebb 28 órányit. Ennek tipikusan csak a népszerű bejegyzések esetén van bármi jelentősége, azokat némileg tovább tartja az oldal tetején.
  7. ha a blog nincs nyaraló üzemmódban és a várólista mérete 5 fölé növekszik, vagy az utoljára publikált bejegyzés zártkörű volt, a várakozó bejegyzések publikálása lényegesen gyorsabbá válik. (fastQueue)

Update 2007. jún. 29. 06:56: bizonyos dolgok már nem pont így működnek vagy nem pont ezekkel a számokkal, netán egészen máshogy, de meguntam ennek a bejegyzésnek a frissítését.

Haszprus

Überlogger

©   Haszprus   |   fejlesztés php

Na szóval itten gondolkodtam hogy miként lehetne backupolni a bejegyzéseket, de csak szépen finoman, abban bízva, hogy remélhetőleg sosem lesz a backupra szükség.

Először arra gondoltam, egy fájlba szépen kiírom a bejegyzések szöveg mezőjét beküldéskor, oszt jóvan.

Második nekifutásra azonban készítettem egy functiont ami xml-be kiírja a bejegyzéshez kapcsolódó összes adatot, de nemcsak itt használható, hanem bárhol, rekurzívan egy akár többszíntü arrayt kinyom egy gyönyörüen formázott plain text alapú xml fájlba.

/**
 * rekurzívan xml-be fejt egy akár többszíntü array-t
 */
function arrayToXML($array, $level = 0) {
   $return = "";
   $indent = "";
   for ($l = 0; $l < $level; $l++)
      $indent .= "\t";
   
   foreach ($array as $key => $val) {
      $return .= "\r\n";
      $return .= $indent;
      if (is_array($val))
         $val = arrayToXML($val, $level+1) . "\r\n" . $indent;
      $return .= "<$key>$val</$key>";
   }
   
   return $return;
}

Majd pedig egy elegáns húzással:

   $backupfile = new File(....);
   $content = arrayToXML($_POST, 1);
   $content = "\r\n<post>$content\r\n</post>";
   $backupfile->appendContent($content);

Az eredmény egy konkrét példája:

<post>
   <b_id>2439</b_id>
   <szoveg><p>Müködése a kommentben.</p></szoveg>
   <b_cim>Quoter function</b_cim>
   <submit>Ment publikusan</submit>
   <gall_categ>0</gall_categ>
   <gall_entry_title></gall_entry_title>
   <b_commentable>on</b_commentable>
   <categ>
      <1>on</1>
   </categ>
   <b_privszoveg></b_privszoveg>
</post>
Haszprus

Accessibility to the max (képekben)

©   Haszprus   |   fejlesztés

Mindenhonnan nyomatják nekünk hogy a vakbarát weblapok milyen fontosak, de közben mindenki elfeledkezünk a… na kikről? Az analfabétákról! Az analfabéták fel vannak háborodva! íme, csak itt, csak most, Haszprus überblog analfabéta-barát archívum:

Viccet félretéve természetesen nem az analfabéta-barát oldalak létrehozása volt a célom, hanem hogy a /pic/ könyvtár egy barátságosabb felületet adjon a http-403-404 helyett. Előbb-utóbb a fenti oldalak fognak megjelenni ott.

Ami emögött van: mindazon képek listázása, amik linkelnek saját nagyobb változataikra. (Ergo jelentős mennyiségü kép kiesik, hisz sokmindenből nem teszek fel nagyobbat.)

Haszprus

Szép URL-ek - 3 - kompatibilitás

©   Haszprus   |   fejlesztés php

Nos, 404-es errordoc esetén az apache nem adja át az url-paramétereket a php scriptnek (azaz nem jön létre se a $_REQUEST, se a $_POST, se a $_GET tömb), ez értelemszerüen problémákat okoz a meglévő scriptekben.

A $_GET pótlása nem túl körülményes. (Illetve én a $_REQUEST-be írom, mert azt használom.)

$tmp_request_parameters = explode('&amp;', $URI);
foreach ($tmp_request_parameters as $trp) {
   $t = explode('=', $trp, 2);
   $_REQUEST[$t[0]] = $t[1];
}

A $_POST-ra egyelőre nincs ötletem.

Ami pedig még jó lenne, hogy pl. egy form az elküldendő adatait az url-hez szépen /.../ formában írogassa hozzá. Valszeg előbb-utóbb erre is sort kerítek, a megoldás gondolom valami script lesz, ami a form adataiból egy window.location változtatást visz véghez submit helyett.

Haszprus

Kommentkereső 1.0

©   Haszprus   |   fejlesztés

A kommentkereső is and feltétellel müxik mostantól több szóra, nagyjából végleges állapotában.

Bár megjegyzem, 100 kommentre van limitálva a találati lista és egyelőre semmilyen keresési opció nincs magán a tartalmazandó szavakon kívül.

Haszprus

Gravatar támogatás

©   Haszprus   |   fejlesztés

Nos, eljött a régóta várt feature, gravatar-támogatás. De nem úgy, hogy napokig nincsenek képek a kommentek mellett, ha épp haldoklik a gravatar.com, meg lassan töltődnek, meg mittomén, hanem szépen átcache-elve a blogra.

Egyébként a profil oldal html-jét teljesen átírtam, ráfért.

Megjegyzem, a gravatarról szedett kép lesz a júzer főavatarja. Azaz felülírás történik. (Kivéve ha rossz címet adott meg, ekkor az eredeti kép sértetlen marad.) A többi avatar, ha volt, megmarad. A gravataros email cím nem kerül tárolásra. Ha a gravataros képedet frissíteni szeretnéd, újra meg kell adnod a címet.

Haszprus

Különösen spamelt bejegyzések

©   Haszprus   |   fejlesztés php

Jó, persze, a wiw meghívókérés az nem spam valójában, de ez most tökmindegy.

Tekintve, hogy a blogon pillanatnyilag összesen csak egy különösen spamelt bejegyzés van (mégpedig az iwiwről szóló), ezért nem építek semmi adatbázis-cuccot a dolog mögé, egyszerüen forráskódba belegányolom. Lehet hogy gány, de így gyors, így egyszerü, és tekintve hogy ez a lista évente bővül egy bejegyzéssel, ezért könnyen karbantartható is.

/* spamszavak száma: spamfactor */
$spamwords = array("http://", "great", [...]);
$spamfactor = 0;
foreach ($spamwords as $spamword)
   if (strpos($rq['szoveg'], $spamword) !== false)
      $spamfactor++;

/**
 * különösen spamelt bejegyzések esetén nagyobb a valószínűsége, 
 * hogy spammel van dolgunk... */
$spammed_posts = array(2226);

if ($spamfactor > 0 && in_array($rq['bejegyzes_id'], $spammed_posts))
   $spamfactor++;

Majd ha marha sok időm lesz, lehet, hogy átültetem db alapúra ezt a spam, meg badword, meg spammed_posts témát, de ugye akkor kell hozzájuk kezelőfelületet írni és az rögtön rengeteg vesződséggel jár, és a karbantartás sem egyszerübb végülis mint forráskódba néhanapján belehegeszteni egy-egy új szűrt szót vagy id-t.

Haszprus

CSS++

©   Haszprus   |   fejlesztés

Eszközöltem pár változtatást a CSS-ben tegnap és ma. A blog egyre jobban szétesik IE6 alatt, de tekintve hogy közeleg az IE7, ez engem legkevésbé sem aggaszt.

Addig is használjatok valami jobb böngészőt.

(A Haszprus überblog választása: Firefox.
Megjegyzés: A Firefox telepítve van a HSZK valamennyi gépén.)

Update 19:25:

Haszprus

Szép URL-ek, második felvonás

©   Haszprus   |   fejlesztés

Nos, nincs könnyü helyzetben az, aki a dinamikus site-jához szeretne rövid url-eket készíteni, hiszen rögtön az első komolyabban elgondolkodtató kérdés:

Legyen az archívum formátuma /2006/04/11/2421, ahol a 2421 egy bejegyzés id-je. Az url hátralevő része lényegtelen. Oké, tiszta.

Jelenítsük meg ezen a dátumon az összes filmbejegyzést. 2006/04/11/film, oké, tiszta.

De a Haszprus überblog archívuma ennél sokkal többet tud, nevezetesen tetszés szerint vegyíthetők a bejegyzéskategóriák listázáskor. Pl. lehet egyszerre listázni a hwsw és a fejlesztés kategóriákat, vagy akár 10-et is, lényegtelen. Na ebből hogy lesz szép url? Hát, nehezen.

Megjegyzem, ha a kategóriákhoz pl. kettőhatványokat rendelek, akkor minden elképzelhető kategóriahalmazhoz társíthatok egy egyedi és egyértelmüen visszafejthető számot a kategóriákhoz rendelt számok összegéből. Pl. ha három kategóriám van, hwsw (1), fejlesztés (2), life (4), akkor 7 = mindhárom listázása, 6 = f+l, 3 = f+h, stb. Ágy ugyan rövid url-eket kapok, de a user nem tudja visszafejteni, és nem járok előrébb, mintha ronda url-eket használnék.

Haszprus

Szép URL-ek

©   Haszprus   |   fejlesztés

Elkezdek áttérni szép url-ekre. Lassan. A processz nem a legkönnyebb, mert sokmindent át kell írni, és szokásomhoz híven félkészen már publikálom a dolgot. A Haszprus überblog fejlesztésében ugyanis nem vesz részt tesztszerver, ráadásul kapásból szerverre mentem a fájlokat, pillanatnyilag a saját gépemen nincs is php meg semmi hasonló, úgyhogy az átmeneti hibákat tapasztalni fogjátok, ez van, nem izgat, az überblog nem egy éles projekt.

Egyelőre a bejegyzések kapnak https://blog.haszprus.hu/bejegyzes/(b-azonosito)/(b-cim)/(oldalszám) címet. A régi címek is működnek, a későbbiekben 301-es átirányítást kapnak, feltehetően. Az oldalszámnak egyelőre csak az üzenőfal esetében van jelentősége, mert csak az lapozható.

Ha komolyabb működésbeli hibát tapasztaltok, azért szóljatok. A képek egyelőre nem jelennek meg az alkönyvtárakban, erről tudok. (megoldva)

Ja egyébként nem biztos hogy így marad a bejegyzések címszintaktikája, igazából van erre egy sokkal ötletesebb megoldás is (/év/hónap/nap/b-cím, mint a cloneshiten), amivel egy picit többet kell melózni de megéri, az eredmény szép és használható. Hosszútávon megvalósítandó.

Haszprus

Kreatív spam?

©   Haszprus   |   fejlesztés

Kreatív spam? Nem mondhatnám. A következőket gyűjtöttem be tegnap:

Mmmm... Site looks good! Real good! a href=...
Great site! Good work a href=...
Hi! This site is really good! Thank you a href=...
Well done! Nice site you've got! Best regards! a href=...
Nice site! Good work. a href=...

Szerencsére amíg a spammerek ezen a szinten megrekednek, addig igen egyszerű szűrni őket. (Szánalmas.)

Haszprus

XSQL laborházi

©   Haszprus   |   bme fejlesztés

XSQL laborházi - XSQL + XSLT + XML + XPath + CSS. 8-ból csak 6 feladatot csináltam meg, ez elvileg már ötös. Valószínűleg vesztemre, mert a beugrómra valamiért hármast kaptam*. Őszintén szólva nem tudom miért, és kicsit ingerültté is tesz. De mindegy, hétfőn zh, úgyhogy erre egyszerűen nem akarok több időt szánni.

Egyébként meg nem tudom miért nem lehet leadni valami anyagot ebből a tárgyból, nem igaz hogy nem lehet két hetente egy előadást tartani vagy valami. Attól senki se lesz előrébb hogy fél óráig szopatja magát valami kérdésnek a megválaszolásával és közben egyhelyben toporog.

* Egyébként nemtom hányan voltunk laboron, teszemazt 15-en, abból 3 embernek lett meg a beugrója, úgy egyáltalán. Lassan írom hogy mindenki megértse: miért nincs ebből a tárgyból valami előadás?

Update 2006. ápr. 09. 00:46: na még egy feladat donez… mér nincs ebből valami előadás? egész apró infómorzsák hiánya miatt annyi időt elfecsérel az ember, hogy hihetetlen…

Haszprus

Link power

©   Haszprus   |   fejlesztés

Nos a statgép szerint tegnap 522 egyéni látogatóm volt, ez nagyszerű, már csak azt nem tudom, hogy mitől. A keresőkből ugyanis nem érkezett több ember a megszokottnál. Ma pedig 480-nál járunk, most, így 18 órakor. A webstats szerint tegnap 538 volt, ma pedig 496-nál járunk.

Nos van valami link a homárról, ahonnan tegnap 230 egyedi látogató jött. De hol? A főoldalon nem látom.

Megvan. Lézeres szemműtét és alternatívái c. link a kommentek közt. Beszarás hogy mekkora ereje van egy linknek a homár hozzászólásai (!) közt! Elképesztő.

Update 2006. ápr. 08. 00:52: 626-nál állt meg a pénteki számláló. Asszem egy ideig nem lesz újabb rekord

Haszprus

Áttérés UTF-8-ra

©   Haszprus   |   fejlesztés

Megpróbáltuk, egyelőre sikertelenül. Egy másik topicból áthelyeztem ide ezt a beszélgetést. Ezzel mellesleg tesztelem az új feature-t, a kommentáthelyezőt, amit direkt most fejlesztettem (OO).

(Rögtön felmerül egyébként (illetve már ezer éve felmerült), hogy vajon nem kéne-e a kommentek sorszámát is db-ben tárolnom, ahelyett hogy a megjelenítéskor egy ciklus generálja. Nem tudom. Igazából ez egy ritka problémára lenne megoldás, nem ítélem túlzottan fontosnak.)

Haszprus

PHP maxpont

©   Haszprus   |   bme php történelem

Na nyilván lehetett erre számítani, de azért említsük meg, hogy a php laborházim 14+45 = 59 pont lett, ez a maximum amit el lehet érni, és egyébként 32-től már amúgy is ötös (Igen, 32-től!) Mondjuk azt nem vágom, hogy hova tűnt a valid xhtml-ért, error_reporting e_all-ért és register_globals off-ért járó +4 (vagy +6?) pontom, valszeg a javító úgy volt vele hogy nincs rá nagy szükségem

Gratulálok. Talán a legprofibb megoldás, amit eddig láttam. Látszik, hogy volt már tapasztalatod a témában. [...]

Na jó, mit verjem magam, tényleg elég sokat foglalkozom a témával. Akik esetleg ezt szeretnék az orrom alá dörgölni egy hozzászólás formájában, hagyják ki, tisztában vagyok vele.

Meg kell mondjam, nagyon emberségesnek tartom az Adatb laborházik javítását, nem volt még olyan házi amihez ne gratulált volna a javító. Persze lehet hogy ez az ő egyéni érdeme. Mindenesetre respect & thx, jólesik.

Haszprus

userdel

©   Haszprus   |   fejlesztés

Megszabadultam 159 usertől a db-ből. 2005. jan. 1. előtt volt az utolsó belépett lapletöltésük, amúgy is 10-nél kevesebb, és sosem szóltak hozzá. (Persze van backup.)

Haszprus

Lapozható üzenőfal

©   Haszprus   |   fejlesztés

Lett lapozható üzenőfal (más kommentoldalak is lapozhatók, de egyelőre sehol sincs szükség a lapozásra, mivel 100 hozzászólást jelenítek meg egy oldalon), error_reporting(e_all), hibalogolás a háttérben, register_globals ha nem is off, de ahhoz hasonló, hamarosan pedig off lesz (szerver oldalon pillanatnyilag ez nem megoldható).

A lapozó egyébként smarty alapú.

Holnap pedig form zh.