ugrás a tartalomhoz

Archívum - Júl 2017

Dátum

július 31

E-mailek "átirányítása" eredeti fejlécek (Cc, Bcc, To, From, DKIM, stb.) megtartásával

sandrosdj · Júl. 31. (H), 15.08
Sziasztok!

Készítettem egy rendszert, amely megadott adatok alapján (imap szerver, user, jelszó, mailbox) csatlakozik egy távoli levélszerverhez, majd ott kikeresi az olvasatlan üzeneteket és átküldi egy megadott címre.

Folyamat nagyjából: Levelet elküldték ide: a##kukac##a.com ----> Megérkezett ide: b##kukac##b.com ----> script megtalálja a levelet, majd imap_mail-lel továbbküldi ide: c##kukac##c.com

Jelenleg ha benne hagyom a To-t, From-ot, Cc-t, Subject-et (meg még párat), akkor több problémával is szembesülök. Ilyenek pl: ha van Cc az eredeti levélben, akkor továbbításnál újra megkapják az abban szereplők, a subject kétszer lesz benne, a To kétszer lesz benne és az új címre (c) és az eredeti címre (b) is kimegy, From ugyanígy kétszer lesz benne.

Ezekre jelenleg az a megoldásom, hogy átírom a nevüket (Pl: To -> X-Original-To), de ez nem célszerű, hiszen így az utolsó címen (c) nem az a cím lesz látható, amire eredetileg küldték, a Cc-k pedig nem is látszanak csak ha megnézem az üzenet forrását.

Hogyan lehetne megoldani, hogy a levél a fejlécek minimális módosításával kerüljön át a végső címre? Tehát tartsa meg a címzett eredeti nevét és címét, a másolatot kapókat (ne küldje ki nekik mégegyszer), és akár a DKIM-et (bár ez annyira nem lényeges most).

(Cél mailszerverhez van mindenféle hozzáférésem, ugyanakkor annak babrálása nélkül szeretném megoldani. Az outlook is tud forwardolni/redirectelni levelet úgy, hogy nem változnak ezek az adatok.)

A hozzászólásokat előre is köszönöm! :)
 

július 27

PHP szállítási idő megjelenítése

husekaroly · Júl. 27. (Cs), 00.13
Sziasztok!

A következőt szeretném elérni PHP-el.

1. változó: A mai nap dátuma
2. változó (szállítás ha van a termék raktáron): a mai naphoz hozzáadandó munkanapok száma 2 munkanap
3. változó (Szállítás ha nincs raktáron +2 munkanap): a mai naphoz hozzáadandó munkanapok száma 4 munkanap

Fontos, hogy a végeredményt mindig úgy adja vissza, hogy a hétvégét ne számolja munkanapnak.

Példa:
Ma 2017 július 27 Csütörtök <- A megrendelés időpontja

1. eredmény ha van raktáron:
Előre láthatólag a kiszállítás napja 2017 július 28. péntek - 2017 július 31. hétfő

2. eredmény ha nincs raktáron:
Előre láthatólag a kiszállítás napja 2017 augusztus 1. kedd - 2017 augusztus 2. szerda

Sajnos nem találtam rá megoldást bármit szívesen kipróbálok.
Nem vagyok profi PHP-s, de biztosan lesz itt olyan akinek ez rutin feladat.

Köszönöm előre is a segítséget.
 

július 26

Megadott file-ok törlése könyvtárból.

Radon · Júl. 26. (Sze), 15.03
Sziasztok.
Az lenne a kérdésem, hogy a problémámra tudtok-e egyszerűbb megoldást:

Feltöltenek 1 képet, azt átnevezi, a nevét elmenti sqlbe. Esetleg történne valamilyen törlési hiba, és sqlből kitörlődik, de a könyvtárban ott marad a kép, azt hogy tudom onnan automatikusan kiszedni?
Én a scandir() függvényt találtam, minden fájlnevet beletesz 1 tömbbe, ezt körüljárva lefuttatok mindig 1 sqlt, hogy van-e ilyen az adatbázisban, ha nincs akkor unlink.
csak ez több ezer file-nál több ezer sql.
 

HTML linkek cseréje dinamikusan

sandrosdj · Júl. 26. (Sze), 13.14
Kedves fórumozók!

A következő problémára keresek stabilabb megoldást:

Adott egy HTML kód, melyben vannak linkek (nem szövegesen, azok is rendes html tag-ek).
Ezeket a linkeket runtime ki kellene cserélni úgy, hogy az eredeti link urlencode-al bekerülne az url paraméter értékeként.

Pl.:
eredeti html: <a href="http://om.g/?asd" style="border:1px">Link</a>
kimenet: <a href="http://redi.r/?url=http%3A%2F%2Fom.g%2F%3Fasd" style="border:1px">Link</a>

Jelenleg így csinálom:
preg_replace_callback('/<a\\shref="(.*?)">(.*?)<\\/a>/is', function($m) use($uzenet) {
										return '<a href="http://redi.r/?uzenet='.$uzenet.'&amp;&amp;url='.urlencode($m[1]).'">'.$m[2].'</a>';
									}, $original);
