22786
Html-, css- és php-help
  • Max7
    #532
    magyar amit adtam!
  • bazza
    #531
    domainem már van, és vmi erősebb hosting kéne...egy neveldét akarunk rárakni, az előző helyről(dataglobe.hu) azért tesznek ki minket mert túlságosan terheljük őket. Szóval nem csak ilyen kis html oldalacskára kéne ám! :)
  • bazza
    #530
    kösz, de magyar kéne!
  • Max7
    #529
    server vagy web ? nem mindegy!

    webhosztingnak ajánlom a cyberserver.hu-t nagyon fain áraik vannak :) csak okoskodni kell :) veszel tőlök domaint külön és külön tárhelyet! ne egybe vedd mert úgy egy évre 20e külön meg megúszod 6e-ból (2év domain fentartás + domain név + 1giga tárhely) hivatkozz rám!
  • Vorpal
    #528
    bazza : http://top10webhosting.com/ a legjobbak

    srácok lűtnotok kéne a 10 perces verzióját a könyvnek,)) nemhinnétek el de minden benne van sőt sokkal praktikusabban irja a php t le pl hogy a formokkal gyakorlatilag hogy kell bánni hogykell fieldenként mit ellenőrizni ami abból a bazi 24 órásból hiányzik .szal praktikusabb mint tételesebb. ajánlom ezt is
  • bazza
    #527
    tudnátok mondani pár hostingszolgáltatót a jobbak közül?
  • Max7
    #526
    egy kis basic ismeretem van hozzá de szerintem a php24 ora alatt eléggé jó igaz hogy hiányos mert nagyon sok dolog miatt máhova kell néznem! nagyon sok fügvényt nem tartalmaz :(
  • Dj Faustus #525
    <a href="setup.exe">Cuccos letöltése</a>
    Értelemszerűen a setup.exe helyére írandó a letöltendő file neve, elérési úttal együtt - pl ha a file egy down könyvtárban van, akkor a kód <a href="down/setup.exe">Cuccos letöltése</a> módon megváltozik.
  • martin3
    #524
    hy!mi a parancsa(html-ben)a letöltésnek,mármint annak amivel vki le tudja szedni azt a cuccost amit én felrakok!please help már csak ez kell az oldalamhoz
  • cSuwwi
    #523
    a php24 óra alatt eldarálja a tömören, de ha előtte semmit se konyítottál hozzá (se pascal se semmilyen előképzés), akkor utána igensokat fogod olvasgatni.
    a guru szó meg 1 hét után kicsit erős lenne... én idestova 4-5 éve phpzom, és még koránt sem merem magam semmilyen gurunak mondani (még jó :P), pedig minden nap ezzel foglalkozom, meg ebből van pénzem is. :| (mondjuk az is igaz, hogy én autodidakta módon tanultam, a php24 óra alatt, meg a php könyveket csak ~1 éve láttam előszőr, és nélkülük is meg bírtam tanulni)
  • Max7
    #522
    a php 24 óra alatt megvan E-bookba a felét ki is nyomtatam meg el is olvastam már :) patront kéne vennem :) most jön a 12-es lecke és az pont a msql aszem :)
  • Vorpal
    #521
    Veszel könyvet 1 iselég . ittvan amit én vettem PHP 24 óra alatt de van olyanom is, hogy 10 perc alatt a jenkiknél csapattam hozzá és sztem minden php könyvet überel.Eccer megveszed lefexel és okos dolgok helyett ezt tanulod laza 1 hét és php guru vagy.Magyarul a kiskapunál vagy mi lehet venni ezeket, 1 elég nemkell több csak ugyanaz fűzik.
  • Max7
    #520
    PhpAdsNew-hoz ért valaki? csak mert adodott egy kis gondom! ha beillesztek egy html kodot akkor nem számolja az átkatintásokat csak a megjelenést de ha egy egyszerű gifet helyezek el akkor annál számolja! ez bug benne vagy csak nekem ilyen xar? :S
  • Max7
    #519
    eddig nem igazán értettem a mysql-t de most tanultuk az ecdl miatt az access kezelését és valamilyen szinten átlátom már csak a fügvényeket kell megtanulnom!

    Az a gond hogy több leirasom van csak mind gepen es kb 2 oldal utan elkezd fajni a fejem ha bamulom a monitort szal majd kinyomtatom csak ahoz meg patron kell :(
  • cSuwwi
    #518
    Nem kell parázni, könnyen tanulható (mondjuk az online helpje a php manualhoz képest fullszar).

    Egy kapcsolatfelépítést tanulj meg, meg az alap parancsok használatát/lekérdezéseket és menni fog.
    (SELECT, UPDATE, DELETE, INSERT IGNORE INTO) ill. mysql_query(); meg mysql_fetch_array, számokhoz meg mysql_num_rows és hali.
    Később majd ha bonyolultabb lekérdezéseket fabrikálsz (több táblás, vagy subquery-ket, akkor bonyolíthatod)
    A dromnál (kis oldalam), is van jópár 4-5-6 soros lekérdezés, amit kitalálni sem egyszerű, de jobb mint 3-4 lekérdezésből összefabrikálni... ^^
  • Max7
    #517
    pff :)

    na jó akkor script irás leáll és mysql tanulás 1000-rel :)
  • Vorpal
    #516
    Pedig nem,)
    Én már a kislégy kedvéért is a mysql hez nyulok ez oan kellemes mintha magamhoz nyúlnék,) gyors eccerü és könnye organizálható
  • Max7
    #515
    pedig de :)
  • cSuwwi
    #514
    hát...
    remélem nem gondoltad komolyan hogy 10 ezres tételeknél txt-zni fogsz D:::
  • Max7
    #513
    tehát a válasz akkor: tanuljam meg nagyon gyorsan a sql-t használni? :)
  • cSuwwi
    #512
    én idestova 4-5 éve phpzok (kezdetben énis geek voltam, txt-k meg hasonló megoldásokkal szenvedtem, aztán rászántam magam a mysql-re, és bizony sokkal könnyebben kezelhető, nemkell ilyen 50 soros txt buzeráló scripteket írogatni)
    mondjuk én autodidakta módon tanultam a phpt, semmilyen könyvem se volt, csak nézegettem a manualt, meg mások kódjait és belejöttem :D

    az infómban ott az oldalam linkje, meg lehet ítélni mennyire megy. :D
  • cSuwwi
    #511
    az sql-nek pont ez a lényege, hogy adatbázisként kezelve, többezres számokkal lehessen operálni.
    txtknél folyamatosan nő a méret, így egyre lassabb lesz a feldolgozás, sqlnél meg célzott lekérésekkel, és egyéb optimalizációval gyorsabb. txtkkel max. kis számonál érdemes fogalkozni, ahol még nincs lassulás (<1000 adat)

    az 1500 tagos hírlevél egy 2mbites bérelt vonalas szerveren csücsül, (mert hülyék, na mindegy), kb. 1 óra alatt ért ki mindegyik levél (mert lassú meg korlátozva is van a levélszám)
    nem saját szervernél (étsd. béreled vhonnan) meg egyéb korlátozások is lehetnek, az egyszerre küldhető levelek számát illetően.
  • Max7
    #510
    tul képpen én is találtam már 10-15 ilyen megirt scriptet csak sajátot szeretnék mert a jövőben nem fogok boldogulni! még az belefér hogy itt kérek segítséget ha már végkép elakadtam mert valamilyen szinten átlátom és meg is értem a lényegét!
  • Max7
    #509
    saját tárhelyem van saját domainal ahol nincs semmi korlát csak tárhelyileg (1giga) no meg aszem van valami méretbeli sql korlát.

    Az a bay hogy 4 hónapja kezdtem el a php-t tanulni komolyan! És bevalom őszintén hogy a sql-ről egy mukkot se tudok ezért gondoltam fájlredszer emgoldásával!

    Kérdés: mennyire terheli a servert az ha fájlrendszerel oldaom meg és kb 10e-res e-mail számról van szó és mennyire terheli a sql servert ha mindezt sql-be oldaom meg?
  • cSuwwi
    #508
    én ís írtam már komplett hírlevél rendszert (mondjuk nem magamnak, hanem más oldalakhoz), szöveges fájlokkal csak szenvedés. 1500 nevet txt-kben durva, adatbázist aláteszel és használod (mysql már szinte minden ingyenes helyen is van), az más kérdés hogy nemfogsz többszáz levelet kiküldeni onnan, mert nem engedik...
  • Max7
    #507
    az ott van csak lemaradt:

    $file = ("newsmail.dat");

    ez van megadva legelőször :)
  • cSuwwi
    #506
    a $fp-kre ad hibát. "not a valid stream resource" akkor van, ha a használni kívánt fájllal van valami bibi, jelen esetben $fp = fopen($file, "w"), amiből a $file-t ami a megnyitandó fájl nevét tartalmazá seholsem látom...
    abszolút címzéssel az elejére, és jólesz

    pl. $file = "/usr/home/web/dchelp.hu/hirlevel/file.txt";

    amúgy megint túl van bonyolítva, de ha működik, akkor ígyisjó, csak kódoptimalizációval gyorsítható, etc
  • Max7
    #505
    igen olvashatóbb és látom hol a kod és hol az irásod! baszta a csöröm és beraktamazt a sort! tuti valamit átirtam amit nem kellet volna mert hibákat ir ki :_(!
    konkrétan ezt:

    Warning: fclose(): 3 is not a valid stream resource in /usr/home/web/dchelp.hu/hirlevel/work.php on line 77

    Warning: fwrite(): 3 is not a valid stream resource in /usr/home/web/dchelp.hu/hirlevel/work.php on line 74

    Warning: fclose(): 3 is not a valid stream resource in /usr/home/web/dchelp.hu/hirlevel/work.php on line 77

    74; 77. sor:
    fwrite ($fp, $db[$i]."\n");
    fclose($fp);

    ez egy kódrészlet a hirlevél scriptemből (leiratkozás rész) nem tom hol a hiba :( (elötte nagyon bonyolultan oldaotam meg de ott minden müködik rendesen!


    #Ha a leiratkozásra klikkelnek
    elseif ($downwrite == "Leiratkozás")
    {
    # Ha lépteik a fájl megnyitja olvasásra
    if (file_exists($file))
    {
    # Beolvassuk a fájlt egy tömbe
    $db = @file($file);
    $megvan=0;
    # Ahány sor van annyiszor nézi végig
    for($i=0; $i<count($db); $i++)
    {
    #Kocsivissza jel kiiktatása
    $db[$i]=str_replace("\r","",$db[$i]);
    #Soremelés jel kiiktatása
    $db[$i]=str_replace("\n","",$db[$i]);
    # Ha megvan
    if ($db[$i] == $email)
    {
    # Törli
    $db[$i]=str_replace($db[$i],"",$db[$i]);
    #...és jelezzük hogy megtaláltuk
    $megvan++;
    # Ha megtalálta amit keresett kilép a ciklusból
    continue;
    }
    }
    # Ha nincs meg
    if ($megvan==0) {
    # Kiirjuk
    print ("Nem található a(z) ".$email." E-mail cím!");
    }
    else {
    # Megnyitja a fájlt felülirásra
    $fp = fopen($file, "w");
    # Ahány sor van, annyiszor végignézi
    for($i=0; $i<count($db); $i++)
    {
    //Ha nem üres a tömb eleme...
    if ($db[$i] != "") {
    if ($i == (count($db)-1)) {
    # Kiírja
    fwrite ($fp, $db[$i]."\n");
    }
    # Zárja a fájlt
    fclose($fp);
    }
    }
    }
    }
  • Dj Faustus #504
    Semmi gond.
    (Lehet hogy ez a courier betűtípus olvashatóbb, mint a dölt, szóval inkább ezt használom.)
  • Max7
    #503
    baxa meg mostmár!

    bocsánat

    kihagytam valamiért azt a sort vagy töröltem a tököm se tudja fáradt vok naon :( és mostmár a fejem is fáj :(

    sorry tényleg holnap megcsinálom és nyilatkozok rolla hogy szuperál!

    bocsi még 1x
  • Dj Faustus #502
    <?php
    $bemenet = $_POST["mezo"]; //A mezo-nak elnevezett beviteli mező lekérése

    $wordsfile = "xxx.txt"; //A szavak listája
    $db = @file($wordsfile); //Beolvassuk egy tömbbe, ha megnyitható
    if (!$db) { return; } //Ha nem nyitható, akkor csókolom

    $megvan=0;
    for($i=0; $i<count($db); $i++) { //Ahány sor van, annyiszor végignézi
    $db[$i]=str_replace("\r","",$db[$i]); //Kocsivissza jel kiiktatása
    $db[$i]=str_replace("\n","",$db[$i]); //Soremelés jel kiiktatása
    if ($db[$i] == $bemenet) { //Ha megvan...
    $db[$i]=str_replace($db[$i],"",$db[$i]); //...kitöröljük...
    $megvan++; //...és jelezzük hogy megtaláltuk.
    }
    }

    if ($megvan==0) { //Ha nincs meg...
    print ("Nem található a(z) ".$bemenet." szó!"); //...jelezzük
    } else {
    $handle = fopen($wordsfile, "w"); //Megnyitjuk az állományt felűlírásra
    for($i=0; $i<count($db); $i++) { //Ahány sor van, annyiszor végignézi
    if ($db[$i] != "") { //Ha nem üres a tömb eleme...
    if ($i == (count($db)-1)) {
    fwrite ($handle, $db[$i]);
    } else {
    fwrite ($handle, $db[$i]."\n"); //...kiírjuk
    }
    }
    }
    fclose($handle); //Lezárjuk az állományt
    }
    ?>

    Ennél a kódnál a if ($db[$i] != "") { //Ha nem üres a tömb eleme... sor akadályozza meg, hogy üres tömbelemet írjunk ki. Ha van benne egy space, vagy egy tab akkor, viszont kiírja!

    A $db[$i]=str_replace($db[$i],"",$db[$i]); sornál a gondolatjelek között nincs szóköz! (Ugyanez igaz a $db[$i]=str_replace("\r","",$db[$i]); és a $db[$i]=str_replace("\r","",$db[$i]); részekre is!)

    Miért nem lehet ezen a fórumon rendesen - bekezdésekkel tördelt - forráskódot idézni...
  • Max7
    #501
    nem az utcsó sort :) a közepén kitörli a szót és otthagy egy üres sort :)
  • Dj Faustus #500
    A legutóbbi kódot használtad?
    Hol hagy üres sort? A legutolsó sornál? Máshol nem hagyhat...
    Akkor módosítsd ezt a sort:
    fwrite ($handle, $db[$i]."\n"); //...kiírjuk

    Erre
    if ($i == (count($db)-1)) {
    fwrite ($handle, $db[$i]);
    } else {
    fwrite ($handle, $db[$i]."\n"); //...kiírjuk
    }

    Ha az utolsó sort írja, akkor nem fog sorvége jelet kirakni.
  • Max7
    #499
    na mostmár csak egy apró hiba :) az üres sort is otthagyja!
  • Max7
    #498
    köffi akkor nekiesek újból :)
  • Dj Faustus #497
    Karrdél!
    Na most foglalkozzunk a te problémáddal:
    a te esetedben a varázsszó: az oldalon belüli "könyvjelző".
    Ilyet a hiperlinkek létrehozására alkalmas <a> tag name attribútumával tehetsz meg.

    Tegyük fel, hogy van egy dokumentumod, amiben könyvjelzőket akarsz elhelyezni. Nevezzük content.htm-nek. Lásd az alábbi kódrészletet:
    <!-- content.htm -->
    <h2><a name="bev">Bevezető</a></h2>
    <p>Ide kerűl a bevezető tartalma...</p>
    <h2><a name="elso">1. fejezet/a></h2>
    <p>Ide kerűl az első fejezet...</p>
    <h2><a name="masodik">2. fejezet</a></h2>
    <p>Ide kerűl a második fejezet...</p>

    Mint láthatod, a name attribútum határozza meg a "könyvjelzőkett" (bev, elso, masodik) a dokumentumon belűl.

    Tegyük fel, hogy a tartalomjegyzék egy toc.htm elnevezésű állományban van. Ennek a kódrészlete így néz ki:
    <!-- toc.htm -->
    <p><a href="content.htm#bev">Ugrás a bevezetőre</a></p>
    <p><a href="content.htm#elso">Ugrás az 1. fejezetre</a></p>
    <p><a href="content.htm#masodik">Ugrás a 2. fejezetre</a></p>

    Mint látható, a kettőskereszt (#) után szerepel a könyvjelző neve.

    De tegyük fel, hogy ezt az egészet egy oldalon szeretnéd látni. Ebben az esetben a legegyszerűbb megoldás a frameset használata:
    <frameset rows="*" cols="200,*">
    <frame src="toc.htm" name="leftFrame" id="leftFrame" title="leftFrame" />
    <frame src="content.htm" name="mainFrame" id="mainFrame" title="mainFrame" />
    </frameset>

    Ez egy külön állományban foglal helyet.

    Ha frameset-et használsz, a toc.htm a következőképp módosul:
    <!-- toc.htm -->
    <p><a href="content.htm#bev" target="mainFrame">Ugrás a bevezetőre</a></p>
    <p><a href="content.htm#elso" target="mainFrame">Ugrás az 1. fejezetre</a></p>
    <p><a href="content.htm#masodik" target="mainFrame">Ugrás a 2. fejezetre</a></p>

    Az <a> tag target attribútuma gondoskodik arról, hogy a másik frame-ben jelenjen meg a tartalom.

    Bővebben ezekről itt, illetve itt olvashatsz.
  • Dj Faustus #496
    Ki. Ugyanis nagyon dühített, hogy ilyen vackok miatt nem működött a kód.
  • Max7
    #495
    ezt kiprobáltad? csak mert mire az előzőben átirogatam a tömböket a saját kis scriptemhez meg átalakítottam egy picit addigra kifolyt a szemem :)
  • Dj Faustus #494
    És még egy kis finomítás: mivel az unset() függvény nálam furcsa módon a keresett kifejezés után is törölt, ezért helyette az alábbi megoldást javaslom:
    $db[$i]=str_replace($db[$i],"",$db[$i]);

    Ez csak törli a tömb adott értékét, ezért a kiírásnál a következő módosítást javaslom:
    if ($db[$i] != "") {
    fwrite ($handle, $db[$i]."\n"); //Kiírjuk
    }

    Tehát csak akkor írunk, ha nem üres a tömb eleme.

    Így a végleges kód a következő lesz:
    <?php
    $bemenet = $_POST["mezo"]; //A mezo-nak elnevezett beviteli mező lekérése

    $wordsfile = "xxx.txt"; //A szavak listája
    $db = @file($wordsfile); //Beolvassuk egy tömbbe, ha megnyitható
    if (!$db) { return; } //Ha nem nyitható, akkor csókolom

    $megvan=0;
    for($i=0; $i<count($db); $i++) { //Ahány sor van, annyiszor végignézi
    $db[$i]=str_replace("\r","",$db[$i]); //Kocsivissza jel kiiktatása
    $db[$i]=str_replace("\n","",$db[$i]); //Soremelés jel kiiktatása
    if ($db[$i] == $bemenet) { //Ha megvan...
    $db[$i]=str_replace($db[$i],"",$db[$i]); //...kitöröljük...
    $megvan++; //...és jelezzük hogy megtaláltuk.
    }
    }

    if ($megvan==0) { //Ha nincs meg...
    print ("Nem található a(z) ".$bemenet." szó!"); //...jelezzük
    } else {
    $handle = fopen($wordsfile, "w"); //Megnyitjuk az állományt felűlírásra
    for($i=0; $i<count($db); $i++) { //Ahány sor van, annyiszor végignézi
    if ($db[$i] != "") { //Ha nem üres a tömb eleme...
    fwrite ($handle, $db[$i]."\n"); //...kiírjuk
    }
    }
    fclose($handle); //Lezárjuk az állományt
    }
    ?>

  • Dj Faustus #493
    Azért nem találja, mert a file beolvasásakor, beolvassa a file végén lévő sorvége/kocsivissza jeleket is. Mivel az nem egyezik a sorvége/kocsivissza jel nélküli, a form-ból beadott szöveggel, nem találja sehol.

    Például az xxx.txt tartalma a következő:
    alma
    barack
    cseresznye
    dinnye

    Mindegyik sor végén (a dinnye után is!) ott van egy új sor (\n), és Windows esetén egy kocsivissza (\r) jel.
    Ha a beviteli mezőbe beadod a cseresznye szót (így sorvége-jel nélkűl), mivel a cseresznye nem fog megegyezni a cseresznye\r\n vagy cseresznye\n kifejezéssel, a szkript nem talál!

    Tehát, mielőtt cserére kerűlne a sor, ki kell törölni ezeket a huncut jeleket:
    $db[$i]=str_replace("\r","",$db[$i]);
    $db[$i]=str_replace("\n","",$db[$i]);

    ezt a két sort a if ($db[$i] == $ bemenet) { //ha megvan... elé rakd.