Új hozzászólás Aktív témák
-
DNReNTi
őstag
válasz
Speeedfire #15368 üzenetére
Nálam a százalékszámítás az abszolút győztes.
-
DNReNTi
őstag
Régóta kerestem már egy jól működő smtp emulátort, az email küldés tesztelésére, asszem megtaláltam a tökéletest. Akinek esetleg aktuális a dolog az csekkolja le a Papercut-ot. Lehet csak nekem új a dolog, legnagyobb előnye hogy nem csak kezeli hanem meg is mutatja az email-eket.
Ha valaki tud még ettől is jobbat, ossza meg pls.
-
DNReNTi
őstag
Korábban engem is megszivatott egyszer a BOM. Azóta se tudom mi értelme van azon kívül hogy megkeserítette az életem több órára, mert nem működött jól az include_once();
Mi értelme van?
-
DNReNTi
őstag
válasz
kemkriszt98 #15349 üzenetére
Sajnos sokan nem bajlódnak azzal hogy szerver oldalon is ellenőrzik a bevitt adatok helyességét, mert javascript-el már a beíráskor ellenőrzik azokat és eleve nem is engedik elküldeni a hibásan kitöltött form-ot. Ez bazinagy hibaforrás, tekintve, hogy a js kikapcsolható, a fejlesztői eszközökkel bármelyik böngészőben engedélyezhetővé lehet tenni a submit-ot nem egész 3 mp alatt. Zárójelbe azért hozzáteszem fogalmam nincs az android fejlesztés hogyan zajlik, szóval az is lehet teljesen irreleváns amit most írtam.
-
DNReNTi
őstag
válasz
trisztan94 #15286 üzenetére
Csudi megoldás az a millió die()
Tegyed bele egy metódusba, és hibánál dobjon inkább exception-t. Szebben mutatna. Igen tudom, nem ez volt a kérdés.
-
-
DNReNTi
őstag
Tökéletesen érthető a különbség, köszi.
Amit továbbra sem értek, hogy miért nem működött a call_user_func_array() az érték szerint átadással összerakott tömbbel? Továbbá a harmadik, foreach() megoldás nem működött jól. Utóbbit mondjuk lehet benéztem valahol, erre mindjárt vissza is térek.
-
DNReNTi
őstag
Napi villámkérdés:
Mi a különbség ez:
for ($i=0; $i<$regi_tomb_merete; $i++) {
$uj_tomb[] = $regi_tomb[$i];
}és e között :
for ($i=0; $i<$regi_tomb_merete; $i++) {
$uj_tomb[] = & $regi_tomb[$i];
}A var_dump($uj_tomb) látszólag totál ugyan azt adja vissza, valami mégsem jó az első változattal, mert a call_user_func_array() nem helyesen fut le vele, hanem tömb minden eleme az utolsó elem. A második módszerrel teljesen jó minden, csak meg akarom érteni mi az oka annak hogy az első bár látszólag ugyan azt a tömböt készíti el, mégsem jó.
Bónuszkérdés:
Miért nem jó így sem:
foreach($regi_tomb as $tomb_elem) {
$uj_tomb[] = & $tomb_elem;
} -
DNReNTi
őstag
válasz
fordfairlane #15253 üzenetére
Basszus... Epic fail. Megvan a hiba... Inkább le se írom annyira ciki.
-
DNReNTi
őstag
válasz
fordfairlane #15250 üzenetére
Egy mysqli objektum. A PHPStorm szépen fel is sorolja a mysqli metódusokat a -> után mégis a "Call to a member function close() on a non-object" hibával lerogyik.
De mindegy is mivel kiderült, nem szükséges a kapcsolatokat zárni, maguktól záródnak.
-
DNReNTi
őstag
válasz
trisztan94 #15246 üzenetére
Ehhez kapcsolódóan nekem is lenne egy (lehet gyökér) kérdésem.
Én is elkezdtem egy static mysqli kezelő osztályt. Egy metódus létrehozza a kapcsolatot.
Kérdés a következő: A létrehozott adatbázis kapcsolat hogyan záródik / zárható le?Pl:
$DB = Database::openConnection();
$DB->close();Na ez így nem működik.
Mi erre a helyes megoldás?
-
DNReNTi
őstag
válasz
Sk8erPeter #15235 üzenetére
Érthető. Megfogadom. Mindenhol prepared statement-ek lesznek a jövőben. Sőt. Meg fogom csinálni a fordfairlane által javasolt saját osztályt, így mindenképpen mindig statement-ekkel dolgozok majd.
Viszont... A példámban írtam is, nincs hibakezelés, csak szemléltetni akartam, hogyan működik a dolog. Ezért nincs például csekkolva hogy a $oldal változó integer e. Feleslegesnek gondoltam egy senior körökben is elfogadható példát felvezetni, amikor a lényeg csak az volt hogy a kérdező megértse a paraméterátadás és ennek feldolgozásának menetét. Ez sikerült, tudta implementálni. Ez olyan mintha valakit az autósiskolában egyből a reggeli csúcsba vinnének nem rutin pályára, pedig még csak hátsóülésen látott autót belülről. No mindegy értem én hogy értitek.
-
DNReNTi
őstag
válasz
fordfairlane #15226 üzenetére
Saját osztály írására már én is gondoltam. Lehet rászánom magam a jövőben.
(#15227) cucka
Miért, hol nem kell?
Például olyan metódusokban nem szoktam használni ahol a szerver oldal ad át ellenőrzött paramétert, mondjuk egy user_id-t, azaz garantáltan nem jelent veszélyt.(#15229) biker
mondjuk $odlal helyett $oldalt írhatnál
Siettem. -
DNReNTi
őstag
válasz
Sk8erPeter #15222 üzenetére
Én ezt mindig így használtam. (God kills a kitten?
)
Hogyan lehetne másképp? -
DNReNTi
őstag
-
DNReNTi
őstag
válasz
laceeeboy #15212 üzenetére
Nem olyan bonyolult pedig. Amit biker leírt, kicsit kifejtem neked.
Legyen az oldalad címe: domain.hu/hirek.php
Kezdjük azzal hogy ellenőrzöd melyik oldalt (lapot) nézed:
$oldal = isset($_GET['oldal']) ? $_GET['oldal'] : 1;
Alap esetben (most) a $oldal változó 1 lesz. Azaz az 1. oldalt nézed.Az írtad három hírt szeretnél megjelentetni, legyen a legfrissebb elől, ezt tároljuk egy változóban, így később könnyű módosítani.
Tehát: $hirek_szama = 3;Ezen két adat alapján létrehozol egy "léptető" változót.
$oldal_offest = ($oldal-1) * $hirek_szama;
Az $oldal-1-re azért van szükség mert különben elcsúszna a lekérdezés. Ezekkel máris egyenesben vagy, minden adat megvan hogy tetszőleges lekérdezést tudj kreálni:
SELECT * FROM hirek ORDER BY publikalas_ideje DESC LIMIT '$odlal_offset', '$hirek_szama';Szintén biker írta: a LIMIT meghatározza honnan, hány rekordot kérsz le.
Alap esetben ez most 0, 3. Azaz az elejétől 3 db rekord. Magyarul a 3 legfrissebb.
Eddig gondolom teljesen érthető.A léptetés pedig ha eddig értetted már nem okozhat gondot:
Mivel tudod épp melyik oldalon vagy ($oldal) ennek felhasználásával már gyerekjáték.
<a href="/hirek.php?oldal=<?php echo $oldal-1; ?>" title="Előző oldal">Előző oldal</a>
<a href="/hirek.php?oldal=<?php echo $oldal+1; ?>" title="Következő oldal">Következő oldal</a>
A hivatkozás így pl a : domain.hu/hirek.php?oldal=2 linkre visz, amiből máris jön, hogy a 2. oldalon vagy. A lekérdezés vége így : LIMIT 3, 3 lesz.Remélem sikerült érhetően megfogalmaznom és nem írtam hibát, közben nem ellenőriztem magam.
FONTOS: ebben amit leírtam nincs hibakezelés! Csak a működést szemlélteti! -
DNReNTi
őstag
Ismét örülök hogy én maradtam pécés.
-
DNReNTi
őstag
válasz
Tele von Zsinór #15190 üzenetére
Az XHTML 1.0 a HTML 4.01 XML verziója. Végül is ha szigorúan vesszük igazad van.
-
DNReNTi
őstag
válasz
csabyka666 #15182 üzenetére
Mivel a doctype html 4.01 igy mindenkepp igy a jo.
-
DNReNTi
őstag
válasz
PumpkinSeed #15178 üzenetére
A legtöbbször szerintem a "jóinformatikus" hozzáállás miatt van:
"Működik oszt jó.Jobb a békesség ne bántsuk.
"
Ennek eredménye XP SP1, legjobb esetben IE7-tel. -
DNReNTi
őstag
válasz
PumpkinSeed #15176 üzenetére
A gond az hogy egy nagy cégnél a legtöbb esetben nincs lehetőség, egyáltalán nem is opció az IE-n kívül egyéb böngésző használata.
-
DNReNTi
őstag
válasz
csabyka666 #15171 üzenetére
Csak tippként: bármikor amikor új projekthez kezdesz, az elsők között legyen a helyes karakterkódolás és adatbáziskapcsolat kialakítása. Ha ezzel nem foglalkozol és később ilyen gondokba ütközöl, mint most is, akkor csak önmagadat szivatod.
(#15172) trisztan94
Hát a céges intranetekről a végtelenig lehetne beszélgetniSzerintem mindenkinek volt már egy-két álmatlan éjszakája ezek miatt. Csak hogy én is megosszak egyet: Egy (inkább meg sem nevezem) multinál kiderült hogy az egyik gépen nem tudják használni az általam intranetre készített programot. A gép egy 90-es évekből visszamaradt Windows 3.1-et futtató csoda. Asszem IE3 volt hozzá. És nem ment... És nem értették miért.
-
DNReNTi
őstag
válasz
csabyka666 #15169 üzenetére
Angol nem árt hozzá: fő különbségek.
Egyébként a tiéd a doctype alapján : HTML 4.01.De ennek az off sorozatnak inkább itt a helye.
-
DNReNTi
őstag
válasz
csabyka666 #15167 üzenetére
De jó, ha HTML 4-et használsz. Amit én írtam az HTML 5. Többnyire szerintem már ezt használjuk.
-
DNReNTi
őstag
válasz
csabyka666 #15165 üzenetére
A <head>-ben ez szerepel <meta charset="utf-8"> ?
Most meg lehet az a baj hogy már az adatbázis és az adatbáziskapcsolat rendben van, de a dokumentum karakterkódolása nem utf-8Ja, és természetesen meg lehet változtatni a mezők illesztését is. Vagy kattintgatva a Szerkezet/Structure fülön, vagy az ALTER TABLE paranccsal.
-
DNReNTi
őstag
válasz
csabyka666 #15159 üzenetére
Az adatbázis kapcsolat megnyitása után érdemes futtatni:
Hagyományos mysql_ fügvényekkel:
mysql_query("SET NAMES SET 'utf8');
mysql_query("SET CHARACTER SET 'utf8');mysqli osztállyal:
$DB_peldany->set_charset('utf8');Ezután már jónak kell lennie.
UPDATE:
Ja meg "utf8_hungarian_ci" helyett mindenhol inkább "utf8_general_ci"-t használj, így legyen beállítva az adatbázis és a táblák alapértelmezett kódolása is. Ha minden UTF8 akkor nem szokik gond lenni.
-
DNReNTi
őstag
válasz
csabyka666 #15145 üzenetére
Az egész az SQL lekérdezéseden fog múlni.
Arra hogy ez jó legyen kettő módszer van, ezeket most két kereső szóval mutatom meg, legyen pl: "Elment a görög aludni" a keresett content mező tartalma.
Keresőkifejezés: "aludni mentem"
Ebből ugye csak az "aludni" illeszkedik.1. A lassabb és bonyolultabb:
SELECT * FROM table WHERE content LIKE '%aludni%' OR content LIKE '%mentem%';2. A szebb és gyorsabb:
SELECT * FROM table WHERE content REGEXP 'aludni|mentem';Mind a két lekérdezés hozni fogja az "Elment a görög aludni" rekordot, továbbá minden egyes másik rekordot, amiben az "aludni" vagy a "mentem" vagy ezek töredéke szerepel.
PHP-ban szerintem az utóbbit a legegyszerűbb implementálni.
str_replace függvénnyel a szóközöket | jelre cseréled és már mehet is a lekérdezésbe.
Done. -
DNReNTi
őstag
válasz
trisztan94 #15078 üzenetére
Jogos, nem tudom mi az eljárás pontos neve, de több tumblr oldalon láttam már.
-
DNReNTi
őstag
válasz
Sk8erPeter #15007 üzenetére
thx
-
DNReNTi
őstag
Villámkérdés WP guruknak:
Adott egy régi (nem tudom mikori verzio) telepitve egy ügyfelemnél és nem tudja a jelszót hozzá. Se ő se senkiaz adatbázisban átírnám a jelszót de nem tudom milyen titkosítással/hash-el van tárolva. Milyennel van? Pl azt szeretném egy 'a' betű legyen mit írjak be?
Köszke -
DNReNTi
őstag
válasz
Tele von Zsinór #14950 üzenetére
Ahan köszi!
Én is ezt vettem ki a leírásokból, csak nem értettem miért kellene nekem több autoloader. -
DNReNTi
őstag
válasz
Sk8erPeter #14945 üzenetére
OMFG
Szörnyülködés közben erre valaki?Közben találtam olyat hogy spl_autoload_register de nem egészen értem miért lenne jobb ezt használni mint az __autoload-ot. Ezt valaki el tudná magyarázni?
-
DNReNTi
őstag
Villámkérdés:
Osztályok betöltésére az __autoload(); még menő vagy van már valami szebb rajabb megoldás? Köszi! -
DNReNTi
őstag
válasz
PumpkinSeed #14863 üzenetére
Fixen meg van adva hogy mire linkeljen
href="?elem=0" és href="?elem=1" így persze hogy csak a 0. és 1. elemek közt léptet. -
DNReNTi
őstag
válasz
fordfairlane #14858 üzenetére
A 2. pont teljesen jogos.
Valami miatt nem akart jó lenni prepared statement-tel, ezért vettem ki, az még megoldásra vár.
Köszi az infót. -
DNReNTi
őstag
Sziasztok,
Egy villámkérdés:
Egy most készülő portálon a felhasználók belépése lehetséges mind felhasználónévvel, mind email címmel. (Persze kell a jelszó is.) No most kicsit megkavarodtam és nem tudom mi a jó megoldás logikailag.Látszik nem sokat aludtam...
Tehát hogyan jó, vagy hogyan jobb?
$SQL_command = "SELECT * FROM main_users WHERE (user_name = '$this->_user_name' AND user_password = '$this->_user_password') OR (user_email = '$this->_user_name' AND user_password = '$this->_user_password');";
Vagy:
$SQL_command = "SELECT * FROM main_users WHERE (user_name = '$this->_user_name' OR user_email = '$this->_user_name') AND user_password = '$this->_user_password';";
_user_name mind a két esetben a felhasználónév vagy az email (attól függ az user melyiket írta be) a _user_password pedig értelemszerűen a jelszó.Az én logikám szerint mind a kettő működik és jó, de a második, rövidebb a szimpatikusabb. Vélemények?
Köszke -
DNReNTi
őstag
válasz
PumpkinSeed #14730 üzenetére
Gyóó.
Ettől ez sokkal egyszerűbb.
Ha jól értem a title és content mezők utolsó két rekordját szeretnéd megjeleníteni a news táblából. Na most ha jól értem akkor ez egész egyszerűen így fog kinézni:
$sql_lekerdezes = "SELECT title, content FROM news ORDER BY id DESC LIMIT 2;"; -
DNReNTi
őstag
válasz
Peter Kiss #14668 üzenetére
Jól összefoglaltad
-
DNReNTi
őstag
válasz
#68216320 #14636 üzenetére
Először vizsgáld hogy a szöveg 500 karakter hosszú e.
Ha nem akkor kész is vagy.Ha több mint 500 karakter, akkor a substr függvénnyel addig vizsgálod a következő karaktereket amíg egy mondatvégi írásjelet nem kapsz, és mindet hozzáfűzöd az eredeti 500 karakterhez.
Vagy strpos függvénnyel meghatározni az 500. karaktertől következő legközelebbi megfelelő karakter pozícióját majd a substr-el addig levágni az elejétől. Talán ez még egyszerűbb.
-
DNReNTi
őstag
válasz
PumpkinSeed #14608 üzenetére
Nem csináltam még hasonlót szóval csak elméletben:
Mi lenne ha a fájlból mindig csak 10 karaktert olvasnál be és azt vizsgálnád? Ha az megvan akkor jönne a következő karaktert követő 10-es sorozat. Beolvasáskor vizsgálni kellene h van e egyáltalán még 10 karakter, ha nincs akkor ennyi. Így végülis mindig egy 10 elemű tömbbel dolgoznál, és egy változóban csak azt kellene tárolni hányadik karakternél jársz a fájlban.Sőt akár azt is lehet hogy csak első alkalommal olvasol be 10 karaktert, aztán csak egy index-el lentebb "sorolod" a meglévő elemeket, és az utolsó helyre egy új karaktert szúrsz be.
Remélem sikerült érthetően vázolni az elméletemet
-
DNReNTi
őstag
válasz
PumpkinSeed #14233 üzenetére
Én nem könyvből tanultam, hanem az interneten. Ha megy az angol, akkor szinte minden kérdésedre választ kapsz a StackOverflow-on, a php.net-en. Én ezt ajánlom.
-
DNReNTi
őstag
válasz
Sk8erPeter #14176 üzenetére
Igen így gondoltam.
Lehet rosszul fogalmaztam?
-
DNReNTi
őstag
válasz
PumpkinSeed #14173 üzenetére
Közben észrevettem hogy gyökérséget írtam... Kevés volt a napi kv.
Az "echo $eredmeny1 . '<br>';" így ebben a formában csak egy sortörést írna ki...
Sorry a rossz példáért.
-
DNReNTi
őstag
válasz
PumpkinSeed #14169 üzenetére
Hű
Van egy kis káosz.
Először is, mivel valamilyen feltétel teljesülését vizsgálod feltételre van szükség.Lássuk:
$eredmeny1 = NULL;
if ($elso == $masodik) {
echo $eredmeny1 . '<br>';
}Így megnézed hogy a két változód egyenlő e egymással, ha igen akkor kiíratod és egy sortörést is teszel mögé, ha nem teljesül a feltétel, tehát nem egyenlőek, akkor nem történik semmi. Másrészt szerintem ilyen feltételeknél nem célszerű a '===' használata mert például ha ez a helyzet:
$elso = 6;
$masodik = '6';Akkor ez egyenlőtlenség lesz, mivel a $masodik egy string típusú változó, hiába 6 az is, de szöveg nem szám. Ezt megelőzendő perfekt a sima == kifejezés.
A többi feltétel ennek mintájára megy, csak a relációk változnak. Ha szeretnél kiíratni valamit akkor is ha a feltétel nem teljesül:
$eredmeny1 = NULL;
if ($elso == $masodik) {
echo $eredmeny1 . '<br>';
} else {
echo 'A feltétel nem teljesült.<br>';
}Remélem segítettem.
-
DNReNTi
őstag
Villámkérdés:
Ennek van értelme? Biztonsági szempontból?
md5(hash('sha512', $titkosítandóSzöveg)) -
DNReNTi
őstag
válasz
Cyberslider #14122 üzenetére
'name' => ak_clean($product['name']) . ' ' . ($product['model']);
-
DNReNTi
őstag
válasz
Petyyyyy #14104 üzenetére
Én a következőképp szoktam megoldani:
A fájl feltöltéskor adatbázisba kerül egy bejegyzés, az egyszerűség kedvvért most legyen csak 3 mező: id, filename, extension. A fájl elnevezése mondjuk: 'userupload_' . $user_id . '_' . '$now'. Azaz: userupload_214_20130827144842. A kiterjesztés egyértelmű: jpg, png, akármi amit te megengedsz. Ennek alapján egy rekord: 12, userupload_214_20130827144842, png.Lekéréskor egyszerűen az a dolgod hogy összerakd a darabokat, Pl:
$img_path = '/imgs/uls/users/';
$thumb_path = $img_path . 'thumbs/';
$filename = 'userupload_214_20130827144842'; (adatbázisból)
$fileext = 'png'; (adatbázisból)
$img_path .= $filename . '.' . $fileext;
$thumb_path .= $filename . '_thumb.' . $fileext;Kiíratás ennek alapján már egyszerű:
<img src="<?php echo $img_path; ?>" alt="<?php echo $filename; ?>">
Ugyan ez a thumb-bal.Remélem érthető, és segítettem is, próbáltam egyszerűen a legfapadabb módszerrel leírni.
-
DNReNTi
őstag
válasz
Petyyyyy #14028 üzenetére
Ha jól tudom több különbség is van. A require() a szigorúbb. Betölti a fájlt abban az esetben is ha az egy nem teljesülő feltételben van, továbbá fatal error-t hoz ha nem található a beolvasandó állomány, megáll a futásban is. Az include() hoz hibát, de lefut a script. Még továbbá ha jók az ismereteim a requrie_once() és az include_once() az amik csak akkor töltik be a fájlt ha "szükség van rá". Pl ha már az inicializálásnál betöltötted a "init.php"-t, és közben valahol a kóddzsungelben ismét előkerül include_once('init.php'); formában, akkor nem fogja újra beolvasni. Asszem így van.
-
DNReNTi
őstag
válasz
fordfairlane #13984 üzenetére
Igen. Pont jöttem megírni a csodamegoldást. ' helyett " ...
-
DNReNTi
őstag
Sziasztok,
Gyökér kérdésem lesz, de már agyvérzést kapok. HTML formátumó UTF8 levelet kellene küldenem PHP-val. A legnagyobb fejfájás most az, hogy már korábban működött az alábbi megoldás:
<?php
$message = '<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8" /></head><body>
<img src="http://prohardver.hu/design/head-full.png" alt="logo">
</body></html>';
$to = 'sajátcímem@gmail.com';
$subject = 'tárgy';
$from = 'admin@feladó.hu';
$headers = 'MIME-Version: 1.0 \r\n';
$headers .= 'Content-type: text/html; charset=utf-8 \r\n';
$headers .= 'From:' . $from;
mail($to,$subject,$message,$headers);
?>Most ez egy HTML katyvaszt küld, nem beszélve arról hogy a levelző még a karakterkódolást is elsz*rja. Egyszerűen nem tudok rájönni miért nem működik, holott ugyan ez, már korábban jó volt. Hol hibázok?
-
DNReNTi
őstag
válasz
trisztan94 #13885 üzenetére
Ez engem is érdekel. Én mysqli-t használok, nekem valamiért a PDO anno a váltáskor túl vadnak tűnt.
Miért PDO inkább mint a mysqli?
-
DNReNTi
őstag
válasz
#68216320 #13602 üzenetére
Én eleve úgy oldanám meg hogy csak a filenév és kiterjesztés legyen adatbázisban tárolva. Persze ha egészen biztosan mindig jpg akkor kiterjesztés nem kell. Tehát pl csak: 'hello' és 'jpg' egy-egy mezőben.
1. sql lekérdezés
2. szükséges adatok mentése ($filename, $fileextension)
3. $path = 'http://valami.hu/images/';Innen pedig már pofon egyszerű.
echo '<a href="' . $path . $filename . '_big.' . $fileextension .'" rel="lightbox[gallery]" title="' . $filename . ' banner"><img src="' . $path . $filename . '_small.' . $fileextension .'" alt="' . $filename . ' width="200" height="200"></a>';Ha nem oldható meg ez és mindenképp az egész html tag-es bazárt kell variálni ... az bajos.
-
DNReNTi
őstag
válasz
bolvar #13600 üzenetére
Akkor ott már az elején elcsúszik valami.
Most a saját logikámat követve:1. autentikálás - van e felhasználó belépve, vannak e engedélyek hozzá.
ha minden ok, akkor megyünk tovább, ha nem akkor belépés/engedélykérés.2. megnézem szerepel e már az id a szavazatok között
ha igen akkor már eleve nem is engedem hogy megjelenjen számára a szavazás felület, hanem egyből az eredményekre irányítom (vagy akárhova).
3. szavazáskor a php kód újraellenőrzi hogy szerepel e az id az adatbázisban és csak akkor írja be ha még nem.
ezzel elkerülhető hogy valaki mondjuk megnyitja 15 böngészőablakban az appot és 15x tud szavazni, hiszen amíg még nem szavazott megjelenik neki a szavazás oldal akár 1000x is.ezek mind mind még akkor történnek mikor meg sem jelent semmi. így mire egy betű megjelenik az oldalon te már mindent tudsz amire szükséged van. remélem érthetően írtam le... kicsit már vakon vagyok
-
DNReNTi
őstag
Kérdés azokhoz akik már készítettek / használtak saját tartalomkezelőt.
CKEditor vagy TinyMCE ?Eddig én a CK-t használtam, de a mérete és egyszerűsége miatt csábító a tinymce. Jobb? Rosszabb? Előny? Hátrány? Mit ajánlotok?
-
DNReNTi
őstag
-
DNReNTi
őstag
Amúgy most olyan ez a vita mint ha egy galaxy s3 és iphone5 fanboy próbálná meggyőzni a másikat arról h a sajátja jobb. Kábé.
(off: persze nem kérdés: s3 win
) Az itt felsorolt lehetőségeknek mindnek van előnye és hátránya azt használjátok amelyik közelebb áll hozzátok.
-
DNReNTi
őstag
válasz
spammer #13459 üzenetére
Megteszteltem oda-vissza, nem találtam benne hibát, ha esetleg mégis bakizik, dobj egy privátot és kijavítom, el is mentettem a saját kis függvénytáramba. Hátha egyszer nekem is kell.
Még annyit lehet célszerű módosítani hogy a $difference is felkerülne paraméternek, így az is megadható a függvény meghívásakor.. részletkérdés.
Használd egészséggel -
DNReNTi
őstag
válasz
spammer #13456 üzenetére
Sajnos már nem tudom szerkeszteni amit írtam... megcsináltam függvénynek és kicsit tuningoltam rajta, így még jobb és könnyebb használni:
function cutText($text, $needle) {
$result = '';
$difference = 100;
$needle_length = strlen($needle);
$needle_position = stripos($text, $needle);
if ($needle_position){
$text_tmp = substr($text, 0, $needle_position);
if (strlen($text_tmp) > $difference) {
$text_tmp = substr($text_tmp, -$difference);
$space_position = strpos($text_tmp, ' ');
$text_tmp = '...' . substr($text_tmp, $space_position+1);
}
$result = $text_tmp;
$text_tmp = substr($text, $needle_position, ($needle_position+$needle_length+$difference));
if (strlen($text_tmp) > $difference) {
$space_position = strpos($text_tmp, ' ', $difference);
$text_tmp = substr($text_tmp, 0, $space_position) . '...';
}
$result = $result . $text_tmp;
} else {
$result = 'A keresés nem hozott eredményt!';
}
return $result;
}Használata egyszerűen csak:
echo cutText($text, $needle); -
DNReNTi
őstag
válasz
spammer #13456 üzenetére
Hali,
Ezt most gyorsan összedobtam, lehet kókány és egyszerűbben is menne, de az első találatra kitűnően működik:
$text = 'az összes szöveg.';
$needle = 'keresőszó';
$result = '';
$difference = 100;
$needle_length = strlen($needle);
$needle_position = stripos($text, $needle);
$text_tmp = substr($text, 0, $needle_position);
$text_tmp = substr($text_tmp, -$difference);
$space_position = strpos($text_tmp, ' ');
$text_tmp = substr($text_tmp, $space_position+1);
$result = $text_tmp;
$text_tmp = substr($text, $needle_position, ($needle_position+$needle_length+$difference));
$space_position = strpos($text_tmp, ' ', $difference);
$text_tmp = substr($text_tmp, 0, $space_position);
$result = '...' . $result . $text_tmp . '...';
echo $result;update:
a keresőszó helyének meghatározásakor az stripos($text, $needle); megoldjá jobb mert így nem case-sensitive. -
DNReNTi
őstag
válasz
spammer #13444 üzenetére
Persze hogy van értelme. Az űrlapon bevitt adatokat mindenképp célszerű az escape_string() metóduson átengedni mielőtt betolod az adatbázisba, elkerülendő a mysql injection-t.
A másik dolog is teljesen normális. Sőt ilyenkor célszerű közös css-t használni az editorban (TinyMCE) és a megjelenítéskor, hiszen nem csak tartalomra hanem kinézetre is pontosan ugyan azt kapja majd vissza az user amit megszerkesztett. -
DNReNTi
őstag
válasz
Andoidtibi #13418 üzenetére
Így nézne ki szerintem a legegyszerűbb táblás megoldás, természetesen ez most fixen 3 oszlop 5 sort jelenít meg, 15 elemmel.
Talán kiindulási alapnak jó lesz.
$elemek = array("Egy","Kettő","Három", "Négy" , "Öt" , "Hat" , "Hét" , "Nyolc" , "Kilenc" , "Tíz", "Alma" , "Dió" , "Mák" ,"Körte" , "Cseresznye");
sort($elemek);
$szamlalo = 0;
echo '<table>';
for ($i = 1; $i <= 5; $i++) {
echo '<tr>';
for ($j = 1; $j <= 3; $j++) {
echo '<td>'.$elemek[$szamlalo].'</td>';
$szamlalo++;
}
echo '</tr>';
}
echo '</table>'; -
DNReNTi
őstag
válasz
Andoidtibi #13418 üzenetére
Szia,
Én először eldönteném hogy táblázatba vagy listába akarom kiíratni.
Esetedben talán egyszerűbb a táblázat, viszont szebb megoldás listával, mely megjelenését nem a kiíratás hanem a css határozná meg.Megírom gyorsan a táblást.
Új hozzászólás Aktív témák
Hirdetés
- Iphone 12 Pro Max 128 GB /// 88% Akku // Számlával és Garanciával
- Xiaomi Redmi 9A 32GB Kártyafüggetlen 1Év Garanciával
- Apple iPhone 12 Pro Max 128GB Kártyafüggetlen 1Év Garanciával
- Samsung Galaxy S23PLUS 256GB Kártyafüggetlen 1Év Garanciával
- Dell G3 Gamer laptop (2TB SSD, 32GB Ram, 4GB Videókártya, FullHD kijelző, szép állapotban)
- Telefon felvásárlás!! Honor Magic6 Lite, Honor Magic6 Pro, Honor Magic7 Lite, Honor Magic7 Pro
- AKCIÓ! Dell Alienware M17 R3 Gamer notebook - i7 10750H 16GB DDR4 1TB SSD RTX 2070 8GB WIN10
- LG 48C2 - 48" OLED EVO - 4K 120Hz 1ms - NVIDIA G-Sync - FreeSync Premium - HDMI 2.1 - A9 Gen5 CPU
- BESZÁMÍTÁS! Gigabyte H610M i5 13400F 16GB DDR4 512GB SSD RX 6700XT 12GB DeepCool MATREXX 40 650W
- REFURBISHED - DELL Thunderbolt Dock WD19TBS docking station (210-AZBV)
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: Promenade Publishing House Kft.
Város: Budapest