Internet: PHP, CGI, stb.

[MEGOLDVA] SQL lekérdezés nem ismeri az UTF-8 karaktereket.

Sziasztok!

Eléggé kezdő vagyok még, bocsássatok meg.

Tehát: van egy UTF-8 táblám, ezt szeretném lekérdezni az alábbi kódrészlettel (illetve a módosított változatával),ebből: id: Árvíztűrő tükörfúró, Name: Árvíztűrő Tükörfúró ez lesz:

id: �rv�zt?r? T�k�rf�r� - Name: �rv�zt?r? T�k�rf�r�

Mit lehet ezzel kezdeni?


<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}

$sql = "SELECT id, firstname, lastname FROM MyGuests";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "
";
}
} else {
echo "0 results";
}
$conn->close();
?>

[MEGOLDVA] Javascript: addEventListener hatókör

Sziasztok,

van nekem egy ilyenem egy Firefox extension-ben:

document.addEventListener('click', selectedText, true);

mivel a weboldalak bármelyik területén kijelölhet szöveget a user, azaz nem tudom csak div-re vagy p-re korlátozni.
Viszont a funkció a kijelölés hatására feldob egy div-et, amiben különböző paramétereket lehet állítgatni. Ha ott klikkel a user bármire, akkor bezáródik a paraméterező div, mivel a félrekattintás a bezárás. Ha nem muszáj, nem opció az, hogy megszüntetem a listenert a div felugrásakor és lesz külön bezárás gomb rá ami majd újra aktiválja azt, ezt hagynám utoljára.

A kérdés, hogyan lehetne azt megoldani, hogy a fenti listener ne legyen érvényes a paraméterező div-re?
Google megvolt (sokat nem jelent, kereshetek én rosszul is), rengeteg variáció kipróbálása megvolt. Meg lehet ezt csinálni valahogy, vagy marad a bezárás gomb?

Előre is köszönöm a segítséget!

[megoldva] += objektumra

Bogarászom a Joomla forráskódját, bele kéne nyúlnom itt-ott. Új vagyok a terepen.

Ebben a fájlban: https://github.com/openshift/joomla-example/blob/master/php/includes/ro… látható a 75. sor:
$vars += parent::parse($uri);
Hogyhogy += kerül itt elő? Ha erre az operátorra rákeresek a php.net-en (http://php.net/manual/en/language.operators.assignment.php), nem látok ilyen megoldást. Ugyanakkor ez nyilván nem hibás, és ha nyomkövetem a Joomlát és kiíratom ezt a $vars-t, akkor ilyet ír ki:


Array
(
[format] : html
[Itemid] : 119
[option] : com_jumi
[view] : application
[fileid] : 8
)

Ez hogy alakulhat ki?
(Amúgy a "házi" nyomkövetésem ebből áll csak: $zo1=print_r($vars,true); $zol=str_replace ('=>',':', $zo1); system("echo '".$zol."'>> /tmp/debug"); )

PHP egy adat kalkulálása

Sziasztok!

A helyzet:
Van egy hibajegy rendszerünk, kb 4400 hibajeggyel. Hibajegyekhez Y-m-d rögzítve van, hogy mikor lett felvéve.

A kérdés az, hogy ebből meg lehet-e 'jósolni' nagyjából, hogy másnap mennyi hibajegy várható kb? A teljes grafikonunk alapján jól látszik, hogy a hibajegyek száma periódikusan változnak, ránézésre is meg lehet ítélni, de ezt inkább végezze a gép, azért van.

Kellenének ötletek, hogy merre induljak el ezen a téren.

Köszi

node.js - callback visszatérés "beágyazott" callback visszatérési értékével

Sziasztok,

egy egyszerű view helperen dolgozok, ami a paraméterekben kapott kulccsal
a blokkban található template részletet memcache-be rakja, majd következő
alkalommal az adott részlet legenerálása helyett onnan szolgálja ki.

Az egyetlen probléma vele az, hogy a node.js aszinkron működése miatt ugye, a külső
függvény hamarabb visszatér, minthogy a belső függvény lefutna, így lényegében
mindig null-al tér vissza.

Van erre valakinek ötlete, aki jártasabb a node.js-ben és Javascriptben?

Előre is köszönöm!


hbs.handlebars.registerHelper('cache', function () {
  var context = this;
  var options = arguments[arguments.length - 1];
  var html = null;
  var cacheKey = '';

  for(var i = 0; i < arguments.length - 1; ++i) {
    cacheKey = cacheKey + arguments[i];
  }

  memcached.get(cacheKey, function (err, data) {
    if (data) {
      html = data;
    } else {
      html = options.fn(context);
      memcached.set(cacheKey, html, 0, function (err) {});
    }
  });

  return new hbs.handlebars.SafeString(html);
});

Online verseny

Sziasztok!

Egy városi matekversenynek, amelyet félig-meddig (vagyis lassan inkább teljesen) én szervezek, szokott lenni szóbeli fordulója is (a legjobb 12 szóbeli fordulóba jut, ahol néhány, viszonylag egyszerű kérdésre is kell válaszolni). A gyorsaság is fontos, ui. a legelső jól válaszoló (papíron adták be eddig) indokolhat, amiért pluszpont jár.

Tavaly újítottam: a szóbeli forduló online lett. Tanulói laptopok voltak a diákoknál, a saját laptopomon pedig követtem az eseményeket. A program elve: a saját laptopom a szerver. A tanulói laptopok néhány másodpercenként (javascript/jquery alapon) lekérdezik a szervert, hogy van-e új feladat (egy php-t hív meg). A szerveren én irányítom ("admin felület"), mikor kerül ki az új feladat.

A kérdésem, hogy ennél van-e normálisabb megoldás (és ha van, akkor mi lenne), esetleg valami kész, komplett megoldás.

Google Maps POI (Gmaps)

Sziasztok!

Olyan problémám van, hogy több városból kell összegyűjtenem POI adatok mellett levő metaadatokat (név,cím,webes elérhetőség) a Gmaps-ről. Hogy miért innen, mert itt szerepelnek azok az adatok amik kellenek.

Kml formátumban letudom menteni a Google Earth-ben a POI adatokat de csak tízesével, ez pedig túl sokáig tart.

Van ötletetek arra, hogy szedhetném le? Például ez itt 210 record:

https://www.google.de/maps/search/benzinkutak+magyarosz%C3%A1gon/@47.31…

Az én esetemben ez városonként körülbelül 100-400 record és 20-40 város POI adatai kellenek.

Még valami, ebből vmi emészthető formátum jó lenne. (csv, txt stb.)
A kml,kmz is jó persze, mert átnevezhető. :)

