22786
Html-, css- és php-help
  • MerlinW
    #19823
    Táblán belül az oldal alján ott az új mező hozzáadása.

    Én is csatlakozom az előttem szólóhoz, olyan szinten hiányoznak az alapok, hogy jobb ha feladod. Vagy keresel valakit, aki ért hozzá és megcsinálja neked, vagy elkezdesz belemélyedni az adatbázisok világába, de úgy nem ma vagy holnap lesz működőképes a dolgod.

  • Culram #19822
    Azt most nem tudom hogy ez csak egy sablon vagy nem:
    De a $_POST -nak szerintem így kellene kinéznie: $_POST['azonosító'].
  • SzirmosSzisza
    #19821
    +1. Ha ezt nem tudod megcsinálni, akkor egy darabig nem fogsz online játékot üzemeltetni.
  • Skynet85
    #19820
    Most tényleg nem bántásként, de ha lövésed sincs az adatbázis kezelésről, akkor inkább egy MySQL tutorialt nézz meg, aztán használj vmi GUI-s db kezelőt pl navicat, az sokat segít a tanulásban, meg nem kell consolban parancsokkal szívni.
  • 355
    #19819
    A #19800-ra valakinek ötlete?
  • sovatalevi
    #19818
    Hát de hogy?
    De,itt csak ahogy látod, C -betüig vannak oszlopok,mikor sokkal több kéne legyen,és azokat nem importálja.Meg nyitottam word-ba,hogy mi van benne,es sokkal több volt.
  • MerlinW
    #19817
    Csinálj hát egyet:)
  • sovatalevi
    #19816
    Az a gond,hogy olyan oszlop nincs,hogy logo,csak ezek vannak :

    `achievements` ,
    `airport` ,
    `alert` ,
    `alertlogs` ,
    `attempts` ,
    `ban` ,
    `bank` ,
    `banned` ,
    `betlogs` ,
    `betshop` ,
    `bf` ,
    `bflogs` ,
    `bidders` ,
    `bj` ,
    `block` ,
    `blockedemails` ,
    `boats` ,
    `boat_sell` ,
    `bswiss` ,
    `car_sell` ,
    `casinos` ,
    `chats` ,
    `credits` ,
    `crewb_log` ,
    `crewb_staff` ;
  • Culram #19815
    A 'logo' oszlop definícióját állítsd BLOB-ra.
  • laliking
    #19814
    hát itt megállt a tudás :D hátha jön valaki, aki okosabb nálam
  • sovatalevi
    #19813
    Azt tettem,importálam újra,de megint hibát ír ki,mégpedig:

    #1074 - Column length too big for column 'logo' (max = 255); use BLOB or TEXT instead
  • laliking
    #19812
    nem, nem, dehogy!
    phpmyadminban kiválasztod az adatbázisodat, majd baloldalt látni fogod a benne lévő táblákat. az előző hibaüzenetedből kiindulva kell hogy legyen legalább egy. egyesével töröld ki ezeket a táblákat, majd a .sql fájlodat importáld. egy "szűz" adatbázisban már nem lesz szabad ütköznie semmivel.

    a tárhelyeden lévő php, html, css és egyéb fájlokhoz ne nyúlj :)
  • sovatalevi
    #19811
    Tehát amit feltöltöttem,a tárheyre,azt is töröljem,és csak a mysql-ba importaljam azokat?
  • laliking
    #19810
    személy szerint azt ajánlom neked, hogy csupaszítsd le teljesen az adatbázist, aztán importáld. akkor nem lehet ütközés :)
  • sovatalevi
    #19809
    Van,mikor Importalni szeretném ezt írja ki :
    #1062 - Duplicate entry '40' for key 1
  • laliking
    #19808
    a fájljaid között nincs egy .sql kiterjesztésű? mert ha van, akkor azt kéne importálni phpmyadminban. vagy egyszerűen csak lefuttatni. annak a filenak kéne létrehozni a szükséges adatbázis struktúrát.
  • sovatalevi
    #19807
    Nem jött üzenet.MySQL-on megtaláltam,hol kell táblát csinálni,de nem tudom,hogy kell kitőlteni...
  • 355
    #19806
    Akkor 1értelmű a gond: nincs meg ez a tábla, és így nincs hova mentse a felhasználói adatokat.

    Ha nem tudod, hogy milyen mezőknek kell benne lennie, akkor az üres tábla létrehozása nem igazán segít.

    Telepítéskor nem jött valamilyen adatbázis-hibaüzenet? Mert az elég fura lenne, ha a telepítő anyagból kimaradt volna egy ilyen fontos elem.
  • sovatalevi
    #19805
    Igen,van MySQL adatbázis.Telepítve van az oldal,csak mikor regisztrálni kell,akkor irja ki ezt.
    Igen,van phpMyAdmin.
    Nem igazán tudom.Kész cucc.Csak nem akar müködni.
  • 355
    #19804
    1: van adatbázisod?
    2: milyen? (MySQL vagy valami más)?
    3: van admin felületed hozzá (pl. phpMyADmin)?
    4: tudod, hogy milyen mezőknek kellene benne lenni?

    Vagy valami kész cuccot akartok telepíteni?
  • sovatalevi
    #19803
    És azt hogy tudok csinálni?
  • 355
    #19802
    Asszem ezt félreértetted. Nem egy php file hiányzik, hanem az adatbázisból egy tábla, aminek a neve mafiastar.user_info és valószínűleg a felhasználóid adatait tárolná.
  • sovatalevi
    #19801
    Feltöltöttem egy üres .php fájlt,amikek az a neve,amit kért,de semmi.Mit kell beleírni?előre is thx
  • 355
    #19800
    Lehet, hogy jól érted :)

    A cURL most már követi a célt és nincs 301-es üzenet. De a cél, aki így figyel:

    if ( !empty ( $_POST )){
    // feldolgoz
    }
    else {
    // listáz
    }

    ...a form elküldése és megnyitás után csak listáz, mert a POSTot mindig üresnek érzékeli. Nem így kéne fogadnia az adatokat?
  • Malakai
    #19799
    Ha jól értem...

    Próbáld meg, hogy beállítod, hogy kövesse az átirányítást
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    Egyébként pedig a CURLOPT_POSTFIELDS elfogad array-t is, amit autómatikusan konvertál application/x-www-form-urlencoded-be, vagy multipart/form-data-ba.
    Ja és a CURLOPT_POST-nek elég egy true, ha csak akkor akarod elküldeni, ha van is mit, mivel egyébként booleant vár.
  • 355
    #19798
    Nem abban van. Az egyik domainen van egy php, ami összedob egy formot, aminek az actionje önmaga. Ha küldés van (!empty ( $_POST )), akkor hibaellenőriz, összedobja a cURL cuccot és küldi a másik domainre a feldolgozónak, ami adatbázisba ment, visszajelez.

    A feldolgozó is azt figyeli, hogy kap-e postot. Nem így kell?
  • MerlinW
    #19797
    Ööö ezt a másik oldalra kell tenned, nem a feldolgozóba:)
  • 355
    #19796
    Erre én is gondoltam, de csekkoltam és aktiválva van.

    Az or die eredménye sajnos ugyanaz, nincs hibaüzenet, csak a 301.

    cURL support enabled
    cURL Information libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5
  • MerlinW
    #19795
    Csináld így, hogy lásd lefut-e rendesen. cURL nem alapértelmezett PHP modul, lehet nincs aktiválva a szerveren.

    curl_init() or die(curl_error());
    curl_exec($ch) or die(curl_error());
  • 355
    #19794
    Köszönöm. Kellene még egy kis segítség.

    Most használtam először a cURL-t. Ezt a példát használva megírtam ezt, ami az első domainre került:

    if ( empty ( $_POST )){
    // create form and show
    }
    else {
    $url = "http://www.2ndsite.com/f2.php";
    $fields = array();
    foreach ( $_POST as $pk => $pv ){
    $f = urlencode ( $pk );
    $fields[] = $f;
    $fields_string .= $f . "=" . $pv . "&";
    }
    $fields_string = substr ( $fields_string, 0, -1 );

    //open connection
    $ch = curl_init();

    //set the url, number of POST vars, POST data
    curl_setopt( $ch, CURLOPT_URL, $url );
    curl_setopt( $ch, CURLOPT_POST, count ( $fields ));
    curl_setopt( $ch, CURLOPT_POSTFIELDS, $fields_string );

    //execute post
    $result = curl_exec ( $ch );

    //close connection
    curl_close ( $ch );
    }

    Az eredmény: a fogadó script nem kapja meg az adatokat, a fenti kód futása után a böngészőben 301 - Moved permanently hibaüzenet jelenik meg, és a hibaüzenetben a fogadó php file-ra (a fenti $url) mutató link van.

    Mit csinálok rosszul?
  • MerlinW
    #19793
    - A cross-domain dolog biztonsági okokból nem megengedett. Olyat tudsz csinálni, hogy iframe-ben betöltöd a feldolgozót és a formos részben
    AJAX hívással küldöd el a paramétereket.
    - Másik megoldás a cURL használata
    - Harmadik megoldás a címsoros GET-es megoldás. Ha nincs sok form adat, titkosítva elküldheted őket, amit a másik oldalon visszafejtesz.
  • 355
    #19792
    'reggelt!

    El kellene küldenem egy HTML form tartalmát a saját domainem alól egy külső szervernek. Mivel a végső feldolgozó script adva van, azzal nem gyakorolhatok.

    Csináltam egy tesztet két saját domainem között. Az egyikre a form került, a másikra a php feldolgozó script. A feldolgozó lényege így néz ki:

    if ( !empty ( $_POST )){
    // feldolgoz
    }
    else {
    // listázza a beérkezett eredményeket
    }

    A gond az, hogy ha posttal küldöm az adatokat, akkor mindig listáz, mert a $_POST üres, ha gettel (és átírom, hogy azt figyelje), akkor rendben működik.

    Próbáltam lecserélni az !empty-t issetre, de akkor postnál csak üres sorokat ment az adatbázisba, gettel akkor is működik.

    Nem lehet posttal átküldeni az adatokat?
  • Skynet85
    #19791
    Tudok, most indul csak a project.
  • MerlinW
    #19790
    Ubuntu esetében arra figyelj, hogy LTS-t használj. 10.04-et, vagy ha tudsz várj egy hetet, 26.-án jön a 12.04 LTS szerver. LTS a long time support, ami 5 év támogatást jelent, míg a köztes kiadások csak 3 évet kapnak. Persze ettől függetlenül telepíthetsz 11.10-et is, csak azt majd 2014-ben frissíteni kell 14.04-re
  • Skynet85
    #19789
    Meggyőztél, ubuntu lesz, ahhoz úgy is van kis millió doksi neten, nah meg nem nasa projekt lesz, hanem csak egy webszero+mysql+java, tudom hogy már írtam de akkor most tőled személyesen is kérdezem nincs egy tuti forrásod amire te is esküszöl és apache+php finomhangolásról szól különféle igényeknek megfelelően és persze a biztonság is szempont.
  • MerlinW
    #19788
    Ha mindenképpen Redhat-ot szeretnél, akkor CentOS. Én azonban az Ubuntu Servert vagy Debian-t ajánlom, több vállalati szerveren is használom, egy rossz szavam sincs rájuk. No meg, debian a alapú rendszerek sokkal kényelmesebbek.
  • Skynet85
    #19787
    A hiba szerint a 'mafiastar.user_info' adat tábla nem található az adatbázisban, ez ellen azt tudod tenni hogy megnézed valóban nincs-e meg 99% hogy valóban nem lesz meg majd meg kell keresni az okát miért nincs a legtriviálisabb, hogy ugyan az adatbázis létezik, de a táblák nem...
  • sovatalevi
    #19786
    Sziasztok.Indulo online-jatek weboldalunk a kovetkezot irja ki :

    Table 'mafiastar.user_info' doesn't exist ,es feher lap.


    Mit lehet tenni,hogy ez el tunjon?
  • Skynet85
    #19785
    yep utána néztem igazad van, mostanság csak desktop van Fedorából, viszont van egy RedHat teljes ref könyvem, ami vszeg jó lesz Cent os-hoz is, ezért lehet bepróbálom azt, és ha már itt tartunk, nincs vkinek egy jó apache+php konfigos oldal linkje, könyv címe, stb, nem a telepítés a lényeg, hanem a finom hangolás...
  • Voyager5
    #19784
    Szerintem tulképp tökmindegy.

    Fedoraból tudtommal csak desktop van, az ingyenes red hat server azthiszem a centOS. (Ha nem akkor majd valaki kijavít :) )
    Ubuntuval van talán a legkevesebb szívás eddigi csekély tapasztalataim szerint.