Ezzel az a gond, ha van utána más attribútum is, akkor az is az url része lesz a kimenetben.

Mit kellene változtatni a regex-en?
 

július 23

Egyszerű skálázódás

Hidvégi Gábor · Júl. 23. (V), 10.22
Már korábban is felmerült, de A frontend állapota 2017-ben című fórumtémában az egyik fő érv az állapot szerveroldalon történő kezelése ellen az volt, hogy ez jelentősen megnehezíti a backend munkáját, legrosszabb esetben az egész szolgáltatás jelentős lelassulását, leállását okozhatja. Mivel a téma fontos, ezért érdemes külön foglalkozni vele.

Elmélet

A skálázódás egy szolgáltatás fontos tulajdonsága, amely azt a képességét adja meg, hogy nagy terhelés esetén a rendszer hogyan viselkedik, mekkora válaszidők várhatóak. Ez utóbbi sokmindentől függ, külsőleg a kliens szerverhez való kapcsolódási sebességétől (például mobiltelefonon befolyásolja az időjárás, a térerő, az adott cellán lévő más felhasználók száma), valamint az egyes rendszerkomponensektől (milyen programkörnyezetet választottunk, mennyi adattal kell dolgoznunk, milyen kapcsolat van a részegységek között, mekkora a terhelésük stb.). Egy alkalmazás bármelyik összetevője lehet szűk keresztmetszet, ami kihatással van az egészre, így fontos a megfelelő tervezés.

Gyakorlat

Az első és legfontosabb, hogy folyamatosan mérni kell az egyes részek teljesítményét. Ha van hozzáférésünk, az operációs rendszer feladatkezelőjében láthatjuk, hogy az egyes processzek mekkora CPU terhelést okoznak és mennyi memóriát foglalnak, de lehetőség van szoftverből is figyelni az erőforrásokat, például a Nagios segítségével.

Sokszor a legegyszerűbb lehet a szerveroldalon a hardverelemek jobbra, gyorsabbra cserélése, a memória bővítése például jótékony hatással van mindenre: az operációs rendszer vagy az adatbázisszerver többmindent tud gyorsítótárazni, de ugyanígy a merevlemezek cseréje SSD-re is jelentősen javíthat a válaszidőkön.

Ha egy szerver már nem bírja, a legkönnyebb az adatbázist egy másik (virtuális) gépre áttenni.

július 22

SQL HIBA!! Nem értem miért az..

statesz · Júl. 22. (Szo), 19.47
PHPban lefuttatom ezt az sqlt de a weboldalon ez jelenik meg:
Error: SELECT `members_balance` FROM `members` WHERE `members_id` = $MEMBERS_ID$

Valaki tud segíteni???

Szerk: member azonosítóját kiszedtem, és $MEMBERS_ID$-val helyettesítettem. Publikus felületre ne írjunk ki semmilyen user azonosítót. - BlaZe

Steam id, mivel bejelentkezés. Szóval az id az enyém és publikus. mindegy nem ez a lényeg.
 

Könyv vásárlás

doctorwho · Júl. 22. (Szo), 18.32
Ezek közül melyik könyveket vásároljam meg, ha kezdő szintről legalább haladó szintig szeretném megtanulni a PHP-t?

https://www.libri.hu/konyv/laura_thomson.php-es-mysql-webfejlesztoknek.html

https://www.libri.hu/konyv/george_schlossnagle.php-fejlesztes-felsofokon.html


https://www.libri.hu/konyv/s_suehring.php-mysql-javascript-html5.html

PHP 24 óra alatt.
 

július 21

storygo.net vélemény

Radon · Júl. 21. (P), 11.13
Sziasztok. Véleményt szeretnék kérni a weboldalamról.
Az oldalon a storygo bemutatása cikkben van kis leírás, hogy miről is szól a weboldal. Főként használhatóság, kezelhetőség, hasznosság szempontok alapján kérnék véleményt.
Akinek 1 angol nyelvű bejegyzés jelenik meg, annak idegen nyelvű böngészőt érzékel az oldal, és angol tartalmat és menüket jelenít meg. Ekkor az oldal alján a zászló ikonnal tud nyelvet változtatni, és megjelenik a magyar tartalom.
Link
Köszi.
 

július 17

Senior Full Stack PHP/JS developer and Database Specialist

stilldesign_kn · Júl. 17. (H), 15.17
Törlésre jelölve, ez az állás rovatba való. - janoszen
 

július 15

Junior mentor program kerestetik

mahoo · Júl. 15. (Szo), 12.00
Sziasztok!

Keresek olyan back-end vagy front-end fejlesztői mentor programot, ami a képzés ideje alatt 'fizetést' biztosít tanulmányi szerződés fejében.

Ha esetleg valaki tud közeljövőben induló programról, legyen szíves értesítsen!

(PHP-és és némi front-endes tapasztalattal rendelkezem.)