Hirdetés
- weiss: Autó költségek
- Luck Dragon: Asszociációs játék. :)
- GoodSpeed: Te hány éves vagy?
- Magga: PLEX: multimédia az egész lakásban
- sziku69: Fűzzük össze a szavakat :)
- vrob: Próbálkozás 386 alaplap újraélesztésre
- Luck Dragon: Alza kuponok – aktuális kedvezmények, tippek és tapasztalatok (külön igényre)
- sziku69: Szólánc.
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Geri Bátyó: Agglegénykonyha különkiadás – Bors
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
"Más" utáni részre reagálva:
A PDO exec() függvényét használod itt? Vagy ez saját wrapper osztály?
Ha a PDO-é, akkor azonnal felejtsd el, hogy exec() metódus használatával közvetlenül beleraksz felhasználótól érkező adatot. Meg nem ártana, ha kivételeket kezelnél.
Nem is értem, pont az a lényege a PDO-nak, hogy szépen lehet vele az adatokat kezelni, prepared statementeket lehet vele használni, így escape-elgetni sem kell a karaktereket, épp ez az egyik legjobb benne, de a másik pedig az előkészített query által megvalósítható szép kód - nincs szükség okádék string-összefűzögetésre, mint - bocs - a Te kódodban.
Tele von Zsinór kolléga a PHP topicban belinkelte a saját cikkét a témában, ami elég jól összefoglalja a dolgot:
http://maerlyn.eu/2011/12/03/pdo.htmlTehát
$db->exec("INSERT INTO offers (offer_id,description,images) VALUES ('$provider_id','$htmlcontent', '".$_FILES['uploaded_image']['name']."');");
FELEJTŐS, HELYETTE:$dbh = NULL;
try {
// felhasználónév, jelszónál saját adat behelyettesítendő
$dbh = new PDO("mysql:host=localhost;dbname=test", "root", "root", array(
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES UTF8;',
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
));
// ..............
$sth = $dbh->prepare('INSERT INTO offers (offer_id,description,images) VALUES (:offer_id, :description, :images)');
$sth->bindParam(':offer_id', $provider_id, PDO::PARAM_INT);
$sth->bindParam(':description', $htmlcontent, PDO::PARAM_STR);
$sth->bindParam(':images', $_FILES['uploaded_image']['name'], PDO::PARAM_STR);
$sth->execute();
echo 'Úgy tűnik, minden OK.';
}
catch (PDOException $err) {
echo 'Hiba: ', $e->getMessage();
}
catch (Exception $e) {
echo 'Másik hiba: ', $e->getMessage();
}Itt feltételeztem, hogy az offer_id egy INT.
Meg természetesen a kivételeket inkább naplózni kéne, és felhasználóbarát üzeneteket kiírni.Ja, és a fentivel nagy eséllyel kerülhető el az általad említett probléma.
Legalábbis remélem. Majd írd meg, mire jutottál.
Új hozzászólás Aktív témák
- Fotók, videók mobillal
- PR-Telecom
- Két generációval korábbi GeForce gyártása indulhat újra
- Milyen billentyűzetet vegyek?
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- exHWSW - Értünk mindenhez IS
- Samsung Galaxy Tab S8 Ultra - szépséges a szörnyeteg
- Székesfehérvár és környéke adok-veszek-beszélgetek
- PlayStation 5
- One otthoni szolgáltatások (TV, internet, telefon)
- További aktív témák...
- Acer Predator Helios 300 - i7 10870H - RTX 3080 8GB - FHD 144Hz IPS - 16GB / 1TB SSD - OLVASS!
- T14 Gen3 27% 14" FHD+ IPS i5-1235U 16GB 512GB NVMe ujjlolv IR kam gar
- Asztali PC , R5 8400F , RX 5700 XT , 16GB DDR5 , 512GB NVME , 1TB HDD
- Corsair VENGEANCE 32GB (2x16GB) DDR5 6000MHz CL36 - XMP/EXPO - 120 hó garancia
- G.SKILL Trident Z5 32GB (2x16GB) DDR5 6000MHz CL30 - XMP/EXPO - 99 hó garancia
- Samsung Galaxy S25 Ultra 256GB Kártyafüggetlen 1év Garanciával
- Gamer PC- Számítógép! Csere-Beszámítás! R5 5500 / RX 6700XT 12GB / 16GB DDR4 / 1TB Nvme SSD
- HP EliteOne 800 G5 All-in-One i5-8500 32GB 1000GB 23.8" Érintőkijelző!! 1 év garancia
- Apple Mac Studio M2 Ultra 24 magos CPU, 60 magos GPU, 64GB RAM, 1024GB SSD
- Eladó Samsung Galaxy S22 8/128GB / 12 hó jótállás
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


