Html-, css- és php-help

Jelentkezz be a hozzászóláshoz.

#20833
Sziasztok !

Bocsánat, ha egy kicsit hosszú leszek,de ha valaki esetleg tudna segíteni egy amatõrnek az nagyon jó lenne 😊
A problémám az, hogy van egy weboldal, mely kilistázza a termékeket két oszlopba.Ennek megcsináltam, hogy kiírja a bruttó értékét az adatbázisból.
Csak az a bajom, hogy ha van akciós érték, akkor ezt át kellene húzni, és alá meg kiemeltebben az akciós értéket.Több dologgal próbálkoztam ,de nem tudok rájönni, hogy kell ezt az egészet feltételesbe adni.
Bemásolom a kódot :
$tartalom["tartalom"].='<table class="body-term">';
$my18=mysql_query("SELECT * FROM termek where pid='".$alkatt["id"]."' and public='1' order by id") or die(mysql_error());
$j=0;
while($egy18=mysql_fetch_array($my18))
{
if($j%2==0)
{
$tartalom["tartalom"].='
<tr><td class="body-term-font"><br><a href="'.link_make_2(conv($katt["nev"]),conv($alkatt["nev"]),conv($egy18["nev"])).'">'.$egy18["nev"].'</a><div class="term-al-'.conv($katt["nev"]).'"><a href="'.link_make_2(conv($katt["nev"]),conv($alkatt["nev"]),conv($egy18["nev"])).'"><img src="thumbs.php?tid='.$egy18["id"].'&type=2" class="term-al-kep" alt="'.$egy18["nev"].'"/><div class="term-price">
'.nf($egy18["brutto"]).',- Ft</a></div></div></td>';
}
else
{
$tartalom["tartalom"].='<td class="body-term-font"><br><a href="'.link_make_2(conv($katt["nev"]),conv($alkatt["nev"]),conv($egy18["nev"])).'">'.$egy18["nev"].'</a><div class="term-al-'.conv($katt["nev"]).'"><a href="'.link_make_2(conv($katt["nev"]),conv($alkatt["nev"]),conv($egy18["nev"])).'"><img src="thumbs.php?tid='.$egy18["id"].'&type=2" class="term-al-kep" alt="'.$egy18["nev"].'"/><div class="term-price">'.nf($egy18["brutto"]).',- Ft</a></div></td></tr>';
}
$j++;
}
if($j%2!=0)
{
$tartalom["tartalom"].='<td></td></tr>';
}
if($j==0)
{
$tartalom["tartalom"].='<tr><td>Nem található termék a kategóriában!</td></tr>';
}
$tartalom["tartalom"].='



</table>';
Malakai
#20832
unheap.com – jQuery kedvelõknek egy újabb plugin repo.

(\__/) ( X.x) ( } . { )

Lazarus
#20831
Progi ajánló hátha másnak is kell:

FTP backupra az elmúlt fél évben kipróbáltam párat és ez a nyertes: SyncBackFree

Egyszerû telepítés és beállítás, tud mirrort készíteni így nem tölti le a teljes szervert minden alkalommal, van benne feladat ütemezõ, van benne szûrõ, ingyenes
Malakai
#20830
Az alábbi cikkben is szerepel a Glickman-pontrendszer is, ehhez vannak libraryk is, glicko / glicko 2 néven lehet keresni, php-hez pl ez.

(\__/) ( X.x) ( } . { )

SzirmosSzisza
#20829
Találj ki olyat amit neked megfelelõ. A sakkban pl pont az Élõ-félét használják 😊

“A distributed system is one in which the failure of a computer you didn't even know existed can render your own computer unusable” _____/|_____\o/___ Cápatámadás

vafeN
#20828
Valaki tudna mondani olyan pontrendszereket mint az Élõ-pontrendszer? Ranglistához kellene.

[O_O] (.)(.)

