22786
Html-, css- és php-help
-
#3894 köszi mindkettőtöknek a segítséget -
#3893 Hát ebben sehogy, ahogy te csináltad úgy egyből felül írod a változó értékét.
Próbáld meg ezt, itt egy vektorba kell beírní a kivánt betüket. -
phoenix1 #3892 Hi. Egy példa a php.net-ről:
<?php
// Provides: <body text='black'>
$bodytag = str_replace("%body%", "black", "<body text='%body%'>");
// Provides: Hll Wrld f PHP
$vowels = array("a", "e", "i", "o", "u", "A", "E", "I", "O", "U");
$onlyconsonants = str_replace($vowels, "", "Hello World of PHP");
// Provides: You should eat pizza, beer, and ice cream every day
$phrase = "You should eat fruits, vegetables, and fiber every day.";
$healthy = array("fruits", "vegetables", "fiber");
$yummy = array("pizza", "beer", "ice cream");
$newphrase = str_replace($healthy, $yummy, $phrase);
// Use of the count parameter is available as of PHP 5.0.0
$str = str_replace("ll", "", "good golly miss molly!", $count);
echo $count; // 2
?> -
#3891 köszi nagyon jó!egy olyan kérdésem lenne,hogy hogyan tudok több cserélést végrahajtani:
$mit="l";
$mire="k";
$mit="a";
$mire="e";
Próbáltam így,de akkor az l-t már nem cserélte ki
Előre is kösz -
#3890 Ha rákattintasz a görgetősávra majd ráviszedd az egeret az eggyik zanére majd megnomsz egy betüt odaugrik ha létezik olyan! Ha ez nem jó tudni kéne, hogy hogy tárolod az adatokat!
(pl én is firefoxot használok és 1 oldal miatt nem fogok váltani! máris egy potenciális rádióhallgatót vesztettél el! -
#3889 Hát nem tom megoldani akinek firefox-ja van használjo IE-t nem tom mindkettőre optimizálni sorry..! amugy meg olyan kereső kellene ami az oldalon lévő zenék között keres amik a legördülő sávban vannak, szoval valami olyan kellene ami kezdőbetük szerint keres vagy nem tom biztosan tud valaki vmi keresőt!!! -
#3888
1. Firefox alatt a lejátszó eltakarja a gördítő sávot (láttam, hogy ki van írva hogy explorere optimalizáltál, de ezzel kb a userek 50%-át elveszíted!)
2. Nem értem milyen kereső kéne neked keresőnek ott van a google! Vagy fogalmam sincs hogy pontosan mit akarsz!
3. Ez egy fórum nem kérünk mailban segítséget!
4. Ne légy türelmetlen a jó munkához idő és türelem kell!
5. Ne légy felháborodva ha nem tudunk segíteni, te is azért jöttél ide, mert nem tudod megoldani a problémát!
-
#3887 Basszus nem igaz hogy valaki nem tud vmi kodot nagyon kellene a a kereső...! :( nah mind1 ha valaki tud mégis vmit írjon email-t [email protected] -
#3886 Van erre egy saját kódom, de az istenért nem tudom müködésre bírni! (bugos)
Viszont azt nem értem, hogy "captcha.php" ennek a tartalmát kihagytad! _Vagy valamit én nem értek? -
#3885 Csáó all! Van egy oldalam aminek az a célja hogy zenét lehet rajta hallgtni itt van lesséte meg...www.kis_paksi.extra.hu! Nah szal van a menüben egy olyan hogy ITT a lényeg a Zene & Radio...ha arra rámentek előjön maga a lejáccó és alatta legördülő menüben a zenék! Nah szal az lenne a kérdésem hogy nem e tudna vki egy keresőt ide, hogy rá tudjanak keresni az emberkék akik hallgatják néha a zenéket????! PLS ha vki tud vmit írjon! Előre is THX! -
#3884 ilynere gondolsz? -
Cat 02 #3883 valami hasonlót lehet tudok szerezni kb 1 hét múlva xDDD
#3872 vki ? :Ö -
phoenix1 #3882 Hello Faustus. Köszönöm a segítséget . Már magamra vagyok mérges, közben átnézem a server konfigot.
-
#3881 Ha egy bizonyos karakterkódolást akarsz használni, mind a fejlécnek, mind a HTML-oldal fejében levő <meta> tagnak, mind az állománynak (PHP, HTML,...), illetve adatbázisnak azonos karakterkódolásúnak kell lennie.
"A fejlécbe ha nem írom be ezt header("Content-Type: text/html; charset=utf-8"); figyelmen kívül hagyja"
Valószínűleg alapértelmezett karakterkódolás van beállítva a szerveren - így a lapot adott karakterkódolással szolgálja ki.
"a header előtt a ·-nak megfelelő jelek jelennek meg"
Használj mindenhol alapból UTF8-at.
Pont a te problémáddal foglalkozik a Weblabor cikke: . -
phoenix1 #3880 Javítok. Az utolsó előtti sorba & middot ; -ot akartam írni :) -
phoenix1 #3879 Hi. Programozott már valaki több nyelvű weblapot. Olyanra gondolok amelynek a tartalma csak annyiban különbözik, hogy más-más nyelven van.
Próbálkoztam, próbálkozom az utf-8-al ami már az elején fejfájást okoz. A fejlécbe ha nem írom be ezt header("Content-Type: text/html; charset=utf-8"); figyelmen kívül hagyja a <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />-t és iso-8859-2 -est akar használni.
Ez még nem is lenne olyan katasztrófa ahhoz képest, hogy vmi okból amikor az include()-vel beolvastatom a header | content | footer-t pl. a header előtt a ·-nak megfelelő jelek jelennek meg. Ezt úgy tudtam eddig megoldani, hogy Dreamweaver-el módosítottam iso-8859-2-re majd ujból vissza utf-8-ra és akkor már nem voltak ott. Hogyan lehet eztet elkerülni? Előre is köszi a választ.
-
#3878 Itt felsoroltam pár oldalt, ahonnan hozzájuthatsz ilyen cucchoz, vagy elérhetsz ilyen szolgáltatást. De itt is van egy. Vagy itt.
Vagy itt. -
#3877 Üdv!
Extra szerverén kéne egy html környezetben (akár beágyazott keretben) egy olyan szavazórendszer, ami nem igényel klönösebb beállításokat a szerveren. Csak egy kérdés, pár lehetőség és eredményjelzás kéne, háttér+szövegszín beállítással. Ha van erre java megoldás, az is jó, de gondolom csak php-ben lehet kivitelezni. (az sem baj, ha mysql kell hozzá). Köszi.
-
#3876 Hali!
Egy ilyen scriptre lenne szükségem.Rajzoltam, mert így könnyebb elmagyarázni:D
Előre is köszi
-
#3875 KHM izé :) ilyen is létezik? :D nagynm gyerekcipőben jár még a mysql tudásom :D -
#3874 "SQL injection
Ennek a módszernek a lényege, hogy megfelelően formázott bemeneti adatokkal próbálja a támadó (a gonosz :) ) elérni, hogy programunk módosított SQL lekérdezéseket hajtson végre."
Forrás: Weblabor
Szóval az űrlapon keresztül SQL parancsokat küldenek el a feldolgozó szkripthez, ami védelem nélkül végrehajtja a küldött parancsot.
Ezzel ki lehet törölni az adatbázist, eltüntetni a táblákat lekérni a felhasználói adatokat, stb.
Védekezés:
Az SQL injection támadások elleni védekezés elemei:
* bejövő adatok védelme ("escape-elése"). Ha egy mezőbe olyan karaktereket (általában az aposztróf, idézőjel, utasítás határoló jel, megjegyzés jel) szeretnék beszúrni, aminek az adott adatbázis kezelő rendszer esetén speciális jelentése van, akkor ezen karakterek elé egy speciális karaktert (többnyire \) kell tenni, mely jelzi, hogy az őt követő karakter nem bír speciális jelentéssel (ez különbözhet adatbázis motortól függően). Mivel ezen támadási mód lényege, hogy a támadó speciális karaktereket helyez el az bemenetben, ezért az szöveg megvédésével az esetlegesen ártó szándékú tartalmat hatástalanítjuk. Szövegek esetén amúgy is szükséges a megvédés, hiszen a szövegben normál esetben is szerepelhetnek speciális karakterek (gondoljunk csak az O'Reilly névre, vagy a becenevekre, melyeket idézőjelekkel szokás írni).
* érdemes ahol csak módunkban áll a várt adatok hosszát limitálni, ahol csak lehet dolgozzuk fel a bejövő adatot, ha csak egy szót várunk, akkor dobjuk el az első szóhatároló utáni részt, ha számot várunk, akkor alakítsuk át számmá, ha bármilyen formai elvárásunk van vele kapcsolatban, akkor ellenőrizzük mintaillesztő kifejezésekkel, vagy egyéb módon. Ez a plusz költség a biztonság oldalán megtérül majd.
* a program által használt adatbázis felhasználó jogait korlátozzuk le amennyire csak lehet, érdemes lehat az oldal adminisztrációs felületéhez külön felhasználót használni, amely rendelkezik ezen felület plusz funkcionalitása által igényelt plusz adatbázis jogokkal.
Forrás: Weblabor
mysql_real_escape_string - ez a barátod -
#3873 "amivel nagyon probalkoznak az az sql injection" erről valaki infót mert mostmár 3-man is említették de nem igazán vagyok tisztába ezzel, hogy ez mi vagy lehet hogy tiszában vagyok vele csaka név nem ismerős! -
Cat 02 #3872 nah lenne egy kérdésem
olyan kéne hogy van egy szöveg rákattolok és "lenyíilik" alatt egy rész amiben van valami :)
(lényegében az a valami egy youtubes os videó lenne beillesztve + egy picit leírás mellé)
van erre valami kód ? :) -
Anotino #3871 hat, fura de eddig senki nem akart kulso oldalrol postolni a formomra. logolom a sikertelen probalkozasokat (+korlatozom az adott ido alatt probalkozasok szamat) es meg nem volt semmi hasonlo, pedig semmi trukkot nem hasznalok es kb tizezres havi latogatottsagu az oldal.
amivel nagyon probalkoznak az az sql injection es a get parameterek atirkalasa az url-ben. naponta tobbszor nekilat valaki hogy megprobaljon ugyeskedni (altalaban szerverjelszora utaznak, vagy rendszerutasitast tartalmazo scriptet akarnak beincludeoltatni). -
#3870 Olvasd el mégegyszer: "egyes esetekben".
Azaz, vagy nem tartja érdemlegesnek (például egy tizenx éves kiscsaj honlapocskáját minek feltörni, ha csak néhány kutyus, cicus és egyéb vizuális hatás tömkelege van rajta ;) ), vagy mire feltöri, az elérhető információk elavulttá válnak. -
#3869 Az utolsó mondaton azért csiholnék! A konkurencia tárcája eléggé széles akár kétsávos autópálya méretűre tud kinyilni egy rossz hírnév keltése érdekében vagy egy használhatatlaná tett oldal érdekében! -
#3868 "ezt miert kell?"
Űrlapvédelem azért kell, hogy megvédd magad az olyan felhasználók ténykedésétől akik nem odaillő adatokat, felesleges regisztrációáradatot, vagy HTML-be ágyazott Javascripten keresztül kártékony kódot juttatnak be a rendszerbe (ez utóbbi például a vendégkönyvek/fórumok esetében veszélyes).
A referrer vizsgálata arra jó, hogy megakadályozzuk a külső oldalról (vagy programból) való adatküldést (persze ez is hamisítható, de ad némi védelmet).
A rejtett űrlapmezők használata arra szolgál, hogy ellenőrizhető legyen, hogy egy adat az űrlapról jött-e vagy nem.
A Captcha ("írja be a képen látható kódot!") az automatikusan űrlapot kitöltő robotok ellen van (bár már vannak olyan robotok is amelyek felismerik a képen látható karaktereket - de nagyon profik még nincsenek szerencsére. Már próbálkoznak az "ismerje fel a képen látható állatot"-jellegű megoldásokkal - ezeket már nehezebben ismeri fel a Mesterséges Inteligencia)
Van még pár ilyen védelmi stratégia mint például egy beviteli mező méretének korlátozása (erre van mód a HTML nyelven belül), a bevitt adatok típusának ellenőrzése (szám? karakterlánc? bizonyos formátum - telefon, e-mail - kötelező?).
"minden oldalt fel lehet törni :)"
Nos elvileg lehet, csak idő és gépteljesítmény kérdése, de egyes esetekben nem éri meg a feltörőnek a befektetett energia. -
Anotino #3867 * Az űrlapot érdemes védeni. Egyrészt Captcha segítségével, másrészt rejtett űrlapmezők segítségével (amelybe valami valamelyest véletlenszerű értéket adsz meg), harmadrészt az ellenőrzést és a munkamenetek előállítását végző résznek figyelnie kell, honnan érkezett az elpostolt adat (az előző oldal űrlapjából, vagy máshonnan?).
ezt miert kell? -
Cat 02 #3866 minden oldalt fel lehet törni :) -
#3865 Nem pontosan nem tudom miért csináltam így annó így tanítottak, hogy több dolgot tegyek bele mert így jobb akkor nem értettem, hogy miért és hát mostanában meg nem merült fel bennem a kérdés hogy miért rakok bele többmindent :D
Inkább egy féloldalas post forráskóddal mint két sor :D -
#3864 "Most nézem úgy csináltam az md5 megoldást több kódot meg a secret-et meg egyébb megerősítő vackot is belekever :D"
Ugye? Te is parázol a biztonságon?
"Amúgy miért nem azzal kezdted, hogy képen látható kod beírását csináljak? :D"
Mert az hosszú, én meg lusta dög vagyok. ;D -
#3863 Most nézem úgy csináltam az md5 megoldást több kódot meg a secret-et meg egyébb megerősítő vackot is belekever :D
Amúgy miért nem azzal kezdted, hogy képen látható kod beírását csináljak? :D Nem tudtam elképzelni mi ez a Captcha dolog :D (alap, hogy ilyet rakok a regisztrációhoz meg a bejelentkezéshez! -
#3862 "szal ez érdekelne, hogy hogy tudnám ellenőrizni, hogy a saját oldalamról jött-e az igény?"
Kb így fog kinézni, ha mindegyik előbb említett megoldást használod:
login.php
---------
<form action="checkin.php" method="post">
<input type="text" name="user" />
<input type="password" name="password" />
<input type="hidden" name="zokni" value="<?php echo md5(sha1(date("Y. m. d.")."745132")); ?>" />
<img src="captcha.php" alt="titok" /> <!-- Magát a Captcha-képet adó rész -->
<input type="text" name="code" /> <!-- A képen látható kód beírására -->
<input type="submit" name="submit" value="Login" />
</form>
checkin.php
-----------
session_start();
$code= Code(); //Ez a Captcha generátortól függően alakul
if ($_SERVER["HTTP_REFERER"]=="http://valami.com/login.php" && $_POST["submit"] == "Login" && $_POST["code"] == $code && $_POST["zokni"] == md5(sha1(date("Y. m. d.")."745132"))) {
$_SESSION['user']=$_POST['user'];
$_SESSION['password']=md5(sha1($_POST['password']));
}
"Az miért gáz ha másik oldalról mutat ide egy regisztrációs kérés?"
Mert nemcsak regisztrációs kérés lehet, hanem más is (bejelentkezési, stb...)
"md5-öt fel lehet törni, de hogy jutnak hozzá? feltörik mysql-t?"
Vagy elkapják a munkamenetet, stb...
Lehet hogy kissé szőrszálhasogatásnak tűnik, de nem árt az elővigyázatosság. -
#3861 md5-öt fel lehet törni, de hogy jutnak hozzá? feltörik mysql-t? akkor már nem tök mind1, hogy hogy kódolom akkor már úgy is olyan károkat okoznak, hogy tök mind1! (md5 segítségével titkosítva tárolom a jelszavakat!)
Az miért gáz ha másik oldalról mutat ide egy regisztrációs kérés? :S azzal kárt nem tudnak csinálni! (max teliregelik adatbázist, de arra meg ott a véletlen szerü szám, bár ha már nem tőllem jön az igény akkor azt már kiszedik, szal ez érdekelne, hogy hogy tudnám ellenörizni, hogy a saját oldalamról jött-e az igény?
-
#3860 Egy Captcha generátor elérhető erről az oldalról. -
#3859 Kiegészítés:
* Jelszavat sose tároljunk önmagában (sem az adatbázisban, sem munkamenetben). Inkább használjuk az ellenőrzőösszegeket (md5, sha1 - sőt mivel az md5 feltörhető sha1-el +valami kiegészítéssel kombinálva érdemes, azaz $checksum=sha1(md5($pass."titkosszöveg"));)
* Az űrlapot érdemes védeni. Egyrészt Captcha segítségével, másrészt rejtett űrlapmezők segítségével (amelybe valami valamelyest véletlenszerű értéket adsz meg), harmadrészt az ellenőrzést és a munkamenetek előállítását végző résznek figyelnie kell, honnan érkezett az elpostolt adat (az előző oldal űrlapjából, vagy máshonnan?).
* Az alábbi leírásokat meg érdemes böngészni:
-
#3858 Magyarán egy tömben tároljam a passwordot meg a felhasználónevet és minden oldalnak adjam tovább az információt? :S Ez végülis nem bonyolult :) -
Anotino #3857 egy pelda:
login.html
-----
<form action="checkin.php" method="post">
<input type="text" name="user" />
<input type="password" name="password" />
<input type="submit" value="Login" />
</form>
checkin.php
-----
session_start();
$_SESSION['user']=$_POST['user'];
$_SESSION['password']=$_POST['password'];
header('Location: tartalom.php');
tartalom.php
-----------
session_start();
include('auth.php');
//TARTALOM
auth.php
--------
function authorise()
{
//jelszoellenorzes ($_SESSION['user'], es $_SESSION['password'] -oket //ellenorizze), return true, ha ok, es return false ha nem jo. ha //sql-ezel, nagyon figyelj az sql injection-re.
}
if(!authorise())
{
header('Location: login.html');
die; //biztos ami biztos
}
a tartalom oldalak elejen mindig includeold az auth-t, igy tuti csak az latja a tartalmakat, aki jo jelszot ad meg. ha rossz jelszot kap, rogton atiranyitja a belepooldalra. -
#3856 Köszönöm müködik! (szerelmi bánatra a legjobb a munka) -
#3855 Az elsőt nem igazán értem!
A megerősítés így müködik illetve még nem mert ezt azt javítani kell a forráskódban csak pl ma is most értem haza és semmi kedvem belekezdeni mert egy életre megunom!