Hirdetés
(használd a CYBSEC25PH kuponkódot további 20 ezer ft kedvezményért!)
Új hozzászólás Aktív témák
-
fazr
senior tag
válasz
Tele von Zsinór #8268 üzenetére
Köszi a részletes választ és a PDO-s írásodat is elolvasom hamarosan.
(#8267) Sk8erPeter Nem vettem észre, hogy törölted
Mindegy.
-
fazr
senior tag
válasz
Sk8erPeter #8264 üzenetére
Egy egyszerű példa:
akarmi.php utf-8 kódolású fájl:
<?php
// ha ez nincs itt akkor is rossz sima strlen()-nel
header("Content-Type: text/html; charset=utf-8");
$str = "é";
echo strlen($str) . "<br />"; // 2-t ad vissza
echo mb_strlen($str, "utf-8"); // 1-et ad vissza
?>(#8265) Athlon64+:
Prepared statementtel kapcsolatban kérdezném, hogy mellette kell használni a mysql_real_escape_string-et? Ha manualból jól értem, akkor kell.köszi mindkettőtöknek
-
-
fazr
senior tag
Sziasztok!
Lenne néhány kérdésem. Előre is bocs, ha valamelyik hülyeség, nem régóta kezdtem el foglalkozni php-val.
1, Ha Sessionnel csinálok beléptetést és azt akarom, hogy a böngésző újbóli megnyitásakor is bejelentkezve maradjon a felhasználó, akkor ezt gondolom cookieval kell megoldani.
A kérdés az lenne, hogy ilyenkor mit kell tárolni a cookieban? Hogy kell megoldani?2, Gondolom a fájl és a tartalom kódolásánál UTF-8 lenne a kézenfekvő, de mégsem jó.
Pl az strlen() az ékezetes karaktereket duplán számolja. ANSI fájlkódolással és Latin2 charsettel már tökéletes.
Utóbbival annyi bajom van csak, hogy ha esetleg nemzetközi oldalt csinálok, akkor lehet kevés a Latin2.Ezekkel összefügg a mysql karakterkészlete? Úgy értem, hogy amilyen kódolást használok a php fájloknál, ugyan azt kell használni az érintett tábláknál is?
3, Olvastam több helyen, hogy már nem ajánlott sima mysql_* parancsokat használni adatbázis kapcsolódásra és parancsok végrehajtására. Mit ajánlotok? Mysqli-t PDO-t, vagy mást?
4, Ha valamilyen mysql hiba lép fel, akkor érdemes az eredeti hibaüzenetet elnyomni és kiírni egy szűkszavú sajátot (azt ami a felhasználóra tartozik), vagy ez nem okoz sebezhetőséget és csak esztétikai szerepe van? Az eredetit persze én meg tudnám nézni (email/log, vagy valami ilyesmire gondoltam, vagy ha van jobb, akkor kiváncsian várom).
5, SQL injection ellen hogy lehet hatásosan védekezni? A metódus belseje "összetömörítve":
if( function_exists( "mysql_real_escape_string" ) ) {
if( get_magic_quotes_gpc() ) { $value = stripslashes( $value ); }
$value = mysql_real_escape_string( $value );
}
return $value;Ha valamivel ki kell egészíteni, akkor légyszíves írjátok le mivel és milyen módon.
Ugye minden esetben el kell ezt játszani (meghívni a metódust), amikor adatbázishoz nyúlok? Pl regisztáció, hozzászólás írás, bejelentkezés és egyéb űrlapok mellett még mikor kell?6, Regisztráció után aktiváló email kivitelezése így mennyire jó? Nagy vonalakban:
- Generálok egy kódot, amit mentek adatbázisba (ezt a felhasználók táblájába kell, vagy érdemes máshol kezelni?), valamint elküldöm az illetőnek emailben (pl link formájában)
- Csinálok egy feldolgozó php fájlt, ami get metódussal kapja meg az adatot az aktiváló linkre kattintva (itt /is/ gondolom védekezni kell sql injection ellen) és ha sikerült az aktiváció, akkor true-ra kell állítani a felhasználók táblában lévő activated mezőt.
Új hozzászólás Aktív témák
- Samsung Galaxy A53 128GB, Kártyafüggetlen, 1 Év Garanciával
- GYÖNYÖRŰ iPhone SE 2020 128GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS3588, 100% Akksi
- KÜLÖNLEGES RITKASÁG!!! VADIÚJ Surface Pro 12 12" Snapdragon X Plus 16GB 512GB LEVENDULA 686g
- 8 GB-os GeForce RTX 2060 SUPER (OEM HP) - garanciával
- LG 32SQ700S-W - 32" VA Smart - 3840x2160 4K UHD - 62Hz 5ms - WebOS - Wifi + BT - USB-C - Hangszórók
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest