Pozoki Posted August 24, 2005 Posted August 24, 2005 Kaptam egy egy PHP-s kódot, de nem jó valami miatt, nem tudjátok mi miatt? <?php //ez lekerdezi az ip cimet az ip valtozoba $ip = getenv("REMOTE_ADDR"); //beallitod a fajl nevet $fajlneve = "ipcimek.txt"; // Megnyitod a fajlt irasra (ha letezik a fajl akkor ujrairja) if(!$fd = fopen($fileneve, "w")) { echo("Hiba a megnyitas soran."); exit; } //kiirod az ip cimet a fajlba, ha sikerul if(!fwrite($fd, $ip)) { echo("Hiba tortent iras soran!"); exit; } //vegul bezarod a fajlt fclose($fd); ?>
google Posted August 25, 2005 Posted August 25, 2005 A txt-fájl jó helyen van? Egy mappában a php-vel?
ocsi Posted August 25, 2005 Posted August 25, 2005 Szûkítsd a hiba lehetséges helyét: Egy egyszerû print el irasd ki az IP-t, hogy lássuk, az megvan-e!
Pozoki Posted August 25, 2005 Author Posted August 25, 2005 Mikor ki próbáltam akkor azt írta hogy "Hiba a megnyitás során."
arpsoft Posted August 26, 2005 Posted August 26, 2005 Akkor szolgáltatód nem engedi az ilyen szintû fájlmûveleteket!
ocsi Posted August 26, 2005 Posted August 26, 2005 Esetleg Atributum módosítás? Nekem egyszer volt ebbõl galibám, talán a fw-nél... de miután beállítottam a szövegfile-nak, hogy bárhonnan lehessen írni és olvasni.. azután ment!
Mezofi Posted August 29, 2005 Posted August 29, 2005 Szerintem is, a Total CMD >> Fájl megnyitás >> Attribútumok módosítása. Itt át tudod állítani a txt fájl-t, hogy írhassad! Különben hibát fog jelezni.
Pozoki Posted August 29, 2005 Author Posted August 29, 2005 (edited) Hiba! Semmit sem ért! Edited August 30, 2005 by tzoli
ocsi Posted August 30, 2005 Posted August 30, 2005 (edited) Hát így mi sem értünk semmit... És így segíteni sem tudunk... :!: Edited August 30, 2005 by tzoli
Mezofi Posted August 30, 2005 Posted August 30, 2005 Kedves Pozoki! Ez a probléma amivel te találkoztál tipikus esete annak, ha máshonnan vett scriptet szeretnénk úgy átültetni a saját lapunkra, hogy abszolut nincs fogalmunk a változók használatáról! Ha mégegyszer átolvasod a scriptedet rájössz, hogy egy nem létezõ fájlt próbálsz megnyítani írásra. Ugyanis az ipcimek.txt -t nem ugyanabban a változóban tárolod mint amit megadsz írásra. Ha ezt esetleg átírod, akkor nálad is fog mûködni, én kipróbáltam nálam mûködött! $fajlneve = "ipcimek.txt";// Megnyitod a fajlt irasra (ha letezik a fajl akkor ujrairja) if(!$fd = fopen($fileneve, "w")) Magyarul a $fajlneve nem ugyanaz mint a $fileneve. Errõl a gép nem tehet!
ocsi Posted August 30, 2005 Posted August 30, 2005 Jah.. nemártott volna ezt elolvasni.. Nekem nem volt hozzá hangulatom...
Pozoki Posted August 31, 2005 Author Posted August 31, 2005 Tényleg ez volt a bibi, még régebben írtam egy vandégkönyvet és ezt meg nem vettem észre !!! Még egy gondom van, nem a felhasználó ip-jét hanem a Serverét menti !
Mezofi Posted September 1, 2005 Posted September 1, 2005 @Pozoki Azért azt szeretném megkérdezni, hogy milyen megfontolásból szeretnéd tárolni az éppen aktuális IP címeket? Az rendben van, hogy a saját gépednek helyi hálózaton belül adsz egy IP címet, de azt tudod-e, hogy az Internetre csatlakozáskor a szolgáltatódtól kapsz egy véletlenszerû IP címet, amely a megszakításkor semmivé lesz. Ezenkivûl ha sok ideig vagy a hálón a szolgáltató akkor is bizonyos idõ elteltével lecseréli az IP címedet, mindezeket azért mert nem akar fix IP címet biztosítani számodra. A fix IP címet vásárolni kell általában server üzemeltetés céljából! Így tehát az IP cím elraktározása pusztán arra alkalmas, hogy véletlen számokat raktározzál el, ha ezt szeretnéd, akkor ajánlom találj ki véletlen számokat és írd be a txt fájlba, persze ez ídõigényes de gyorsabb. Ha viszont a látogató azonosítása a cél akkor használj sütiket, persze annak hogy a látogató ezek használatát engedélyezi kb 55%, de még mindig jobban lehet azonosítani evvel a módszerrel mint az IP címmel ahol kb 0%.
Pozoki Posted September 1, 2005 Author Posted September 1, 2005 De ha még értelme sincs akkor is, meglehet csinálni ?
Mezofi Posted September 1, 2005 Posted September 1, 2005 Mindent meg lehet csinálni! A te scripted a felhasználó IP címét írja ki, nem tudom honnan vetted hogy a server címét mutatja. Itt egy script ezzel megbizonyosodhatsz róla: <?php print("Ez a te IP címed:<br>".$_SERVER['REMOTE_ADDR'] . "\n\n"); print("<br>Ez a SERVER IP cím:<br>".$_SERVER['SERVER_ADDR'] . "\n\n"); echo phpinfo();?> "Apache Environment" itt keresd.
Pozoki Posted September 3, 2005 Author Posted September 3, 2005 Most nem igazán értem, ha az én IP-m van kiírva, akkor miért nem stimmel a Windows-ban lévõvel ???
Mezofi Posted September 3, 2005 Posted September 3, 2005 Légyszíves újra olvasd el az utolsó elötti hozzászolásomat. Kb. ott ahol kifejtettem, hogy csatlakozáskor a szolgáltatódtól kapott IP címmel kerülsz fel a netre, és nem a sajátoddal!
ocsi Posted September 3, 2005 Posted September 3, 2005 Ez is benne van abban a hozzászólásban... De lehet.. és úgy hívák, hogy FIX IP és fizetni kell érte!!!
jamborka Posted January 8, 2006 Posted January 8, 2006 Kaptam egy egy PHP-s kódot, de nem jó valami miatt, nem tudjátok mi miatt? <?php //ez lekerdezi az ip cimet az ip valtozoba $ip = getenv("REMOTE_ADDR"); //beallitod a fajl nevet $fajlneve = "ipcimek.txt"; // Megnyitod a fajlt irasra (ha letezik a fajl akkor ujrairja) if(!$fd = fopen($fileneve, "w")) { echo("Hiba a megnyitas soran."); exit; } //kiirod az ip cimet a fajlba, ha sikerul if(!fwrite($fd, $ip)) { echo("Hiba tortent iras soran!"); exit; } //vegul bezarod a fajlt fclose($fd); ?> $ip = getenv("HTTP_X_FORWARDED_FOR "); ehelyett -->> $ip = getenv("REMOTE_ADDR");
shraatz Posted January 26, 2006 Posted January 26, 2006 Próbáld ki ezt: <?php $file = "ip.txt"; $fh = fopen($file,"a+"); fwrite($fh,date("m.d.y G:i:s T Y")."|".$_SERVER["REMOTE_ADDR"]."\r\n"); fclose($fh); ?> Ha így sem mûködik, akkor azt a fájlt amibe ezt berakod módosítsd CHMOD 777-re, hozz létre a fájllal azonos könyvtárban egy ip.txt -t és azt is 777 -re. Így 10000% hogy mûködik.
Silent Psycho Posted January 26, 2006 Posted January 26, 2006 @ Pozoki Melyik szolgáltatónál van a tárhelyed? UW-n találkoztam ezzel a problémával, hogy nem a jó IP címet írja ki hanem vm mást. Az ATW-n mûködik a felhasználó IP-jének lekérése: http://www.psyweb.atw.hu/
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