KGigi Posted June 19, 2009 Posted June 19, 2009 Megnéztem a kódot, nem igazán értem, hogy minek komplikálod ennyire túl. Amúgy HTML elemeket teszel be a DTD elé! Csinálj egy login.php-t, ami önmagát hívja meg post-tal, a kód pedig ellenőrízze, hogy van-e ilyen felhasználó, ha igen, akkor a $_SESSION-be tedd be a felhasználónevet. Csinálj még egy logout.php-t, ami meghívja a session_destroy-t. Legyen egy loginellen.php, amiben a session_start van, ezt include-dal tedd be az összes oldal (a login, logout is) elejére. A $_SESSION-ben legyen egy változó, hogy be van-e jelentkezve. Ha igen, akkor hozzászólhat, a név pedig ott van a $_SESSION-ben, ha nem, akkor nem szólhat hozzá, csak vendégként böngészhet.
milleyemma Posted June 19, 2009 Posted June 19, 2009 Köszönöm a segítséged, tényleg nagyon segítõkész vagy, de ez a fórum, amit írtam, nem egészen így mûködik. De tényleg köszönöm.
KGigi Posted June 19, 2009 Posted June 19, 2009 Ez alapján szerintem akkor is menni fog. Hajrá! Ha gond van, itt leszünk.
payskin Posted June 20, 2009 Posted June 20, 2009 Igazából nem értem a problémát. Ha megoldottad azt, hogy ha valaki belép, akkor az n ideig belépve is marad, és mindezt egy cookie-ba lerakott infóból tudod, amit nyilván ellenőrizni kell minden oldalletöltésnél, akkor ugyanebbe a cookie-ba azt is lerakhatod, hogy hogy hívják az illetőt, aki belépett, és meg van oldva a probléma.
KGigi Posted June 20, 2009 Posted June 20, 2009 Uh, tényleg. De szerintem az én megoldásom akkor is sokkal egyszerűbb és áttekinthetőbb. Arról nem is beszélve, hogy a sütiket kézzel át lehet írni.
payskin Posted June 20, 2009 Posted June 20, 2009 Egyszerűbb, hogy szedjük szét a meglévő programot x+1 különböző részre csak azért, hogy megjegyeztessük vele a belépő nevét? Ha meg attól félünk, hogy valaki nekiáll kézzel cookie-t szerkeszteni, tároljuk el a név mellé a jelszót is, persze jól elkódolva, és akkor egyből megvalósítottuk az "Emlékezz rám" funkciót is, lásd ez a fórum.
KGigi Posted June 20, 2009 Posted June 20, 2009 Én biztosan szétszedném. Meg szerintem a négy kód együtt is rövidebb, mint amit Õ írt.
payskin Posted June 20, 2009 Posted June 20, 2009 Ez mind lehet igaz, de hogy nem egyszerûbb annál, mint hogy két helyen belejavítson a mostani kódjába kb. fél sort, az biztos.
Master_of_Puppets2 Posted June 27, 2009 Posted June 27, 2009 Az elképzelhetõ, hogy szerverprobléma, ha mindegyik echo() vagy print() függvényem meghívása után megjelenik még egy 1-es számjegy is?
Kiskalóz Posted July 13, 2009 Posted July 13, 2009 Az alábbi probléma megoldására kérnék ötleteket. Adatbázisban van egy menu tábla aminek egy aktiv oszlopa, aminek 2 értéke lehet 'i' vagy 'n'. Na egy while ciklussal iratom ki egy form-ban hogy tudjam az értékét változtatni. <input type=\"radio\" name=\"{$j_tomb['menu_id']}\" value=\"i\"> <input type=\"radio\" name=\"{$j_tomb['menu_id']}\" value=\"n\"> Kérdésem a következõ: Hogyan tudom felvinni az változtatott adatokat, ha a radio gomb name értéke dinamikussan változik.
arpsoft Posted July 13, 2009 Posted July 13, 2009 Készítesz egy másolatot a tömbről, a submit-ban meg összehasonlítod a kapott adatokkal. Vagy valamit rosszul értettem?
Kiskalóz Posted July 13, 2009 Posted July 13, 2009 Azt hiszem bénán fogalmaztam. Eddig ha adatot akartam felvinni, módosítani, tudtam azt hogy milyen adatot várok. PL: $adat1=trim($_POST['adat1']); $adat2=trim($_POST['adat2']); Update... oszlop1=$adat1, oszlop2=adat2.... Viszont most nem tudom hogy milyen adatokat írok ki mert a kiíratás is feltételekhez kötött. Valamint semmi nem garantálja, hogy minden ID (amire hivatkozok jelen esettben) meglesz. Mivel lehet törölt sor, vagy olyan ami nem felel meg a kiíratási feltételeknek. Tehát először meg kéne néznem hogy létezik-e az adat, majd ha igen akkor módosítani a táblában...
arpsoft Posted July 13, 2009 Posted July 13, 2009 Szerintem a legegyszerûbb az lenne, ha egy for each ciklussal végigszabnál a _POST tömbön és a változók nevébõl kiszednéd, hogy mit kaptál.
Kiskalóz Posted July 16, 2009 Posted July 16, 2009 Na akkor most azt nem tudom, hogy mit írjak a for each ciklusba a post tömbnek. Mivel a neve is változó. Form: <input type=\"radio\" name=\"{$j_tomb['menu_id']}\" value=\"i\"> <input type=\"radio\" name=\"{$j_tomb['menu_id']}\" value=\"n\"> Feldolgozás: foreach ($_POST['naidemitírjak'] as $x){ Update.... adat1=$x ..... }
arpsoft Posted July 16, 2009 Posted July 16, 2009 foreach ($_POST as $neve => $erteke) { echo "\$_POST[$neve] => $erteke.\n"; }
payskin Posted July 17, 2009 Posted July 17, 2009 Ez nem annyira tûnik célravezetõnek, ha több rádiógombos tömb is érkezik $_POST-ban!
arpsoft Posted July 17, 2009 Posted July 17, 2009 Mert? Kóddal generálja a vezérlõk neveit, nehogymár ne ismerje az algoritmust, ami a neveket készíti. Abból meg vissza lehet fejteni, hogy az mi is az adatbázisban.
Kiskalóz Posted July 17, 2009 Posted July 17, 2009 Konkrétan tökéletes lett. Köszönöm. és így: if(isset($_POST['jog_mod'])){ foreach ( $_POST as $kulcs => $ertek){ $sql=dbQuery("UPDATE menu_jog SET engedely='".db_up($ertek)."' WHERE menu_id='".db_up($kulcs)."' AND admin_id='".$_POST['user_id']."' "); } }
Master_of_Puppets2 Posted July 17, 2009 Posted July 17, 2009 Van ez a cukker PHP kódom: <?php switch ($_GET['s']) { case '1': switch ($_GET['sp']) { case '1': $f11=include_once("writings1.php"); print($f11); break; default: $w_def=include_once("writings.php"); print($w_def); } case '2': $f2=include_once("critique.php"); print($f2); break; case '3': $f3=include_once("gallery.php"); print($f3); break; case '4': $f4=include_once("news/display.php"); print($f4); break; case '5': $f5=include_once("security.php"); print($f5); break; case '6': $f6=include_once("beers.php"); print($f6); break; case '7': $f7=include_once("useful.php"); print($f7); break; case '8': $f7=include_once("contact.php"); print($f8); break; default: $def=include_once("default.php"); print($def); } ?> A bajom csak annyi vele, hogy amikor a ../?s=1&sp=1 URL-el meghívom a writings1.php nevû oldalt, akkor annak tartalmához hozzáveszi a critique.php-ban lévõt is. Hibaüzenetet nem ad, mûködik minden de miért adja még azt is hozzá? Mit hagytam le?
payskin Posted July 17, 2009 Posted July 17, 2009 A breaket a külső case '1': végéről? Az megvan, hogy ha a switch-case szerkezetben nem raksz breaket a case feltétel1 végére, akkor a végrehajtás automatikusan folytatódik a case feltétel2-n, akkor is, ha a switchben levő változó értéke nem felel meg feltétel2-nek? --- @arpsoft: ja, nem ez volt a problémám. Azt hittem, hogy a $_POST['akarmi'] értéke esetleg egy tömb lesz, azt meg nehéz echózni.
Master_of_Puppets2 Posted July 17, 2009 Posted July 17, 2009 A break a belsõ switch lefutása után megoldott mindent.
headcoach Posted July 23, 2009 Posted July 23, 2009 Helló! Olyan kódot keresek, amivel egy fájlban megkeres egy bizonyos részt és azt kitörli. Tehát el szeretném érni, hogy például egy div 3 napig bent legyen egy forrásban, aztán kitörlődjön a forrásból. Remélem van ilyen, bármilyen ötlet érdekel.
Garono Posted July 26, 2009 Posted July 26, 2009 Bocs, hogy csak most válaszolok, de azt hittem, hogy majd valaki hozzáértõbb tudja a (legjobb) megoldást. Én egy egyszerû include()-dal csinálnám, ami egy megadott idõpontig include-ol egy fájlt, utána meg nem. A fájl tartalma meg semmi más ne legyen, csak az az adott DIV. Szerintem nem túl bonyolult, de elképzelhetõ, hogy van még ennél egyszerûbb út is. (Tehát, a forrás eredetileg ne tartalmazza a DIV-et! Csak hívja meg, amíg szükség van rá.)
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now