Mcrider9
#20827
Köszönöm 😊
Sajnos ennyire még nem foglalkoztam adatbázisokkal.
Az indexelésrõl most hallok elõször, de már tanulgatom az optimalizálás lényeges pontjait.
Akkor a comment_id-jét indexeljem, ha jól értem a leírások alapján.

Illetve másik kérdés, hogy az SQL injection ellen mennyire véd jól a mysqli osztály bindelése? Van szükség még szûrésekre a POST változóimon?

Malakai
#20826
Igen, tehát azt jelenti, hogy a jelenlegi rendszerrel nem tudod megnézni, hogy jóska miket lájkolt, csak azt, hogy az x kommentre ki lájkolt.

Plussz egy egyszerû select indexelt oszlopok alapján nem szabadna problémát jelentenie, persze memória függõ az egész, de mysql elkezelget neked sok-sok millió bejegyzést.
Az már csak egy plussz, hogy egy insert egy táblába is gyorsabb többségében, mint egy meglévõ recordon egy update (amikor valaki lájkol).

(\__/) ( X.x) ( } . { )

SzirmosSzisza
#20825
SQL utasítás akkor fut sokáig, ha nem tud index alapján keresni, ilyenkor a diszkrõl kell beolvasni az adatokat, ami nagyon idõigényes. Na most nálad egy #34#63#322342#312 szerû szövegre biztos nem fog tudni indexet építeni, de egy egyszerû szám alapú azonosítóra igen. Tehát nem fog végig szaladni több ezer soron, mert index alapján tudja mi merre. (adatbázis tervezésnél is ezeket külön szokták rakni és ez a felsorolásos dolog nem az igazi, mert pl az egyiknél van 2,3 a másiknál 3,2 és ez adatbázis szinten nem ugyanaz az entitás, hiába ugyanazok az értékek csak más sorrendben)

Utólag átolvasva 1-2 dolog nem pontosan így van, de szerintem érthetõ.

“A distributed system is one in which the failure of a computer you didn't even know existed can render your own computer unusable” _____/|_____\o/___ Cápatámadás

Mcrider9
#20824
De elég nagy forgalmú rendszerrõl lesz szó, ha az összes like-nak létrehozok egy-egy bejegyzést a táblában, akkor a countot, ahogy írtátok megtudom spórolni, viszont egy felhasználó listázás esetén végig szaladni többszázezer soron, akárhányszor szükség van rá, kissé lassíthatja a rendszert.

A jelenlegi felállásban, pedig minden commenthez rögtön ott a likeolok id-je, illetve like-olás és unlike-olás esetén CONCAT vagy REPLACE-el tudom gyorsan módosítani azt.

Javítsatok ki ha tévedek 😊

Malakai
#20823
Likes tábla és ott eltárolod a user_id-t és a comment_id-t, esetleg a komment alatt annyit, hogy mennyien likeolták, hogy egy countot megspórolj és csak akkor olvass a likes táblából, hogyha ki kell listázni a felhasználókat, vagy a felhasználó likejait. Valószinüleg többet néznek meg egy kommentet, mint amennyien likeolnak.

(\__/) ( X.x) ( } . { )

Lazarus
#20822
TABLE facebook_likes('id', 'user_id', 'comment_id')
Mcrider9
#20821
ha egy facebook like rendszerhez hasonló megoldást szeretnék, minden adatbázisban tárolt kommentekhez, akkor szerintetek mi a legjobb megoldás ennek tárolására?

Jelenleg likes mezõben letárolom a userid-ket #-el választva.
Például 1#16#12#56 és ha dolgozok vele, explode-al tömbbé alakítom.

Malakai
#20820
Tényleg innen vannak itt akik valamilyen csatornán összegyûlnek? Azt tudom, hogy Cat futtat egy botot. 😊
Ha nem, akkor az is egy opció lenne még. ^_^

(\__/) ( X.x) ( } . { )

Malakai
#20819
Na, megjelent a jQuery 2, persze nem kell sokat várni tõle, aki eddig nem figyelte a fejlesztés irányát, lényegében egy refactor, a 2.x branch böngészõ támogatásából dobták a régebbi IE-ket és fogják majd sorban alacsony piacú böngészõket. A különbség a 1.x és 2.x között lényegében ennyi, modern böngészõ támogatás, alacsonyabb file méret, gyorsabb mûködés, a jövõben belekerülõ fícsörök is bekerülnek mindkettõbe majd.

(\__/) ( X.x) ( } . { )

SzirmosSzisza
#20818
Parancsolj 😄


import requests

while True:
r = requests.get("http://localhost")
print r.content


Mondjuk több szálból indítani biztos hatékonyabb lenne.

“A distributed system is one in which the failure of a computer you didn't even know existed can render your own computer unusable” _____/|_____\o/___ Cápatámadás

#20817
Közben APC-vel kísérletezgetek. Már maga az opcode cacheing a negyedére vitte le a nemrég linkelt keretrendszerem fejlesztésekor tesztelésre használt scriptem futásidejét (4ms-ról 1ms-ra) 😊

Elvileg az Apache mpm-worker változata esetén PHP-FPM kell az értelmes mûködéshez (hogy a processek között osztani tudja a memóriát ellentétben a sima cgi-vel), ezt jól tudom?

(Már azzal megy egyébként, de elõtte én mod_fcgid - php5-cgi párossal sem tapasztaltam a sok helyen említett problémákat, persze lehet önmagában az F5 csapkodása egy szem gépen nevetségesen kevés új processt szülni 😄)
#20816
Ez az oldal tényleg jó ötlet, segítek én is szívesen ha fogok tudni (úgyse 😄)
#20815
Na alakul ez akkor 😊

Malakai: a keretrendszerem amire tervezem építeni már eleve az: https://code.google.com/p/apdl/ 😊

(A fõoldalon összeganyézott példák formájában vegetáló dokumentáció és egyéb ordító dolgok felett kérnék mindenkit elsiklani egyelõre, nem véletlenül van alpha állapotban a projekt 😄)

És igen, a logo nem véletlenül tûnik ismerõsnek <#idiota>
Malakai
#20814
Az oldal maga is lehetne opensource akkor már. 😊

(\__/) ( X.x) ( } . { )

Jim Morrison
#20813
<#eljen>
Én szívesen segítek majd, ha nem is php kódolással (mert azért az én szintem még messze van a profitól), minden másban szerintem tudnék segíteni. (Akár moderátori szerepet is betölthetnék, vagy más, apróbb dolgok fejlesztése, stb)

ASUS B550-PLUS, AMD 5600X, 32 GB DDR4, EVGA RTX 3070, SM-OB1, HD 600 + Asus Xonar DX, TonePort UX1 + Alesis Elevate 5, Novation Circuit \o/

#20812
"és valaki tolná is a szekerét"

Hát amennyire majd a szabadidõm engedi fejlesztés terén eléggé oda tudnám magam tenni (eleve nagyon sok testreszabhatóan reusable cuccot állítok elõ munkám során, sok van amibõl könnyen tudok majd építkezni), tartalmakat is állítanék rá elõ (cikkek pl a fõoldalra), viszont az elterjesztése, a közösség építése egyedül nehéz lenne 😊 Ebben (meg persze bármi másban is 😄) örülnék a segítségeteknek.

Ötleteket is szívesen várok, bár a stackoverflow szerû Q&A rendszer önmagában elég vonzó dolog, mindenképp az egyik alapkõnek szánom, de jöhet még sok minden más is 😊

Ha már itt tartunk egyébként én mindenképp szeretnék egy tradícionális fórumot is mellé, illetve mint említettem a fõoldalra cikkeket, plusz valami jól struktúrált tutorial szekció sem ártana.

Amit meg még eléggé hiányolok, az egy olyan hely, ahol be lehet mutatni figyelemreméltóbb saját projekteket, akár kész (ingyenes vagy minimum ingyenes csomaggal rendelkezõ) webes szolgáltatásokat, akár open source megoldásokat.