Köszönöm az ötleteket előre is!

PHP szkript logolása

Sziasztok!

Van egy PHP szkriptem, ami egyszerű SQL SELECT-INSERT párost végez.

Szeretném logolni, mit is csinál, értelemszerűen a /var/log alá (Debian 7).

Addig már eljutottam, hogy:

syslog(LOG_INFO, 'Gipsz Jakab bekerült a címlistába');

Azonban ez a /var/log/messages-be logol. Ez jó lenne, ha ebbe a naplóba csak ez kerülne, de természetesen nem csak ez kerül, hanem minden más is, amit a többi program logol.

Van arra megoldás, hogy a szkriptem mondjuk egy cimlista.log fájlba kerüljön, s azt rotáljam?

Láttam valami openlog function-t, ami így néz ki:

bool openlog ( string $ident , int $option , int $facility )

De itt nincs írva, mi az a function, ami saját, általam meghatározott fájlba naplóz.

Ebben valaki tud segíteni?
Köszönöm.

DHT22 hőmérő szenzor és az rpimonitor

Sziasztok.

Egy már működő és ép értékeket adó dht22-es hőmérő/páramerőt szeretnek a webes felületű rpimonitorba gyógyítani.
(Igen, meg tudtam forrasztani és a Raspbian is rendben van mellette. Bearanyozta a napomat.)

Ahogy olvasgattam itt-ott, rá kellett döbbennem, hogy minden konfigurációs fájlt kissé átalakítottak.

Kérdésem rövid:

ha van egy adott nevű scriptem, ami mondjuk a hőmérsékletet adja ki, hogyan drótozhatom be az elsőre bonyolultnak tűnő rpimonitorba?

(Alapvetően tehettem volna máshova is a kérdést, de a téma inkább PHP-szerű. Vagy mégsem?)

Ebbol indultam ki:
http://rpi-experiences.blogspot.fr/2013/07/rpi-monitor-use-dht11-or-dht…
az rpimonitor konfigurálásánál véreztem el.
Az ötlet meg innen jött:
http://fazekasadam.info/index.php/2013/01/13/raspberry-pi-homero-1-resz/
Csak a konfigot ez alapján sem tudtam megoldani

[megoldva] Maximális megnyitott fájl darabszáma

Van-e valami olyan paraméter a php.ini-ben, amiben az (egy könyvtárban) megnyitható fájlok vannak maximálva?
Egy parancssori php szkriptem (PHP 5.4.6-1ubuntu1.2 (cli)) ugyanis próbál megnyitni 2^13 = 8192 fájlt, de egy határ után (nálam ez 1008) nem hajlandó rá. Eleinte nem is írok a fájlokba semmit, csak pusztán megnyitnám őket:


f0000000000000 1
f0000000000001 2
f0000000000010 3
...
f0001111101100 1005
f0001111101101 1006
f0001111101110 1007
f0001111101111 1008
PHP Warning: fwrite() expects parameter 1 to be resource, boolean given in step2.php on line 21
f0001111110000 1009
PHP Warning: fwrite() expects parameter 1 to be resource, boolean given in step2.php on line 21

Próbáltam növelni ezt az alábbit, de nem vezetett eredményre:

; Determines the size of the realpath cache to be used by PHP. This value should be increased on systems where PHP opens many files to reflect the quantity of the file operations performed.
; http://php.net/realpath-cache-size
;realpath_cache_size = 16k
realpath_cache_size = 999k

Szerk: Rendszerszintű paramétert kellett állítani, a lenti link segített.