22786
Html-, css- és php-help
  • Cat 02 #14021
    http://php.net/manual/en/control-structures.switch.php
  • bracsek #14020
    atyaég.

    switch if és a ternalis operátor változók értékének a vizsgálatára szolgál, nem értékátadásra.
  • biomage
    #14019
    Elnézést, az előző írásomat nem volt komoly ...
    Tudom hogy jó programozó vagy még1x elnézést.

    Áttudok phpban adni értéket switchel?
    Mert van olyan címsor kapcsolások GETel amivel átadok egy phpnak adatot például id számot vagy kategóriát stb. sőt az admin vezérlőpultom teljesen ilyen, van olyan ahol igy néz ki a cimsor "valami.php?vmi=tema&id=1".
    Az egyik ismerősöm azt mondja hogy ö nem tudja hogy kéne ezt megoldani.
  • MerlinW
    #14018
    switch($_GET['vmi'])
    {

    case "tema": {
    include "include/tema.php"; echo tema();
    break;
    }

    case "test": {
    include "include/test.php"; echo test();
    break;
    }

    default: {
    include "include/board.php"; echo board();
    }
    }
  • MerlinW
    #14017
    Értem értem, oké, a ternary valóban bekavart, a $valamit tölti vele.
  • Malakai
    #14016
    Hogy mégérthetőbb legyen esetleg annak, aki nem ismeri, nem szokta használni a ternary operatort.

    $valami = (empty($_GET['vmi'])) ? 'board' : $_GET['vmi'];

    ==
    if (empty($_GET['vmi'])) {
    $valami = 'board';
    } else {
    $valami = $_GET['vmi'];
    }
  • Malakai
    #14015
    Még jó, hogy nem postoltam egyből, annyiszor szerkesztetted ez t hozzászólást.. :)

    A ternary sor mondjuk úgy látom téged is megkavart, vagy nemtudom az if-eket mire írod...

    $valami változó nem is része a ternary ifnek, a változóba csak rögzíti a végét az empty eredménye alapján. Tehát az a sor speciel működik. Legfeljebb te az exp1-et általában külön zárójelben láthatod.

    Az, hogy a tema-t nem kell aposztrófozni az tényleg nagyon blőd dolog, php tanulás első pár lépése után olyat már tényleg nem szapadna írni...
  • MerlinW
    #14014
    Alapból hülyeség a bevágott forráskód, én csak egy alapvető hibára hívtam fel a figyelmedet.

    if ($valami=empty($_GET['vmi'])) - minden esetben üres lesz a $valami
    if ($valami==empty($_GET['vmi'])) - 1/0 (igaz/hamis) lesz a feltétel eredménye

    A jó megoldások:

    if (empty($_GET['vmi'])) - ha üres
    if (!empty($_GET['vmi'])) - ha nem üres
    if (isset($_GET['vmi'])) - ez pedig a helyes megoldás

    -----------------------

    Továbbá:

    if ($valami==tema) - helyesen: if ($valami=='tema')
    tema(); - ha nincs paraméter nem kell php-ban () a végére.

    -----------------------

    "azért mert ugyan úgy működik ha van aposztróf jel ott vagy ha nincs"
    Baromság.

    -----------------------

    Ennyi. Fingod sincs az egészről és te vitatkozol velünk? Tudod mit? csinálj amit akarsz. Ha a többieknek is van esze, ők is hanyagolni fognak lassan. Részemről itt az a pont ami után ne várj tőlem több segítséget.
  • biomage
    #14013
    azért mert ugyan úgy működik ha van aposztróf jel ott vagy ha nincs
  • Cat 02 #14012
    Igazából én se értem minek használsz olyan kódot, amit szerintem te se értesz. Ha meg ilyen okos vagy, akkor a tema miért nem '' között van ? Lefordul ez egyáltalán ? :D
  • bracsek #14011
    Igen én is gondoltam arra de a form nak nincs alt tagja és ott szoktam beállítani hogy mikor kell validálni.

    A második probléma hogy néhány böngésző az alt tagot title ként kiteszi tooltipnek.
  • bracsek #14010
    Mivel jQuery, így $("#valami") vagy $(".valami") így megvan
    eddig így használtam:

    $('form[req=onsubmit],form[req=onkeyup],form[req=onchange]')

    a this a kiválasztott formra vonatkozik.
    $(this).find("input[req],select[req],textarea[req]")...

    és a classal az a bajom hogy megadom hogy class="zodinput mittom es-megegy req" de nem igen írhatok paramétert... tehát vagy azt írom hogy req-text-2-7 vagy kereshetek más megoldást. De ez sem igen tetszik nekem szerettem volna a vesszőket meghagyni és ne kelljen a ^req et használjam szűrni annyira nem szeretem túlbonyolítani :D

    Túlbonyolítás 412 sornál tart most :D mondjuk azzal kezdi hogy körbe öleli az inputokat és lemásolja a designt és az input border és backgroundot leveszi és ha helytelen az input akkor háttérnek vörös hullámos aláhúzást tesz és tooltipnek (nem title hanem saját megoldás) kiírja hogy mit kell bele írni, ezért lett kicsit bonyolult de szerettem volna jól megcsinálni, de neki állok és újra írom mert ez max 100 sorba be kell férjen... persze már 30 sor a 3 nyelv mivel többnyelvű oldalakat gyártok.
  • biomage
    #14009
    Úgy látom neked is kell még mit tanulnod.
    Kipróbáltam a 2= jeles ötletedet és most semmi nem jön be.
  • MerlinW
    #14008
    Én általában az alt-ot használom ilyenekre.
  • MerlinW
    #14007
    $valami==empty($_GET['vmi'])

    Azaz == kell oda.

    Egyébként szerintem még nem tartasz ott hogy ilyeneket használj. Maradj a sima "if" szintaxisnál egyelőre:)
  • Dj Faustus #14006
    Egy adott elemnek adhatsz meg több osztályt is. Tehát például document.getElementById-vel vagy document.getElementsByTagName-mel lekéred a feldolgozandó elemeket, és megnézed, hogy milyen osztályba van sorolva az adott elem. Ha például req-ba, akkor megvan.

    Itt elmélkednek ilyesmiről
  • bracsek #14005
    A name általában foglalt az id sokszor foglalt javascript végett, a class meg mindig foglalt, mert valahogy kellene kinézzen az input, szóval épp az hogy ez egy általános formvalidátor, ami képes arra hogy mint c# ban van a hibás input kezelés úgy itt is szépen átalakítja a megfelelő képpen az inputot. És minden oldalon szeretném ezentúl használni, csak nem szeretném ezért a validitás kérdését szájba rúgni. Lehet az lesz hogy a form nak onsubmit mezőjét fogom felhasználni valid javascript kódként betéve mittom egy map ba beírom melyik mezőt hogyan kell validálni, talán ez lesz a legjobb megoldás.

    Próbáltam a dtd-t kibővíteni de inline amivel könnyen lehet hagy egy /> jelet vagy mit és hogy mindenűbe saját dtd-t tegyek az sem jó ötlet xhtml ben fogom ezt megoldani, majd html5 ig vár a végleges megoldás mert ott lehet majd saját tagokat is könnyen deklarálni. Ha jól emlékszem.
  • Cat 02 #14004
    name,id,class, mind foglalt ? :D
  • bracsek #14003
    Írtam egy jquerys form validátort, és kitaláltam hogy inputnak selectnek és textareanak és a formnak bevezetek egy req paramétert. ilyen értékekkel pl hogy req="onchange" req="onsubmit" ez a formnak és az inputoknak meg pl hogy req="email" vagy req="num,,3,,4" pl.

    Kérdésem az hogy ezt hogy lenne érdemes átalakítani érvényes xhtml dokumentumba illeszteni. Beírni a class végére valahogy? Vagy eventkezelő attributumnak betenni, vagy hogyan oldjam meg? Mert így faján működik csak nem valid és az xhtml-ben nincs olyan ami erre való lenne.
  • biomage
    #14002
    Na még két hülye kérdés, lehet belekötni -.-

    Jelenleg így néz ki a phpm

    valami.php
    <?$valami=empty($_GET['vmi']) ? 'board' : $_GET['vmi'];
    if ($valami==tema){include "include/tema.php"; echo tema();"<--- ez itt azért van mert a php tartalma amit includeoltam az function be van zárva"}?>
    A problémám, igaz ha csak simán ezt írom a böngészőbe hogy valami.php akkor betölti a boardot de ha ezt írom valami.php?vmi=hm <-- ez nincs a phpban igy if ($valami==hm){} de nem ugrik a boardhoz, ezt hogy lehet megcsinálni? ha nem szerepel ilyen GET kapcsolás akkor átirányitás

    Más
    Olyat lehet csinálni? hogy nyomok egy submitot és új lapra megy az üzenet amit kapok? például egy insert into php sor van és a végére kiírja hogy sikerült vagy nem, ez menjen egy új lapra, amin meg nyomtam a submitot maradjon ott ahol volt, gondolom nem :)

    Bracsek:ne hasonlíts kőhöz -.-
  • Cat 02 #14001
    De utálom, hogy működik, de mégse jó :D Érettségin meg lazán elfogadják.
  • bracsek #14000
    LoL. Magyarázzam a kőnek van gravitáció? hát nem.
  • Dj Faustus #13999
    Mint varázslónk (MerlinW) is mondta a megoldás CSS
    "Attribute "height" exists, but can not be used for this element: <table width="1024" height="491"..."
    A <table> tagnek nincsen height attribútuma.

    Szóval:
    <table width="1024" height="491">
    helyett
    <table style="width: 1024px; height: 491px;">

    "Attribute "background" exists, but can not be used for this element:
    <th height="150" background="kepek/hatter.jpg"..."

    A <th> tagnek nincsen background attribútuma.

    Vagyis:
    <th height="150" background="kepek/hatter.jpg">
    helyett
    <table style="height: 150px; background-image:url(kepek/hatter.jpg);">

    Mellesleg - ha lúd, legyen kövér - ha ez nem egy adattábla akarna lenni, javaslom oldalszerkezetnek ne használj táblázatot. Bővebben.
  • Voyager5
    #13998
    Jó, hogy a Doctypeokról van szó:)
    Jellemzően a doctype 2. sora egy hivatkozás, ami tulajdonképpen egy xml file, amely szépen félpíti a szabályokat az oldalra vonatkozóan.
    Ha ezt a doksit letöltöd és ismered az xml leírónyelvet, akkor láthatod, hogy miket adhatsz meg, milyen elemek miket tartalmazhatnak, mik a kötelező attribútumok stb.
    Ha felrúgod a doctypeod szabályait akkor invalid oldalt kapsz, mely akár a megjelenés rovására is mehet.
  • shubert
    #13997
    Hmm... átkozott validálás! :D Köszönöm a segítséget! Mindkettőtöknek! ;)
  • BEE LEE
    #13996
    Végre vkinek segíthetek!!!!!

    A válasz: kérdezd MerlinW-t! Ő biztos tudja!
    Remélem segítettem! :)
  • MerlinW
    #13995
    Hát úgy, hogy nem adhatsz meg. A titok nyitja: CSS

    /*osztály - többször használható*/
    .elso_tabla {
    height: 25px;
    width: 125px;
    background-image: url('./images/kep.jpg');
    background-repeat: no-repeat;
    }

    /*objektum - egyszer használható*/
    #masodik_tabla {
    height: 25px;
    width: 125px;
    background-image: url('./images/kep.jpg');
    background-repeat: no-repeat;
    }

    <table class="elso_tabla"></table>
    <table id="masodik_tabla"></table>

    -----------------------------------------------------------------------

    <td> elem variálása ojjektum alapján:

    table.harmadik_tabla tr td.elso {
    height: 25px;
    width: 125px;
    }

    <table class="harmadik_tabla"><tr><td class="elso"></td></tr></table>


    -----------------------------------------------------------------------

    vagy a sokat gépelős megoldás:
    <table style="width: 100px; height: 200px; background-image: url('./images/kep.jpg'); background-repeat: no-repeat;">
  • shubert
    #13994
    Sziasztok!

    A w3.org oldalon validálni szeretném a weblapom, de kiír pár hibát, amikkel nem tudok mit kezdeni.
    Pl.: Attribute "height" exists, but can not be used for this element: <table width="1024" height="491"...

    Attribute "background" exists, but can not be used for this element:
    <th height="150" background="kepek/hatter.jpg"...

    Elég érdekes. Mi az, hogy nem adhatok meg tábla magasságot, meg hátteret?!
    Dreamweavert használok és értek is a html-hez, de ez kifogott rajtam. Tudna valaki segíteni?
  • BEE LEE
    #13993
    eddig sem unatkoztam :)

    köszi
  • MerlinW
    #13992
    A miért és még tessék meg lássék

    Csak hogy tudjuk mit csinálunk:)
  • BEE LEE
    #13991
    a szerkesztést tekintve igazad van. Bár még semmi sincs benne a hátteren kívül. de majd ha kész lesz... :)

    Miért szúrjam be? egy csomó helyen azt olvastam (és láttam is), hogy nem kell. Állítólag e nélkül is tökéletesen működik! A véleményedre vok kíváncsi, nem lecseszésre :)
  • MerlinW
    #13990
    Tessék

    Mondjuk az oldal forrását tekintve éppen semmiben sem szerkesztesz:)

    Ezt szúrd be az oldalak legtetejére, ahol van <html> tag:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
  • MerlinW
    #13989
    HTML egy meta nyelv, amit a böngésző értelmez. A böngésző nyitja az oldalt, és ő is zárja be. Míg a target-et figyelmbevéve a böngésző új oldalt nyit, bezáráshoz már javascript kell, amivel a böngésző értelmezőjét "manipulálod".

    Megjegyzem, hivatalosan már XHTML-el sem nyittathatsz új lapot a böngészővel, miután nem létezik a "target" tag a szabvány szerint, azt is JS-el kell végeztetni (window.open). Persze, ha valid-ak akarunk lenni, ami nem árt. HTML 4.x pedig lassan már a múlté.

    Visszakanyarodva, a Javascriptet a böngésződ értelmezi, PHP, ASP, JSP stb kódokat pedig a szerver. A böngésző csak ezek kimenetét látja, amit elküldenek neki.
  • BEE LEE
    #13988
    a következő hülye kérdés: Ha HTML-be szerkesztek, betudok rakni div-et?

    köszi
  • Cat 02 #13987
    Ne okoskodj ha nem értesz hozzá.
    Egy word dokumentuba, hogy raknál bele egy bezáró tag-et, vagy html-be ? Amint megnyílik az oldal bezáródik ? Ha elmondják, hogy nincs és hülyeség, ne kezdj el okoskodni, hogy lehet, mikor NEM.
  • Flamer
    #13986
    mondom eddig müködött. van egy upload.php és kb ez a kód:
    http://pastebin.com/m34dddd7a

    ennyi. eddig ment. mostmeg 404.. és nem értem mi 404 neki..
    ha eddig ment most mi változott?
  • biomage
    #13985

    Ha logikusan megnézzük a HTML tagjait lehetséges egy oldal bezáró is.
    Van ugye új oldal nyitó "blank" aztán van átirányító mpre állítva "meta", akkor miért ne lehetne oldal bezáró logikusan?

    Futó program? ahhoz nem kell futó program hogy a HTML tudja mikor telik le a META-ban tárol idő?
  • Cat 02 #13984
    Nézd meg ott van-e. 404 az az, hogy nincs ott.

    Ám az engem is érdekelne, hogy framework-ot használata/elsajátítása mennyire ajánlott ? pl PHPcake, vagy ha dolgozni akarok vele (akár munkahely is később), akkor felesleges és raw code ?
  • QuippeR
    #13983
    codeigniter-t használ valaki? vélemény?
  • bracsek #13982
    Van olyan parancs PHPban vagy HTMLben ami bezárja az ablakot a böngészőben?

    ITT mivel be akartad záratni az ablakot, az meg már művelet amit egy documentum nem tud végre hajtani. ahhoz már futó program kell, remélem érzed mi a különbség a dokumentum és a futó program között.