Ez így együtt véve szerintem egész szépen centralizálhatná a jelenleg eléggé szétszóródott webfejlesztõ közösséget, ami szerintem semmiképp sem ártana senkinek 😊
Malakai
#20811
SG-n kívül nagyon nem hallhatsz mást, bármelyik oldal legyen az összehasonlítás tárgya. 😛
És de, ph-n van PHP, HTML, webes fejlesztés általában, programozás általában és egyéb nyelveknek külön relatíve látogatott topicok (php pl elég látogatott), van szoftverfejlesztés alfórumuk. 😊

(\__/) ( X.x) ( } . { )

SzirmosSzisza
#20810
prohardveren nincs olyan téma? (nem szoktam odajárni, csak mindenhonnan azt hallom, hogy az színvonalasabb, mint az SG 😄)

“A distributed system is one in which the failure of a computer you didn't even know existed can render your own computer unusable” _____/|_____\o/___ Cápatámadás

Malakai
#20809
Gondolom az a nagy, mindenféle programozós site kategória. 😊

Habár érdekes lenne egy külön hely, de az azért kérdéses szerintem, hogy mennyire érdemes, amennyien páran itt irogatunk kétlem, hogy nagyon kihasználnánk, persze ha a terv az, hogy jöjjön a nép és valaki tolná is a szekerét, akkor hajrá. 😊

(\__/) ( X.x) ( } . { )

MerlinW
#20808
prog.hu ?😊

[merlinw.org]

kifli
#20807
jó ötletnek tûnik a külön portál. Tárhelyet szerintem tudnák biztosítani... (mondjuk van egy olyan érzésem, hogy nem én vagyok itt az egyetlen 😊 )
SzirmosSzisza
#20806
Ezek közül mi egyiket se tanultuk egyetemen célzottan, szóval maradnak a könyvek. (mármint PHP + mySQL nincs)

“A distributed system is one in which the failure of a computer you didn't even know existed can render your own computer unusable” _____/|_____\o/___ Cápatámadás

#20805
Elméletileg semmilyen szinten nem tudok programozni, de gyakorlatilag mivel angolul tudok már építettem be oldalba slidert, meg módosítgattam sok dolgot,de mikor komolyabb kódok vannak, sajnos nem tudom megcsinálni azt amit szeretnék.Jelenleg a munkám is ez, több weboldalt karbantartok (saját admin felülettel),de van olyan,ami elavult nem CMS,és rengeteg termék van fent,amit nagy munka lenne új oldalba fektetni,így fejlesztenem kell.Kezdõnek nem mondanám magam,de szeretném a programozást megtanulni.
Amiket Dodo55 felsoroltál, szerintem egyetem kívül ilyen mélyen sehol se lehet megtanulni,csak könyveket olvasva.
Jim Morrison
#20804
Egy stackoverflow szerû jó lenne ^^

ASUS B550-PLUS, AMD 5600X, 32 GB DDR4, EVGA RTX 3070, SM-OB1, HD 600 + Asus Xonar DX, TonePort UX1 + Alesis Elevate 5, Novation Circuit \o/

#20803
Én nem, de utánanéztem mik ezek és ha nagyobb infrastruktúrával dolgoznék bizony jól jönnének 😊

Más: Azt látom mostanában elég sok hasonló téma megy itt köztünk tapasztaltabb fejlesztõk között, szinte ketté vált a topic az eredeti "Html-, css- és php-help" téma és az ilyen jellegû témák között.

E mellett az az igazság nem igazán tudok komolyabb magyar, kifejezetten webfejlesztéssel foglalkozó oldalról (persze ott vannak a nagyobb programozással foglalkozó oldalak, de úgy gondolom a webfejlesztés egyre inkább kinövi magát külön témává)

Elgondolkoztam most kicsit azon, hogy összedobhatnánk esetleg valamit ami az ilyen komolyabb témáknak adhatna külön helyet. Szabadidõnk, energiánk, stb függvényében gondolok itt szélsõséges esetben akár csak egy sima topicra a sajátban vagy egy forum.sg.hu-s fórumra, vagy a másik végletre, hogy akár egy komplett portált (ami hosszabb távon viszont akár bõven vissza is hozhatná a belefektetett energiát valamilyen numerikus formátumban 😊).

Igaz, hogy gondolom mindegyükünk perfekt angolból, de ettõl függetlenül nekem pl. jól esne néha az anyanyelvemen, magyar szakmaibeliek írásait olvasgatni, megosztani velük a gondolataimat, stb...

Mit szólnátok, láttok benne fantáziát?
Malakai
#20802
Kicsit visszakanyarodva az eszközökhöz, használ itt vki (deven) Puppetet, Chefet, vagy hasonlót? 😊

(\__/) ( X.x) ( } . { )

#20801
Nem tudom, de ha értelmes tudást szeretnél, mindenképp olyan képzést keress, ahol az alábbi dolgok benne lesznek az anyagban:
-HTTP Protokoll alaposan
-PHP 5 Objektum Orientált Programozási Modell (OOM)
-Naprakész PHP 5.3+ dolgok (az 5.3 annyi fontos új dolgot hozott, hogy eredetileg PHP 6 lett volna már, csak egy lényeges karakterkódolási fejlesztés elhalasztása miatt a végén mégsem léptették a major verziót)
-Használható MySQL ismeretek (ne csak a nagyon alap CRUD lekérések, annál kicsit részletekbemenõbb dolgok is)
-MVC általános elmélet szintjén, beleértve a template rendszereket is (a mögötte álló elv a lényeg, nem egy-egy konkrét keretrendszer)
-Alapvetõ biztonsági és minimális titkosítási ismeretek
-Gyakoribb PHP extensionök ismerete (GD, CURL, stb...)
-LAMP szerver beállításával, kezelésével kapcsolatos dolgok sem ártanak

Ha ezeket megtanulod és szerzel bennük gyakorlatot, akkor már elég széleskörûen használható tudásod lehet 😊

(A nagyon alapvetõ dolgokat nem soroltam fel, feltételezem azt azért mindenhol tanítják, pl HTML, CSS, programozási és programtervezési alapelméletek, egy kis JS esetleg, FS/IO témák, stb...)
Terensz
#20800
Szia!

Milyen szinten tudsz php-t programozni, az-e a hobbid, vagy csak munkának szeretnéd, programoztál-e mást valaha - a középsulis számtech szakkört leszámítva?

Egy fecske nem csinál kolbászból kerítést

#20799
Sziasztok !

Tudtok ajánlani komolyabb sulikat, ahol munka mellett php webprogramozást lehetne elvégezni ? Én szegedi vagyok, de nem találtam nekem megfelelõt, hátha távoktatásban vannak megbízható cégek.
Terensz
#20798
Végül ez lett a megoldás:


SELECT
UM.uid , UM.user ,
(
SELECT PV.pvalue
FROM users_pnames PN , users_pvalues PV
WHERE PN.pname = 'zipcode'
AND PN.pid = PV.pid
AND PV.uid = UM.uid
) AS zipcode
,
(
SELECT PV.pvalue
FROM users_pnames PN , users_pvalues PV
WHERE PN.pname = 'city'
AND PN.pid = PV.pid
AND PV.uid = UM.uid
) AS city
,
(
SELECT PV.pvalue
FROM users_pnames PN , users_pvalues PV
WHERE PN.pname = 'street'
AND PN.pid = PV.pid
AND PV.uid = UM.uid
) AS street
,
(
SELECT PV.pvalue
FROM users_pnames PN , users_pvalues PV
WHERE PN.pname = 'address'
AND PN.pid = PV.pid
AND PV.uid = UM.uid
) AS address
FROM users_main UM

Egy fecske nem csinál kolbászból kerítést

