- NTFS, exFAT, FAT32 – Melyiket válaszd és miért?
- Milyen TV-t vegyek?
- UHD filmek lejátszása
- Videós, mozgóképes topik
- Amazon Kindle
- Átlátszó, vezetékmentes YUNZII klaviatúra numerikus paddal
- Nem tetszik a Procon-SP-nek, hogy a Nintendo távolról kivégezheti a Switch 2-t
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- Milyen egeret válasszak?
- Steam Deck
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
válasz
Speeedfire #11908 üzenetére
Persze, az is egy jó szempont, hogy ugyanaz legyen a tesztelési környezet, mint az éles környezet.
De nálam ettől még nem fog Apache futni Windows-on. -
Sk8erPeter
nagyúr
válasz
Speeedfire #11906 üzenetére
Nekem sokkal jobban tetszik az IIS, mert van hozzá egy elég értelmesen kialakított grafikus felület, és én régen eleget konfigoltam az Apache-ot ahhoz, hogy megutáljam a szöveges fájlokban való buzerálást, a véletlen elírásokat, nehézkes beállításokat, sokszor túl sok időt vett el a fejlesztésemből az, hogy utána kellett olvasni, valamit hogy lehet rendesen belőni. Az IIS-t is meg kell ismerni ahhoz, hogy tudd használni, de utána szerintem (legalábbis számomra) minden sokkal gyorsabb. Ráadásul így az ASP.NET-es alkalmazások is "natívan" futtathatók, ha majd ismét lesz időm fejlesztgetni benne egy kicsit. Az IIS-hez tartozó PHP Manager segítségével pedig szintén grafikus felületen tudod állítgatni a php.ini dolgait menetközben, tudsz engedélyezni/letiltani extensionöket, ezenkívül tudsz váltogatni elvileg különböző PHP-verziók között.
Csomó mindent be tudsz állítani az egész szerver újraindítása nélkül. Az egyes site-ok egyébként egyenként is újraindíthatók.
Meg én valahogy Windows-os környezetben (mivel Linuxon az IIS nem is megy) gyorsabbnak érzem az oldalaim sebességét IIS-en, mint Apache-csal. (De Linuxon Apache-csal futtatva ugyanolyan gyors, vagy még gyorsabb, szóval furcsa.)
-
Sk8erPeter
nagyúr
"Ha az IIS alatt nem működik, semmire sem fognak nekem kelleni az IIS dolgai."
És miért lesz neked jobb attól, ha Windows alatt Apache-ot használsz?"Egyenlőre még IIS beállítással küzdök, mert ahány leírást csak találok iis + php installhoz, mindegyik enyhén szólva figyelmetlenül készült. Így első alkalommal nekem ez még valahogy nem 2 perc alatt jön össze."
Nem értem, én annak idején találtam hivatalos leírásokat is a dolog menetéről, és tök gyorsan megvoltam vele, mondjuk az hülyeség, hogy 2 perc lenne, mert az csak úgy igaz, ha valakinek már van vele tapasztalata.
De nem értem, miért a bonyolultabb utat választottad, amikor van összekattintgatós, gyors módszer, ami helyetted megcsinálja a szívás részét, direkt ezzel kezdtem.Hányas PHP-t használod?
Ahogy már mondták, hibajelzés legyen a lehető legszigorúbb, error_reporting(E_ALL|E_STRICT);, ezenkívül arra még mindig nem reagáltál, nem látsz-e valami releváns dolgot a logban.
Mivel csekkolod a headereket, Fiddlerrel? -
Sk8erPeter
nagyúr
ezt, amit az előbb írtam, nem olvastad?
Nem kell külön installer meg bohóckodások, egyszerűen rákeresel a WPI-ben, hogy MySQL, rákattintasz, hogy "Add" (vagy install, most nem emlékszem hirtelen, szóval ilyesmi), aztán rákeresel, hogy PHP, a megfelelőre szintén rákattintasz, aztán elindítod a telepítőjét, és ez minden szükséges függőséget behúz, ami kell. -
Sk8erPeter
nagyúr
válasz
Peter Kiss #11897 üzenetére
+1, de annyival korrigálnám, hogy telepítse nyugodtan a MySQL-t, összekattintgatós módszerrel, a Microsoft Web Platform Installer segítségével, összesen kb. 10 másodperc, megkérdezi azt is, hogy milyen root-jelszót szeretnél.
-
Sk8erPeter
nagyúr
Hát onnan tudja, hogy alapértelmezettként a böngésző bezárásáig "él" egy munkamenet. Tehát egy bejelentkezős rendszernél ez azt jelenti, hogy amennyiben alapértelmezetten van minden, a böngésző újraindítása esetén kijelentkeztet.
session_name()-mel egyébként megadhatsz egyedi session nevet (és lekérheted a korábbit) a PHPSESSID helyett, session_id()-vel lekérheted/beállíthatod az aktuálisat (session_start() előtt), ezekkel is kísérletezgethetnél, miket ad, ha használod őket. -
Sk8erPeter
nagyúr
válasz
Swifty #11870 üzenetére
Jobb lett volna, ha korábban jössz konkrét ellenvéleménnyel a problémával kapcsolatban, és nem csak annyi látszik az egészből, hogy Te most jól "megaszontad".
A hsz.-ek száma max. annyiból számít, hogy utal arra, mennyire látsz bele mondjuk a fórum működésébe, mennyire vetted fel a fórum ritmusát. Ha egyből azzal kezded a tevékenységedet, hogy beoltasz embereket, hogy most már aztán hallgassanak el, milyen alapon merészelnek itt túl magasszintű társalgást folytatni a nyelv rejtelmeiről, akkor az úgy elég érdekesen veszi ki magát. De ha egy kicsit jobban belegondolsz, nem értesz ezzel egyet?
Nem tudhatom, neked túl magas-e a dolog, vagy nem, mert fogalmam sem lehet a tudásodról, eddig csak annyit láttam belőled, hogy beszóltál, hogy legyen vége a témának, mert ez a topic elsősorban szerinted a kezdőknek szól (pedig sehol nincs ilyen szabály, legfeljebb Te így képzeled el, pedig nagyon gáz lenne), ebből a szemrehányásból pedig nehéz arra következtetni, hogy vágod a témát (de ettől még penge is lehetsz benne).Kódból most csak egy sort emelnék ki:
if(($split=explode(';',$line))!==FALSE)$tables[$split[0]][]=array((isset($split[1])?$split[1]:''),(isset($split[2])?$split[2]:''),(isset($split[3])?$split[3]:''));Szerintem az ilyen szinten bedrótozott megoldások nem túl jók, nem lehet megváltoztatni, hány elem érdekes, és akkor már ilyen ismétlődő dolgok helyett (végül is 3-szor írod le ugyanazt) ciklusban kellene feldolgozni az adatokat.
-
Sk8erPeter
nagyúr
válasz
Peter Kiss #11867 üzenetére
Nem, szerintem ezt meg tudjuk oldani mi is, moderátorok nélkül...
Remélhetőleg eléggé rászálltunk ahhoz, hogy megértse a lényeget (hogy menjen innen, ha nem tetszik a rendszer
).
Miért szereted te ennyire a modikat?Tök felesleges bevonni őket, most mondják ugyanazt neki, mint mi? Semmi értelme, ez csak ilyen nevetséges erőfitogtatás lenne (korábban is ugyanezt magyaráztam neked, amikor ezt velem szemben játszottad el, vagy mással, azóta sem változott a véleményem erről
).
(#11866) PazsitZ :
"Én lassan emiatt a hozzáállás miatt fogom törölni már az értesítést erről a topikról"
Na igen. Örültem, hogy végre érdekes témáról van szó, erre valaki ebbe is beleugat, hogy ne. (ráadásul újonc, 25 szakmai topicban tett hozzászólással, 6 ebből itt született, és csupán 1 db (!!) vágott ténylegesen a témába)Amúgy bocsi, itt a felsorolásban véletlenül fordfairlane-t írtam PazsitZ helyett.
(pedig az említett illető nem járt errefelé régóta)
-
Sk8erPeter
nagyúr
válasz
Peter Kiss #11862 üzenetére
Hát ja, mióta belépett, kábé a topic fele szürkebetűs lett...
-
Sk8erPeter
nagyúr
válasz
Swifty #11859 üzenetére
Csatlakoznék Soakhoz a kérdéssel: áruld el, honnan szedted, hogy prioritást élveznének a kezdőbbek?
Ebből látszik, hogy újonc vagy, mégis meg akarod mondani a frankót. SzéjjelOFFolod a topicot, miközben pont ezért oltottál mást; plusz túl terjengősen fogalmazol. Nem "savazta" a két oldal a másikat, hanem a topichoz kapcsolódó szakmai vitát folytattak, és ez teljesen helyénvaló. Az, hogy mindezt valaki le akarja állítani, mert neki túl magas a dolog, az már nem az. Remélem, végre megérted, miről vakerászunk, és abbahagyod az OFF-ot, köszi!
-
Sk8erPeter
nagyúr
válasz
Swifty #11857 üzenetére
Erről ment éppen a vita, és a vita szerintem teljesen konstruktív volt (épp több helyről is elhangzott az ellen is érv, hogy csak az OOP lenne az egyetlen jó megoldás), egészen addig, amíg el nem kezdtetek beledumálni, hogy ugyan ne legyen már itt vita, mert micsoda dolog, hogy nem a gyökér kérdések vannak a fókuszban. De legalább elintéztétek, hogy ez a vita is elhaljon. Ha nem értesz vele egyet, hogy csak az OOP lenne a jó megoldás, akkor szólj hozzá a vitához ÉRDEMBEN, és ne csak pattogj, hogy neked nem tetszik, amiről itt szó van.
-
Sk8erPeter
nagyúr
válasz
Swifty #11852 üzenetére
"Másik oldalról a TDD és társai említése szerintem már a ló másik oldala... Tényleg lehet róla vitázni, elmélkedni, stb... De az "átlagközönség" fikarcnyit sem ért belőle... Na most ezeknek szeretnéd megtanítani az egyes tematikákat??? Nem hiszem, hogy a legtöbbjük tudja, hogy milyen egy interfész vagy egy absztrakt osztály..."
Megint csak nem értek egyet. Miért, szerinted ez a topic az "átlagközönségnek" van? NEM, a PHP iránt érdeklődőknek. Ha valaki nem érti, miről van szó, mert neki túl magas, az ne legyen felháborodva azért, hogy olyan témákat feszegetnek itt, amihez neki már nincs köze... hanem olvasgassa, tanuljon belőle, vagy ugorjon át rajta. Azért nehogy már meg legyen szabva a mérce, hogy milyen témákat lehet MÉG tárgyalni, tartva attól, hogy esetleg pár újonc nem érti azt... Így akár ki is halhatna a topic, és megmaradhatna "hogyan legyünk lusták, és kérdezzünk meg alapdolgokat próbálkozás és utánanézés nélkül a hozzáértőbbektől"-topic szintjén is.
Most épp Te estél át a ló túlsó oldalára, megpróbálod megmondani, miről szóljon a topic, újoncként. Bocsi, de ez azért nem így megy. És ezt most ne vedd sértésnek, mert nem annak szánom. -
Sk8erPeter
nagyúr
válasz
Inv1sus #11848 üzenetére
Igen, mivel te a stringed legvégére adtad meg a width és height attribútumokat...
Te arra számítasz, hogy mindig így lesz? És arra számítasz, hogy csak és kizárólag <img> tagek lesznek a stringedben? (utóbbi még talán előfordulhat)Próbáld már meg, amit mutattam.
2 próba:
De tessék, itt van, amit mutattál, csak úgy, hogy az elejére teszem a height és width attribútumokat:
<img height="118" width="118" style="float: left;" alt="Minta 1" src="../user_uploads/images/oldalak/kezdolap/pic1.jpg" />
Screenshot:
Most már hiszel nekem?
-
Sk8erPeter
nagyúr
válasz
Inv1sus #11846 üzenetére
Igen, elég sok hibalehetőséget rejt magában.
Pl. azt, hogy konkrétan kiszedi az összes attribútumot pl. egy ilyen esetben:<img width="123" src="asdasd.jpg" height="123" title="blabla" alt="akármi" style="border:1px solid red;" />
amit készít belőle:
<img />Asszem ez neked nem lesz túl jó.
itt kipróbálhatod:
http://preg_replace.onlinephpfunctions.com/Hint: (.*) - ez így nem igazán szűkíti le a dolgokat.
Szerk.: áááá, inkább mutatok rosszabbat, hogy még inkább elrettentsen.
<div title="valami"><img width="123" src="asdasd.jpg" height="123" title="blabla" alt="akármi" style="border:1px solid red;" /><div style="color:red;" title="asd">ezmegaz</div><p style="color:red;" title="itt is">namégegy</p>
</div>ebből csinál egy ilyet:
<div title="valami"><img>namégegy</p> </div>
elég brutálisan szétkúrja. -
Sk8erPeter
nagyúr
Ennek örülök, bár ha egy modi mondja azt, hogy na kuss, akkor általában azzal agyon is van csapva a szakmai beszélgetés. Most már komoly felelősség terhel minden szavadért.
Bocs, de "force a download in php" kulcsszavakkal rákeresve, meg a PHP header() manualját megnézve is elég sok olvasmányt találni a témában...
Mintha épp az előbb lett volna szó a 2 perc Google-ről.
De a felvetést nem is értem, miért kell általad fejlesztett oldalhoz cURL?Vagy csak félreértettem a kérdésedet?
(#11837) j0k3r! :
jaja, pontosan. Elég régóta érdektelenek a topicbeli kérdések is, most legalább valami érdekesről van (volt) szó. -
Sk8erPeter
nagyúr
Nekem aztán nem tisztem megvédeni Athlont, mert az eddigi kommunikációnk egymással nem volt túl sikeres, meg sokszor küldte már rám a modikat, és azzal is egyetértek, hogy általában túlságosan köti az ebet a karóhoz, és a saját elveit tekinti mindenhatónak, de ettől függetlenül szakmai szempontból érdekes olvasni a fenti vitákat, az ő hozzászólásaival együtt is, amikhez cucka és fordfairlane meg Soak és még esetleg mások is hozzászólnak.
A PHP-fejlesztés rejtelmeiről és mikéntjéről esik szó, összehasonlítva egyéb nyelvekkel is a lehetőségeket, nem tudom, miért kell leállítani egy ilyen szakmai vitát...Úgy érzem, ebben az esetben a moderálás nem jogos (nem anyázás folyik!), mert így csak agyoncsaptok egy végre érdekes eszmecserét, amiben nem az a téma, hogy hogyan kell validálni egy nyomorék formot. Szerintem a negatív kritika is része egy szakmának.
Szerk.: OFF.
Szerk. 2.: mobal, most látom, hogy ez te vagy, moderátor lettél, mik nem történnek (meg az avatarod is lecserélődött, ezért nem ismertelek fel)... -
Sk8erPeter
nagyúr
"Nem az, ha valaki az informatikában megmondja a tutit, hogy csak és kizárólag egy módszer az elfogadható, na ő téved"
Na igen, én is ezt fejtegettem, hogy ne akarjuk itt megmondani a "one and only" módszereket.Azutánira: szintén egyetértek, ha valaki igazi OOP-s környezetet akar, akkor álljon át valamelyik webes Java-technológiára vagy például ASP.NET-re.
Persze ettől függetlenül nem megkérdőjelezhető az OOP létjogosultsága sem a PHP-ben.
Ahogy az is igaz, hogy amennyiben valaki az előbb említettekben IS programozik, annak az agya nyilván sokkal inkább rááll az OOP-s gondolkodásra, és nem valószínű, hogy engedni akar belőle (tehát ennek mentén fog kódolni PHP-ben is, amivel nincs baj). Viszont ez nem jelenti azt, hogy egy procedurális kód szar (sőt, nagyon jó is lehet, és nagyon nem arra utal, hogy az aszerint kódoló fejlesztő keveset tud [ettől a megjegyzéstől az agyam kinyílt]). -
Sk8erPeter
nagyúr
válasz
Sk8erPeter #11809 üzenetére
Csak nem bírom magamban tartani: mindenki már érti és kívülről fújja, hogy te nagyon vágod ám a tervezési mintákat, és odáig vagy értük, de ez nem azt jelenti, hogy csak te tudsz emiatt jó kódot írni, és mindenki más, aki procedurálisan kódol (pl. korábbi kódot fejleszt tovább), az "keveset tud".
Hozzászoktam, hogy szereted erős túlzásokkal megspékelni a mondandódat, de azért ez már egy kicsit erős volt. Bár gondolom nem nagyon tudsz elképzelni olyan programozót, aki nem kódol OOP-ben, mégis nálad sokkal jobban tud programozni (szerk.: félre ne értsd, nem feltétlenül itt a topicban aktívan írókkal kell "versenyezned") - hiszen ahhoz kell némi szerénység, hogy az ember ilyesmit is el tudjon fogadni. -
Sk8erPeter
nagyúr
válasz
Peter Kiss #11807 üzenetére
Alapvetően egyetértek, szerintem is adott esetben sokkal szebb és átláthatóbb lehet egy OOP-s kód, ha valaki tényleg jól tud kódolni.
Arra gondolok viszont, hogy pl. a Drupal magja sem teljesen OOP-s még, elsősorban örökség miatt - lásd PHP 4-es idők; nem egyszerű egy ilyen "rendszert" teljesen lecserélni; legalábbis a 7-esig, bár ott már sok minden OOP-sre lett alakítva, a 8-asnál meg még több dolgot ültettek át OOP-re, ezért van egy bizonyos keveredés egyelőre -, mégis alapvetően egész jól követhető a kód, amennyiben valaki már érti, miről is szól az egész, és itt is egy "rendszerről" beszélünk (azt írod, "rendszer nem lesz abból se", most erre reagálva mondom).
De én pl. a még jobb követhetőség miatt sokkal jobban örülnék, ha a modulfejlesztés is például osztályok leszármaztatásából, interfészek implementálásából és hasonlókból állna, mert számomra is jóval áttekinthetőbb lenne a kód. De van ilyen szinte full OOP-s modul: Views.
Igazad van abban, hogy így elég sok minden lóg a levegőben, ezt a hátrányt Drupalnál is érzem, a debuggolás is talán nehézkesebb emiatt. De a fejlesztők tudják, hogy van min javítani, ez is az irány. Itt és itt nálam sokkal jobban elmagyarázzák a miérteket.Ettől függetlenül szerintem picit túlzás, hogy csak az OOP-s kód a jó és mérvadó.
Szerk.:
cucka az előző hsz.-ben pedig elég tömören elmagyarázza azt is, amit én is éreztem a konkrét kérdés kapcsán, csak ő sokkal jobban megfogalmazta. -
Sk8erPeter
nagyúr
válasz
blacee #11801 üzenetére
"Unknown package 'zoneinfo-europe'
Nem találja szegényke. Ő ugyanis a vargalex.uw.hu -ról rántja le a csomagokat, és azok közt nincs."
Ez azért furcsa, mert itt látom a listázásban a csomagot:zoneinfo-europe_2011n-1_ar71xx.ipk
Szóval nem nagyon értem, miért nem találja. Más package source-t (mirrort) beállítva (akár ezt) sem működik ennek telepítése?
==========
(#11805) Athlon64+ :
"Lehet ilyet osztály nélkül is?"
Nyilván költői volt a kérdés, de mindent lehet procedurálisan is, semmi katasztrófa nem történik akkor sem (bár tudom, hogy szerinted aki nem csak és kizárólag OOP-ben kódol, az egy baromarcú), csak akkor elveszti az osztályok használatának rugalmasságát, a könnyebb kezelhetőséget, esetleg áttekinthetőbb kódot. De önmagában az, hogy OOP a kód, az nem garantálja az áttekinthetőséget, jó kódot, a gányolás elkerülését; ahogy ugyanígy az is igaz, hogy procedurálisan is lehet szép kódot írni. -
Sk8erPeter
nagyúr
válasz
blacee #11795 üzenetére
Most kicsit keresgéltem, ezt találtam:
[link]运行网站 错误解决
- ezzel a mondattal mondjuk nem teljesen értek egyetNa, de komolyra fordítva:
elvileg ez kellhet még neked:opkg install zoneinfo-core zoneinfo-europe
aztán
vi /etc/config/system
itt beállítod a megfelelő timezone-t:
Europe/BudapestNincs személyes tapasztalatom vele, de így leírás alapján elvileg ennyi.
-
Sk8erPeter
nagyúr
válasz
sztanozs #11786 üzenetére
Eleve nem értem, miért akarod felhasználókra bízni ezt a dolgot. Ez a fejlesztők dolga, hogy kialakítsák a megfelelő adatbázis-hátteret, és jól működővé tegyék az alkalmazást. Ilyen feladatokat tényleg nem szabad rábízni akárkire.
De ha ilyen jellegű céljaid vannak, én azt javasolnám, hogy válassz egy bevált, karbantartott megoldást, mint amilyen a Drupal, ahol egyes content type-okhoz tetszőlegesen hozzá lehet adni különböző mezőket. Nagyon jól megoldották, van hozzá elég jó API is, így a core dolgait tovább lehet bővíteni, ebből az is következik, hogy rengeteg modul készült már, ami bővíti a Drupal működését hasznos mezőtípusokkal.
Szerk.:
bocsánat, ez pvt.peternek szólt, tényleg összetévesztettem az avatarok miatt... -
Sk8erPeter
nagyúr
válasz
oleslie #11781 üzenetére
"Én ha nem akarnám indexelni/keresni az újonnan felvett oszlopokat (csak tárolni az adatokat)"
Ilyen esetre nem szabad számítani, mert az adatok nyilvántartásának az a lényege, hogy a korábban elmentetteket meg lehessen jeleníteni akármilyen nyakatekerten, és tetszőlegesen keresni is lehessen köztük; valamint mindez a lehető legkevésbé legyen erőforrás-igényes.TEXT mezőbe behányni mindent, aztán "serialize/unserialize" pedig nagyon csúnya megoldás, egy normális query-t se lehet írni rá, ami ne zabálná tök feleslegesen az erőforrásokat.
-
Sk8erPeter
nagyúr
válasz
pvt.peter #11778 üzenetére
"Amennyiben hozzáadtunk új beviteli mezőket akkor bizony az oszlopok nem fognak megegyezni. Tehát vmilyen módon bővíteni kellene a meglevő struktúrát"
Ez nem túl jó ötlet. Ha valaki rosszindulatúan, vagy csak szórakozottságból hozzáad még 30 textfieldet, akkor annyival több meződ lesz az adatbázisban, ahol meg ezek nincsenek kitöltve, ott mind NULL érték lesz, tök feleslegesen?
Vagy nem értem, mi a cél ezzel, mi benne a ráció, szerintem ez rossz tervezés.
Nehéz általános receptet adni, sztem jobb lenne, ha a konkrét célt írnád le (milyen célra kell nyilvántartani az adatokat, stb.), úgy könnyebben tudnánk konkrét ötletet is írni.(#11771) blacee :
ez az elérési út létrehozására vonatkozó instrukció elég furcsa "megoldásnak" tűnik valóban, kétlem, hogy ez lenne a helyes út.
Nem tudom, OpenWrt-s cuccra nem raktam még fel webszervert és PHP-t, nem próbáltam, de itt konkrét leírások vannak:
http://wiki.openwrt.org/doc/howto/php
ez konkrétan Lighttpd-re:
http://wiki.openwrt.org/doc/howto/http.lighttpd#configuring.lighttpd.and.php5
Ez alapján sem sikerül? -
Sk8erPeter
nagyúr
válasz
Peter Kiss #11756 üzenetére
OK.
-
Sk8erPeter
nagyúr
válasz
Peter Kiss #11753 üzenetére
"Minden fájlod elejébe nagyon gyorsan:
error_reporting(E_ALL | E_NOTICE);"Ennek így nincs túl sok értelme, mivel az E_ALL-ban eleve benne foglaltatik az E_NOTICE is. Akkor már
error_reporting(E_ALL);
De aminek még több értelme van:
error_reporting(E_ALL | E_STRICT);
Mivel az E_STRICT csak 5.4.0-tól felfelé van benne az E_ALL-ban.===
(#11754) sss : nem ártott volna kicsit több infót közölnöd, pl,. hogy hogyan szeretnéd fájlba íratni.
Legegyszerűbb pl. egy tömbön végigiterálni, és minden kulcs-érték párt akár rekurzív módon kiíratni fájlba, ha épp az kell. Pl. file_put_contents() is megfelelő lehet. -
Sk8erPeter
nagyúr
válasz
bobace #11739 üzenetére
Hát nem tom, egy CMS is kínál sztem ilyen lehetőséget, úgy tudom, a Drupalban is megvannak erre a megfelelő modulok az Ubercart és Commerce segítségével.
Amúgy bírom az ilyen önismertetőket egy terméknél, amiben eleve az szerepel, hogy "... is the best ..." - ja, persze, a "best".
A saját mércéjük alapján, vagy ki mondta ezt róluk, ki határozza meg, mi a "legjobb"?
Nekem az ilyesmi valahogy nem szimpi, de ez már OFF.
Pl.
Ubercartnál: Ubercart Auction
Commerce-nél: Commerce AuctionSzóval azé' van alternatíva.
-
Sk8erPeter
nagyúr
Azért nem világos a dolog, mert nem értem, miért okoz neked problémát egy "árva" tag.
Vegyük a legegyszerűbb példát: van mondjuk egy tags, egy tags_contents és egy contents táblád (most az elnevezés és struktúra csak hevenyészett, lényeg szempontjából tök mindegy, csak szemléltetés úgyis).
A tags táblába gyűjtöd az összes taget, van neki id-ja, elnevezése, leírása (most csak egy nyelven, mondom, legegyszerűbb példa). A contents táblában meg mondjuk cikkeid vannak, amikhez kapcsolhatsz tageket, van nekik id-juk, title mezőjük, meg body-juk, amiben a tartalom van. Aztán a tags_contents táblában pedig összekapcsolod a contentekkel a tageket; tag_id és content_id mezők vannak itt. Pl. ha a 123-as id-jú tag a "teszt" (a tags táblában), a 499-es id-jú content (a contents táblában) pedig az "Akármi" című, és a "teszt" taget az "Akármi" tartalomhoz akarod kapcsolni, akkor a tags_contents táblában lesz egy ilyened:
123 | 499
össze van kapcsolva a két id.
Ha a "teszt" taget leszeded az "Akármi" tartalomról, akkor kitörlöd a tags_contents táblából a 123-as id-jú taget, amihez a 499-es id van kapcsolva (mittomén, DELETE FROM tags_contents WHERE tags_id = 123 AND content_id = 499; vagy ilyesmi, de ez most túlzottan leegyszerűsített példa; de egyébként lehet, hogy értelmesebb egyszerűen az ehhez a 499-es id-jú tartalomhoz tartozó tageket egyszerűen leszedni, majd újból feltölteni az egészet, a módosításoknak megfelelően).Tehát az "árva", "teszt" nevű tag ottmarad a tags táblában, aztán bármikor hozzákapcsolható megint az "Akármi" tartalomhoz. Senkit nem zavar, hogy ott van egyedül egy másik táblában.
Most így már tisztább?
========
(#11736) bobace :
melyik CMS-ről van szó?
Egyébként pont a support hiánya vagy kisebb aktivitása miatt nem érdemes kevésbé ismert CMS-eket, frameworköket választani, mert ha kell valami új dolog, akkor egyszerűen meg vagy rekedve, ha nem tudod, hogyan fejleszd tovább. -
Sk8erPeter
nagyúr
De miért ne maradhatna egy cikk tag nélkül? A tag csak kiegészítő elem, plusz infókkal ruházza fel a tartalmat, meg segít a kategorizálásban és a tartalom adott szempontok szerinti szűrésében.
Ha nem adsz hozzá taget, akkor nem kell semmit pakolni az adott tartalom és tag összekapcsoló táblájába; ha meg a tartalom módosításakor minden korábbi taget leszedsz róla, akkor egyszerűen az összekapcsoló táblából az összes, az adott tartalom id-jához tartozó tag id-t kitörölsz, és kész. -
Sk8erPeter
nagyúr
Ha módosítasz egy bejegyzést (blogbejegyzés, cikk, akármi, amihez a tag rendelve van), akkor meg kell nézni, most milyen tagek vannak hozzácsapva, és annak megfelelően módosítani az adatbázis-bejegyzéseket (ha valamilyen tag előtte rajta volt, de az elmentéskor nincs, akkor persze azt kiszedni a megfelelő táblából).
Nincs jobb megoldás, mint hogy végigmenni a tageken mentéskor, és összehasonlítani a korábbi állapottal, és csak azokat megtartani az összekapcsoló táblában, amik a mentéskor is érvényesek.
A tag teljes törlésekor (tehát nem a bejegyzés módosításakor) pedig egyszerűen kitörölni a tag sorához tartozó sort a tags táblából, plusz törölni az ennek az id-nek megfelelő bejegyzéseket az összekapcsoló táblákból is (ez elég egyszerű jól kialakított rendszernél).(#11730) bobace :
uhh, hát ez elég összetett téma, nem tudom, tud-e valaki így hirtelen mutatni erre valami jól összeszedett linket. Érdemes megnézni, hogyan csinálják a frameworkök és CMS-ek, de akkor már valószínű, hogy inkább az a megoldás, hogy átállsz ezek használatára. Az sem két perc, hogy lemásold a routing működését, meg az sem, hogy átköltöztesd a mostani oldalad mondjuk egy frameworkre vagy CMS-re (bár érdemes). -
Sk8erPeter
nagyúr
Pontosan, teljesen egyetértek.
Ilyen tök ártalmatlan viták miatt moderátorokhoz szaladgálni nem kicsit vicces. Sajnos épp emiatt a moderálás a topicban kezd Athlon64+ noszogatása révén egy kicsit egyoldalúvá válni (nem túl jó, hogy egy ember szájízének megfelelően alakul a topic sorsa, és még egy minimális vitába sem lehet belemenni (és ha vita, akkor mi van?
), mert aztán jön az óvóbácsi
).
-
Sk8erPeter
nagyúr
válasz
Kalandor #11718 üzenetére
Részemről semmi gond nem volt, egyébként szerintem normális hangnemben beszéltünk Soakkal, nem volt semmi balhé. Athlon64+ kicsit túlzásba viszi a moderátorok idejének rablását, de egyébként köszönjük, hogy őrzöd a nyugalmat.
-
Sk8erPeter
nagyúr
1. ezzel a hozzáállással a Prohardver! már rég megszűnt volna létezni.
2. pedig direkt megelőztem ezt a hozzászólásodat, mert nem volt nehéz kitalálni, hogy ilyen színvonalas választ fogsz adni, ezt írtam, parse-old>> "Kíváncsian várom az ajánlatodat, hol tegye fel a kérdését, ahol van is esély rá, hogy kap releváns választ" (segítségül kiemeltem a fontos részt)
3. többre ment volna egy segítőkész válasszal, mint a kioktatásoddal.Ezért kérdeztem vissza tőle, hogy hogy oldotta meg a korábbit, abból kiindulva egyszerűbb lesz megoldani.
4. ezzel egyetértek.
5. ömmmm - inkább no comment. -
Sk8erPeter
nagyúr
Mi lenne, ha mutatnál némi konkrétumot? Kíváncsian várom az ajánlatodat, hol tegye fel a kérdését, ahol van is esély rá, hogy kap releváns választ.
Na ugye.Miért ne lehetne neki itt segíteni?
Legfőképp azért, mert ez a kérdés elég szorosan kötődik a PHP-fejlesztéshez is, mert a .htaccess-b×zerálás (vagy web.config) manapság szinte elengedhetetlen. Arról nem is beszélve, hogy ennek semmi köze az "Apache-szerver konfigurálásához", ez inkább az alkalmazás megfelelő beállítása az igények szerint az adott szerverhez kapcsolódóan.(#11712) dodopek :
soha életemben nem hallottam erről az oldalról. Nem mintha az jelentene bármit. -
Sk8erPeter
nagyúr
válasz
dodopek #11704 üzenetére
Milyen oldal az a "hitetlen"?
Az obfuszkált, összekutyult kód lényegében annyit tesz, hogy megpróbálják lehetetlenné tenni a kód továbbfejlesztését, lenyúlását, szóval jól értetted, szerintem nem érdemes ilyenekkel foglalkozni. Bár nyilván nem ártana legalább egy fájlt látni, amire ezt jelzi, bár most hirtelen azt sem értem, hogyan kotorászol a fájljaid között online víruskeresővel, mindet feltöltöd egyenként? Az se túl jó ötlet... -
Sk8erPeter
nagyúr
1. "fields enclosed by '\"' sorra" - most honnan jött az aposztróf? Eddig csv volt vesszővel.
2. A tábla karakterkódolása milyen?
3. No clue, nem ismerem a LOAD DATA INFILE-t.
Nagyon muszáj ezt az utóbbit használni egyébként az importáláshoz? Itt azt írja valaki, hogy jóval gyorsabb volt a hagyományos importálós módszer. -
Sk8erPeter
nagyúr
Google >> 2. találat.
"Export (dump) the database, and reimport it with the new encoding.
http://alexking.org/blog/2008/03/06/mysql-latin1-utf8-conversion" -
Sk8erPeter
nagyúr
válasz
Peter Kiss #11657 üzenetére
Nem pont ugyanezt éri el azzal, amit itt linkeltem?
-
Sk8erPeter
nagyúr
"de miért is nem dobott hibát akkor a lekérdezés?"
Igazából teljesen mindegy, hibát nem okoz. Ahogy tök mindegy az is, hogy úgy adod meg, hogy
WHERE bolt_id = 123
vagy úgy, hogy
WHERE bolt_id = '123'Ilyenkor, amikor már semmi más nem sikerül, akkor először megpróbálok előtte is-utána is valami teszttáblába feltölteni valami bogus adatot csak próbából, hogy egyáltalán az adatbázissal való kommunikáció normálisan működik-e.
Aztán megpróbálnám tök más, statikus fájllal a MySQL-táblába importálást azzal a query-vel, amit írtál, hasonló körülmények közt, de nem kell, hogy curllel letöltött cucc legyen.
Tehát akkor most már csak koncentrálj erre az egy feladatra, hogy a LOAD DATA INFILE ..... rész működjön.
Na majd kipróbálom kíváncsiságból, én még ezt ilyen formában úgysem próbáltam.Még próba előtt (most úgysincs időm rá): a MySQL-szerver ugyanazon a szerveren van, ahova a fájlt eltárolod?
Tehát például localhost mindkettő?
Lehet, hogy meg kéne próbálnod a LOCAL kulcsszót:
https://discussion.dreamhost.com/thread-126921-post-136078.html#pid136078 -
Sk8erPeter
nagyúr
nem tudom, még az is elképzelhető, hogy valamiért a PDO-nál mégsem működik megfelelően prepared statementben ez a kiemelt rész:
LOAD DATA INFILE :file .......
tehát hogy nem helyettesítődik be a fájlnév, sosem próbáltam. Mindenesetre a helyedben átmenetileg egy fix fájlnevet adnék meg, olyat, ami nyugodtan felülírható egy tmp könyvtárban, és így fixálnám ezt a fájlnevet, ebbe pakolnám ki első körben a file_put_contents()-szel a tartalmat.
Az ebbe a fájlba kirakott tartalom jó egyáltalán a curl után?Még rájöttem, hogy valszeg a :bolt_id INT, tehát azt át kéne alakítani így:
$stmt->bindValue(':bolt_id', $bolt_id, PDO::PARAM_INT);
(korábban rohanva véletlenül csak stringszerűen írtam, PDO::PARAM_STR-rel)
Ettől függetlenül fingom nincs, hogy mi a probléma, túl kevés dolgot tudunk a többiről, de kicsit türelmesebben kéne debuggolnod, úgy, hogy minden egyes változót kiíratsz, logolsz fájlba, rendesen debuggolod Xdebuggal vagy ilyesmi, és így tovább. Másképp soha nem fog kiderülni, és szenvedhetsz még vele napokig. -
Sk8erPeter
nagyúr
Én meg azért nem értelek, mert PDO-t használsz, de pont ugyanúgy belefűzöd a query-be a változót, mintha nem is PDO-t használnál, ezzel pont a lényegét veszti el a PDO-használat.
$stmt = $db->query("LOAD DATA INFILE '$file' INTO TABLE ar_termekek FIELDS TERMINATED BY ';' LINES TERMINATED BY '\r\n' IGNORE 1 LINES SET id=null,bolt_id='$bolt_id',frissitve=NOW();");
HELYETT
$stmt = $db->prepare("LOAD DATA INFILE :file INTO TABLE ar_termekek FIELDS TERMINATED BY ';' LINES TERMINATED BY '\r\n' IGNORE 1 LINES SET id=null,bolt_id= :bolt_id, frissitve=NOW();");
$stmt->bindValue(':file', $file, PDO::PARAM_STR);
$stmt->bindValue(':bolt_id', $bolt_id, PDO::PARAM_STR);
$stmt->execute(); -
Sk8erPeter
nagyúr
Olvasd el még egyszer, amit írtam.
Szerk.: hát mittudomén ennyiből.A szervered valamiért a masodik.php-vel előbb végez, aszinkron, mint említettem vala.
Ha nem így szeretnéd, akkor ne így AJAX-olj. Amúgy meg az .on()-t nem jó az egész body-ra meghívni, feleslegesen erőforrás-igényes, persze csak kliensoldalon. És igen, erősen OFF.
-
Sk8erPeter
nagyúr
-
Sk8erPeter
nagyúr
válasz
Lacces #11624 üzenetére
"De amúgy /index esetén és atw-s 404-es hibát kapsz. Nem tudom minek hívják ez, amikor a .php-t lehagyod az url routing során, szkript fájlnév, vagy valami ilyesmi, na az ilyen linkek nem működnek."
És az miért lenne baj, ha nem működik, ha lehagyja a végét? Sztem jobb is, hogy így van konfigurálva.Ja, egyébként Apache-nál a kiterjesztések nélküli fájlkeresgélést ez állítja: MultiViews. (Példa a .htaccess-ben: Options +MultiViews, de ez sztem kerülendő. Felesleges load a szerverre.)
Amúgy sztem eleve az a baj, hogy azon a rakás szar ATW-n teszteli.
-
Sk8erPeter
nagyúr
válasz
dodopek #11609 üzenetére
Hát nem nagyon értem, mi a gond, kipróbáltam, nálam localhoston jól működik.
Lehet, hogy a szerveren van elcseszve valami, de most hirtelen nem jövök rá az okára.Pl. egy pdf-hez tartozó képet így írat ki:
if($image == 'pdf') echo base64_decode('iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHhSURBVDjLjZPLSxtRFIfVZRdWi0oFBf+BrhRx5dKVYKG4tLhRqlgXPmIVJQiC60JCCZYqFHQh7rrQlUK7aVUUfCBRG5RkJpNkkswrM5NEf73n6gxpHujAB/fOvefjnHM5VQCqCPa1MNoZnU/Qxqhx4woE7ZZlpXO53F0+n0c52Dl8Pt/nQkmhoJOCdUWBsvQJ2u4ODMOAwvapVAqSJHGJKIrw+/2uxAmuJgFdMDUVincSxvEBTNOEpmlIp9OIxWJckMlkoOs6AoHAg6RYYNs2kp4RqOvfuIACVFVFPB4vKYn3pFjAykDSOwVta52vqW6nlEQiwTMRBKGygIh9GEDCMwZH6EgoE+qHLMuVBdbfKwjv3yE6Ogjz/PQ/CZVDPSFRRYE4/RHy1y8wry8RGWGSqyC/nM1meX9IQpQV2JKIUH8vrEgYmeAFwuPDCHa9QehtD26HBhCZnYC8ucGzKSsIL8wgsjiH1PYPxL+vQvm5B/3sBMLyIm7GhhCe90BaWykV/Gp+VR9oqPVe9vfBTsruM1HtBKVPmFIUNusBrV3B4ev6bsbyXlPdkbr/u+StHUkxruBPY+0KY8f38oWX/byvNAdluHNLeOxDB+uyQQfPCWZ3NT69BYJWkjxjnB1o9Fv/ASQ5s+ABz8i2AAAAAElFTkSuQmCC');
Hátha ebből majd valaki rájön, mi lehet az oka...
Egyébként szerintem jobban jártál volna, ha egy Drupalt vagy WordPress-t teszel fel ilyen célra, egy csomó minden eleve jól le van kezelve, és hosszú távon hasznosabb megoldás egy ilyen CMS. Van bejelentkezés, hozzászólási lehetőség, és minden egyben, eleve a beépített modulok között, tehát nem mindenféle helyről kéne összeollózni a kódot; plusz könnyen bővíthető mindenféle komplex dologgal egy ilyen tartalomkezelő rendszer (CMS).
Esetleg érdemes lehet megfontolni az erre való átállást. De ahhoz MySQL is kell, meg némi idő a beállítgatásra, de hosszú távon szerintem megtérül. -
Sk8erPeter
nagyúr
Tehát végül is visszajutottunk oda, hogy a print_r()-rel kiíratásnak nagyjából semmi értelme/előnye nincs.
(#11602) Lacces :
"De a curl() felépítését is nézve gyorsabbnak tűnik, mint a file_get_contents()."
Hosszan szuggeráltad a curl manualját, aztán addig nézted, míg már LÁTTAD, hogy úgy van felépítve, hogy gyorsabb? -
Sk8erPeter
nagyúr
válasz
Peter Kiss #11595 üzenetére
Na, ez a szempont még nem jutott eszembe. Mondjuk resource-okhoz tartozó változókat nem is túl sokszor debuggolok szerencsére...
Rájöttem, hogy még a var_dump() nagy előnye lehet, hogy kiírja a stringek, tömbök, stb. hosszát is, ez legalább informatív. Ezenkívül még egy nagy plusz a var_dump() mellett, hogy az Xdebug defaultból szépíti az ilyen módon kiíratott változókat.
Mondjuk ha valaki szépen akarja látni ezeket a változókat, használjon például Krumo-t: [link].A print_r() mellett viszont eddig kb. semmi nem szólt.
(#11596) Coyot :
"de a var_export más formában adja vissza a vizsgált változókat mint a másik kettő"
És szerinted én korábban miről beszéltem?
Pont ezt mondtam, hogy a másik kettő nem használható fel kódrészletként, tehát IDE sem highlightolja, ha bemásolod a kimenetet, viszont a var_exportnak megvan ez az igen nagy előnye. Plusz szemre is könnyebb átlátni szerintem, mint pl. a print_r() kimenetét."alapműködésben teljesen más"
A kiíratás módjában vannak különbségek, a cél hasonló.Vegyünk konkrét példát, kiíratom a $_GET változót, úgy, hogy mondjuk az alábbi címet írom be:
http://test.local/index.php?asd=tenisz%C3%BCt%C5%91&id=123&blabla=qweqwe&foo=bar&data[]=rtetz&data[]=ertwer&data[]=423
print_r() kimenete (előny: számomra ismeretlen):
var_dump() kimenete (előny: informatív adatok, pl. tömbök, stringek hossza; valamint a default Xdebug-támogatottság):
var_dump() engedélyezett Xdebuggal:
var_export() kimenete (előny: a kód egyből felhasználható kódként):
-
Sk8erPeter
nagyúr
Nem igaz, mert a var_export sem tol mindent egyből a kimenetre, ha TRUE-ra állítod a második paramétert. És én így használom.
(#11592) Speeedfire :
úgy értem, hogy ha egy mondjuk nincs kéznél normális debugger, akkor pl. egy buzinagy tartalmú változó kimenetét becopy-paste-elhetem egy IDE-be, és az highlightolja nekem a kódot.
Ja, és ott a var_dump is, ami szintén nem kódban felhasználható kimenetet ad. -
Sk8erPeter
nagyúr
Azon gondolkoztam, hogy vajon mi indokolja a print_r használatát mondjuk a var_exporttal szemben?
A var_export kimenete egyből felhasználható kódrészletként is, ráadásul jól átlátható kimenetet produkál, míg ugyanez a print_r kimenetére szerintem nem igaz, eleve kevésbé átlátható.
De biztos van valami szempont, ami hirtelen nem jut eszembe.
Még régen mindig a print_r használatát láttam kódokban, így eleinte én is átvettem, de aztán rájöttem, hogy sokkal jobban járok a var_exporttal, ennek a kimenetét az IDE-k is is tudják highlightolni, így könnyebb benne megtalálni, amit keresek. -
Sk8erPeter
nagyúr
Végül is annyira nem meglepő: a DOMDocumenttel (szerk.: vagy más DOM parserrel) való feldolgozás segítségével sokkal komplexebb dolgokat is tudsz művelni a feldolgozott, parse-olt dokumentummal, mint egy sima stringben történő kereséssel. A plusz komplexitás meg időbe kerül.
-
Sk8erPeter
nagyúr
válasz
Lacces #11562 üzenetére
Miért label_description szerint rendezed a tömböt, miért nem id szerint?
Amúgy a $data tömböt kéne még deklarálni a ciklus előtt, bár nem mintha pont ez lenne a baj.
$data = array();
while(...){
$data[] = ....;
}állítsd kivételdobálásra a PDO-t:
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);Van még ilyen is: errorInfo
Az eredményhalmazon egyébként foreach-csel is végig lehet rohangászni, és érdemes is, ha már támogatja az ilyen jellegű iterációt:
foreach ($stmt as $key => $row) {
// ....
} -
Sk8erPeter
nagyúr
válasz
Lacces #11559 üzenetére
Tényleg nem sokat árultál el a szerkezetről, ahogy Athlon64+ hsz.-éből is kiderül.
"Ilyennel még nem találkoztam az eredménynél:
r: resource(52) of type (mysql result)
a: bool(false)
datas: NULL
"Az $r értelemszerűen egy erőforrás-azonosító, az $a-nak a false visszatérési értéke meg gondolom jelzi, hogy valami gáz van, a $datas meg ebből következően üres.
Csak jelzem, hogy a data (adatok) eleve többesszám, nem kell mögétenni az "s"-t. -
Sk8erPeter
nagyúr
válasz
Lacces #11549 üzenetére
Nincs mit! Hát én meg nem gondoltam volna annak idején, hogy egyáltalán össze fogom tudni ezeket hasonlítani, de a GlassFish fényévekkel modernebb volt akkoriban, kb. asszem 1,5 éve, mint a Tomcat. Van egy hozzá tartozó, normálisan kezelhető, dokumentált (!) admin-felület, a Tomcatnél meg van kábé 10 lehetőség, azt' csá. A GlassFish-nél meg minden szart bekonfigolhatsz, meg nem '90-es évek feelingje van.
De amúgy rohadtul f×ngom sincs a Java-s webfejlesztésről.(ASP.NET inkább.)
-
Sk8erPeter
nagyúr
válasz
Speeedfire #11546 üzenetére
Szerintem mobal nem erről beszélt, egy teljesen jogos szempontot vetett fel: tegyük fel, hogy van 2 nap lejárati idővel sessionöd. Időközben a főadmin úgy dönt (ezt a példát említette mobal is), hogy Józsi jogosultságát elveszi a cikkek törléséhez, mert Józsi egy köcsög, tehát Józsi elvileg innentől kezdve nem törölhetne. Te valamilyen számomra rejtélyes módon sessionben tárolnád az egész RBAC-ot, aztán Józsinak még mindig nem járt le a sessionje, sőt, még meg is újítja, mert újból ránéz az oldalra, és még jól rosszindulatúan törli is a cikkeket.
De lehet, hogy másra gondoltál, akkor fejtsd ki.(#11542) Speeedfire : tényleg, előbb rosszat linkeltem, de szintén én kérdésem volt annak idején, amikor ezzel szoptam, ez:
http://serverfault.com/questions/301224/xampp-with-tomcat-add-on-how-to-configure-it-to-serve-java-or-php-contents-dep
Apache-csal is szívtam, IIS-sel is, amikor Tomcattel kellett összehozni.
Volt még alkalmam meggyűlölni a Tomcatet, szóval elhiheted, hogy megalapozottan mondom azt, hogy egy szar.
Viszont a GlassFish-sel pár kattintás után sikerült összehozni azt, amit Tomcattel egyszerűen vagy hihetetlen bonyolult lett volna, vagy nem is lehetett.(#11543) Lacces :
Java-ban nem igazán webfejlesztettem, csak a Vaadinhoz kellett annak idején összehoznom a dolgot (volt PHP-s és Java-s alkalmazás is a cég szerverén, én meg jó hülye fejjel nagy mellénnyel bevállaltam, hogy én majd simán megoldom a kettő összehozását, mert akkor még naivan azt hittem, lájtos lesz), a Java-s fejlesztőcsávó meg képtelen volt megérteni, hogy a Tomcat ósdi darab, a GlassFish már kissé modernebb, és hogy az ember időnként jó, hogy tanul újat... ezért végül összehoztam az IIS-t és Tomcatet, de úgy, hogy másik Java-s alkalmazást már nem vágtam, hogy kéne üzemeltetni, arra linkeltem ezt.
Na mindegy, majd eldöntöd. -
Sk8erPeter
nagyúr
válasz
Speeedfire #11540 üzenetére
Azért olyan nagyon nem egyszerű művelet, csak addig, amíg nem próbáltad rendesen konfigolni.
Ezzel kapcsolatos kérdésem volt annak idején:
http://serverfault.com/questions/334681/iis-7-tomcat-7-how-to-reach-http-localhost8080-my-app-under-e-g-http-mLacces, én a Tomcatet semmiképpen sem javaslom, használj például GlassFish Servert, az még értelmesen konfigolható. A Tomcat pedig a tapasztalataim szerint egy visszamaradt, agyonbonyolított sz@r.
-
Sk8erPeter
nagyúr
válasz
dodopek #11523 üzenetére
Nincs mit, de egyébként ha a window.open()-t akarod használni, akkor az nagyjából ennyi (bár illik nem az onclick-be tenni, de ez most tök mindegy), csak gyorsan összedobáltam egy példát:
http://jsbin.com/upiluz/1/edit -
Sk8erPeter
nagyúr
válasz
dodopek #11521 üzenetére
Kérlek használd a "Programkód" gombot, miután kijelölted a kódodat, azért van, hogy ne essen össze ilyen rondán a kódod.
Ha az a problémád, hogy új ABLAKBAN szeretnéd megnyitni a target="_blank"-kel, és nem új FÜLÖN, akkor az nem fog menni, mivel ez a böngésző saját tulajdonsága, és amúgy is elvileg a felhasználó dolga lenne eldönteni, hogy milyen módon szeretné megnyitni.
Erre legfeljebb JavaScripttel tudsz írni megoldást, a window.open() használatával.
De manapság ez is rendkívül elavultnak számít, mert csúnya, jQuery UI Dialog és hasonlók állnak a fejlesztők rendelkezésére. -
Sk8erPeter
nagyúr
válasz
dodopek #11517 üzenetére
Feltölteni?
Most nézem a honlapját, és ilyen lehetőséget nem látok, úgy látom, kifejezetten csak könyvtárlistázásra meg fájlletöltésre való:
"PHPDL is a Php script that lists all the files in a directory (except itself of course). What sets PHPDL apart is that everything the script needs is in one file, including the file-type icons it uses."
A demójában sem mutat ilyen lehetőséget (mondjuk ha lenne, nyilván akkor a demóoldalon nem engedné feltölteni a fájlt minden jöttment júzertől). -
Sk8erPeter
nagyúr
válasz
trisztan94 #11502 üzenetére
Na látod, megy ez neked.
(#11505) : akkor tényleg retek szar.
A mysql_query-s bohóckodásoknál még igaz volt ez az escape-elés-kényszer.
Prepared statement, nem kell quote-olni. Pont ez nyújtja a kényelmét és biztonságosságát is. -
Sk8erPeter
nagyúr
válasz
trisztan94 #11499 üzenetére
"Fél órája bújom a zinternetet de nem találtam konkrét megoldást"
Azt hogy csináltad?Tele von Zsinór kolléga az oldalán írt egy egész jó bemutatót:
http://maerlyn.eu/2011/12/03/pdo.html
De egyébként a PHP manualjában halál egyértelmű példák vannak, pl.:
http://www.php.net/manual/en/pdostatement.bindparam.php -
Sk8erPeter
nagyúr
"Jó ötlet-e, hogy a felhasználókkal egy táblában tárolom a hírlevél címzetteit?"
Nem, a felhasználók táblában a felhasználókat és adataikat tárold.
A hírlevélre feliratkozók meg szintén felhasználók, de nagyon csúnya lenne, ha a hírlevélre NEM feliratkozók mindegyikénél NULL érték lenne; DE lehetnek a hírlevélre feliratkozók adott esetben az oldaladon accounttal nem rendelkezők is, akik csak megadták az e-mail-címüket, mert érdekli őket a téma, viszont nem regisztráltak. Akkor meg már jól látható, hogy a kettő nem vegyíthető (és amúgy sem).
Tehát a hírlevélre feliratkozók listája legyen egy külön tábla.
Egyébként kezdetben én is féltem több táblát létrehozni feladatok szerint, mert valamiért az volt az érzésem, hogy egybe kéne erőszakolni, de aztán rájöttem, hogy szebb, ha minden feladatot lehetőleg különválasztasz adatbázis szintjén is, ez a query-ket is rugalmasabbá teheti adott esetben, és nem kell szétszemetelni egyetlen táblát sok, oda nem tartozó, vagy felesleges adattal. -
Sk8erPeter
nagyúr
válasz
DuDicsento #11473 üzenetére
short_open_tag-eket használsz a kódodban, miközben az a szervereden ki van kapcsolva (phpinfo-ból is kiderül).
Tehát kerüld a <? használatát, írd ki rendesen, hogy <?php, és akkor jó lesz. (Vagy ha ragaszkodsz előbbihez, kapcsold be az említett opciót.) -
Sk8erPeter
nagyúr
válasz
Peter Kiss #11466 üzenetére
No de gondolom abban egyetértünk, hogy nem illik ilyen, szerver által beállított változókat ($_POST, $_GET, $_FILES, stb.) írni. Adja át másik változónak inkább, mert ha hozzászokik, akkor később elég káoszos lehet a kódja.
(#11464) mobal:
hmm, hát ez fura, hogy ezt nem oldották meg.
Vagy azt csinálod, hogy végigszaladsz foreach-csel a tömbön, és a megfelelő indexeket használva nyomatod át ciklusban a metódusnak (hát "evvan"), vagy másik változónak adod át szintén foreach-csel végigrohangászva rajta, vagy a frontenden változtatod meg az input mezőket, szétbontva (hát ez sem túl jó).
Ez tényleg fura, hogy nincs megoldva. -
Sk8erPeter
nagyúr
Igazából mi a célod? Így első ránézésre valószínű, hogy valami feladatot rosszul közelítesz meg, mert ezen egy foreach-csel vagy for ciklussal végig tudsz rohangászni, és úgy bepakolni másik tömbökbe, de nem biztos, hogy túl sok értelme van.
(#11461) Speeedfire :
Így nem lesz jó.
Legfeljebb:
$_FILES['uploaded_files']['name'][0]
$_FILES['uploaded_files']['name'][1]
...
$_FILES['uploaded_files']['size'][0]
$_FILES['uploaded_files']['size'][1] -
Sk8erPeter
nagyúr
válasz
Peter Kiss #11438 üzenetére
Pontosan.
-
Sk8erPeter
nagyúr
válasz
Speeedfire #11436 üzenetére
Honnan tudod, hogy string lesz-e, vagy sem?
Eleve úgy kell megírni a kódot, hogy a rosszabbik esetre is fel legyen készítve.
pl. ha a delete.php?product_id=asdasdads címet hívod meg, és úgy használod, ahogy fentebb javasoltad, hogy ne használjunk aposztrófot/idézőjelet, akkor majd kapsz egy MySQL-errort az orcádba, szintaktikai hibára hivatkozva. -
Sk8erPeter
nagyúr
válasz
Speeedfire #11434 üzenetére
"általában"...
És ha épp nem az "általában" esete forog fenn?
Ne felejtsd el, itt most query-konkatenálgatásokról beszélünk, nem prepared statementekről... (szerk.: ...sajnos) -
Sk8erPeter
nagyúr
válasz
Peter Kiss #11424 üzenetére
Én sem értem, miről beszélnek.
-
Sk8erPeter
nagyúr
válasz
Peter Kiss #11418 üzenetére
Hmm, köszönöm, ez hasznos infó volt, elgondolkodtató, simán lehet tényleg a normális GC hiánya.
Akkor érdemes eltöprengeni a szolgáltatóváltáson, oda, ahol újabb PHP-verzió van, mert a Drupal tényleg igen erőforrás-igényes, tehát sok hasonló probléma jelentkezhet még, ha nem váltunk időben. -
Sk8erPeter
nagyúr
válasz
Peter Kiss #11415 üzenetére
Huhh, köszi! Ezekre még nem gondoltam, de jó gondolatmenet.
Az a gáz, hogy az éles szerveren ez a verzió adott, és nem úgy néz ki, hogy váltanak. Akkor lehet, hogy megpróbálom rábeszélni a megrendelőt a szolgáltatóváltásra, bár nem hiszem, hogy egykönnyen belemegy... a korábban linkelt szolgáltató árai elég kedvezőek egy 2 GB-os csomagra, most épp 5760 Ft-ot fizet évente ennyiért, szóval ez elég jó ár. Mondjuk azt nézem, hogy Tárhelyparknál jelenleg 1 GB 3900 Ft-ért kapható. Bár tény, még mindig előbbi jön ki arányaiban olcsóbbra.Egyébként Te is tapasztaltál már korábban valamelyik program flow-nál ilyen jellegű problémát, hogy ez így kapásból eszedbe jutott?
-
Sk8erPeter
nagyúr
válasz
Peter Kiss #11410 üzenetére
Hali! Igen, konkrétan 5.2.17-es verzió.
Lehet valami bug ebben a verzióban, vagy miért?
Egyébként teljesen jogos a kérdés, ezt elfelejtettem mondani, localhoston pedig 5.3.8 van fent.(#11411) KKope
szívesen! -
Sk8erPeter
nagyúr
Nem ártana, ha a webraktar egy string lenne.
Egyébként hogy elkerüld a parákat, még ezt is javítsd:
mysql_query("DELETE FROM mozgastetel WHERE mozgastetel_id=" . mysql_real_escape_string($_GET['id'])) or die(mysql_error());
erre
mysql_query("DELETE FROM mozgastetel WHERE mozgastetel_id='" . mysql_real_escape_string($_GET['id'])."'") or die(mysql_error());
Gyakorlati példa:
ha a $_GET['id'] egyenlő ezzel: asdasd
DELETE FROM mozgastetel WHERE mozgastetel_id=asdasd
helyett ez lesz:
DELETE FROM mozgastetel WHERE mozgastetel_id='asdasd'Így meg nem fog legalább szintaktikai para miatt sírni a MySQL.
Ahogy a többiek mondták, szokj rá még időben a PDO-ra. (Mármint minimumként, aztán jöhet egy ORM később.)
Szerk:
most látom, Lacces is így escape-elte.
A magyarázat meg itt van, hogy miért jó így. -
Sk8erPeter
nagyúr
válasz
PazsitZ #11391 üzenetére
Nem, pontosan ugyanazok a táblák és kód van fent mindkét helyen. Nyilván nem tesztelem tök más körülmények között, annak nem sok értelme lenne...
Localhoston magasabb a korlát 128 MB-nál, hogy ne tudjon elszállni, de direkt azért monitorozom, hogy első körben megtudjam, valóban ennyit zabál-e.
Az XHProf szerint nem.
Na ez akkor hogy lehet?
Éles szerveren túllépi a 128 MB-ot, localhoston nem.
Új hozzászólás Aktív témák
Hirdetés
- NTFS, exFAT, FAT32 – Melyiket válaszd és miért?
- Autós topik látogatók beszélgetős, offolós topikja
- VoidXs: Tényleg minden játék optimalizálatlan?
- Lakáshitel, lakásvásárlás
- Fotók, videók mobillal
- Eredeti játékok OFF topik
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- exHWSW - Értünk mindenhez IS
- iPhone topik
- Formula-1 humoros
- További aktív témák...
- AKCIÓ! MSI Z690 i7 12700K 32GB DDR4 1TB SSD RX 6800 16GB Phanteks P600S Cooler Master 750W
- BESZÁMÍTÁS! MSI B450 R5 5500 16GB DDR4 512GB SSD RTX 2060 Super 8GB SilentiumPC Signum SG1V TT 500W
- Bomba ár! HP EliteBook 840 G5 - i5-8G I 8GB I 128GB SSD I 14" FHD Touch I HDMI I Cam I W11 I Gari!
- Huawei P30 Liter 128GB Kártyafüggetlen 1Év Garanciával
- Új és használt laptopok , üzletitől a gamerig , kedvező áron. Garanciával !
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft
Város: Budapest