kifli
#20797
Pont most lesz ajax-ra cserélve az iframe...
MerlinW
#20796
Az iframe használatát pedig elfelejteni😊 div, overflow, ajax powa😊

[merlinw.org]

SzirmosSzisza
#20795
Igen, hiszen onnan tölti le. Amúgy kitörölni azt a kommentet/hírt/akármit amiben benne van az iframe.

“A distributed system is one in which the failure of a computer you didn't even know existed can render your own computer unusable” _____/|_____\o/___ Cápatámadás

kifli
#20794
iframe injection malware ellen mit lehet tenni, miután már felkerült egy oldalra?

A domain megvan, ahonnan tölti le a dolgait. Ha arra rákeresek a file-okban, akkor megtalálhatom?

Elvileg ez az oldal: carbonitesbalked.biz
MerlinW
#20793
<#eljen>

[merlinw.org]

#20792
Köszönöm a segítséget, már mûködik! 😊
MerlinW
#20791
Az ajax-al hívott url minden kimenete (html header-tõl a footerig minden) bekerül a result-ba, az meg az elembe (div-be) amit frissítesz. Tehát neked csak arra a kimenetre van szükséged amit az üzenõfalon szeretnél látni.

20788-ban leírtam hogy rakhatod be a dolgot az index-edbe.

[merlinw.org]

#20790
Nekem úgy vaa az oldal, hogy mindig az adott oldalt hívja be az index.php-ba.:

<?php
if(isset($_GET["op"]) && $_GET["op"]!="") {
$op = $_GET["op"];
if(file_exists("inc/".$op.".php")) {
include_once ("inc/".$op.".php");
} else {
include_once ("inc/404.php");
}
} else {
include_once("inc/main.php");
}
?>


és akkor a többi php fájlban már csak az van amit akarok az oldalra. és akkor nem csak az üzenõfalat tölti újra?
SzirmosSzisza
#20789
Itt még 10 percig ilyen valós idejû dologról lesz elõadás 😄

Amúgy, ha static fájlt töltesz meg akkor az nem lesz dinamikus.

“A distributed system is one in which the failure of a computer you didn't even know existed can render your own computer unusable” _____/|_____\o/___ Cápatámadás

MerlinW
#20788
Az azért nem jó, mert így az egész oldal bekerül a result-ba, neked pedig csak a frissített adatokra van szükséged. Ha nem szeretnél külön php-t, akkor küldj az ajax-al egy paramétert (legyen pl. ajax) amit vizsgálsz, pl:

if ($_POST<'ajax'>) {
print új_adatok();
exit;
}

[merlinw.org]

#20787
ezt a módszert megpróbáltam, a "php_ami_lekeri_az_uj_adatokat.php" helyett odaírtam ugyan azt a fájlt amiben meg van írva az egész. az baj? mert most ha frissítem az oldalt akkor bejönnek az üzenetek az oldalról, aztán eltûnnek.
MerlinW
#20786
Valahogy így csinálnám szépen (nem biztos, hogy tökéletes, most rántottam össze gyorsan):

html

<body>


javascript


function updateTimer() {
doReload();
t = setTimeout("updateTimer()", 3000);
}

function doReload() {
var parameterek = { param1 : 'ertek1', param2 : 'ertek2' }

$.ajax ( {

type: 'post',
url: 'php_ami_lekeri_az_uj_adatokat.php',
data: parameterek,
success: function(resultData) {
$('#div_amit_frissiteni szeretnel').html(resultData);
}

} )

}

[merlinw.org]

passatgt
#20785
*ill az iframe-en belüli oldalra rakhatsz egy frissítés linket, aminek a hivatkozása megegyezik az iframe hivatkozásával és az is újratölti neked az oldalt

passatgt
#20784
legegyszerûbb ha a divet lecseréled egy iframe-re, és az azon belüli dokumentum tetejére beírod ezt:

<meta http-equiv="refresh" content="30">

ez 30 másodpercenként újra fogja tölteni az iframe-et automatán