Hirdetés
Új hozzászólás Aktív témák
-
Taci
addikt
bind_param, ezzel kapcsolatban kérdeznék.
Adott egy olyan lekérdezés, amiben van egy változó tartalmú rész, pl.:
WHERE id NOT IN (0), máskor NOT IN (0,1,2,3), vagy NOT IN (0,1,2,3,4,5,6,7,8,9) stb.Tehát a zárójelen belül lehet akár 1, akár 11 érték is, változó.
Ha simán csak stringként adom át, akkor nem működik. Pl.:
$id_list = "0,1,2,3,4,5,6,7,8,9";
$stmt = $mysqli->prepare("... WHERE id NOT IN (?)");
$stmt->bind_param('s', $id_list);
(Nincs előttem a kódom most, de kb. így lehet. Plusz azok az id-k belső kódból jönnek, így lehet, le sem kellene védenem őket, de talán jobb lenne biztonságban tudni.)
Itt látok pont most talán egy ide illő megoldást: ReflectionClass (sose láttam még).
https://www.php.net/manual/en/mysqli-stmt.bind-param.phpComing to the problem calling mysqli::bind_param() with a dynamic number of arguments via call_user_func_array() with PHP Version 5.3+, there's another workaround besides using an extra function to build the references for the array-elements.
You can use Reflection to call mysqli::bind_param(). When using PHP 5.3+ this saves you about 20-40% Speed compared to passing the array to your own reference-builder-function.
Example:
<?php$db = new mysqli("localhost","root","","tests");
$res = $db->prepare("INSERT INTO test SET foo=?,bar=?");
$refArr = array("si","hello",42);
$ref = new ReflectionClass('mysqli_stmt');
$method = $ref->getMethod("bind_param");
$method->invokeArgs($res,$refArr);
$res->execute();
?>Otthon utána olvasok majd (munkanap végén).
Van ezzel tapasztalatotok? Hogyan lehetne ezt megoldani?
Új hozzászólás Aktív témák
- Autós topik
- LEGO klub
- iPhone topik
- Nyaralás topik
- OLED monitor topic
- A fociról könnyedén, egy baráti társaságban
- Apple iPhone 13 Pro Max - őnagysága
- Xiaomi 15 - kicsi telefon nagy energiával
- Kerékpárosok, bringások ide!
- Merész dizájn és új teleobjektív az iPhone 17 Pro mobilokban
- További aktív témák...
- iPhone 15 Pro 128GB Blue Titanium - Akkumulátor 92%
- ÚJ Lenovo Yoga Slim 6 14IRH8 - 14" WUXGA OLED - i5-13500H - 16GB - 512GB - Win11 - 2+ év garancia
- Mini PC - Lenovo ThinkCentre M920q Tiny / i5-8500T / NVMe / USB Type-C / HDMI / 27% számla
- Asus TUF Gaming F15 FX507 - 15,6"FHD 144Hz - i5-12500H - 8GB - 512GB SSD - RTX 3050 - 1 év garancia
- 1080Ti FE Accelero Xtreme IV hűtővel
- Ha országosan a legmagasabb áron szeretnéd eladni a laptopodat, akkor az ELITRO a Te partnered
- HP 15S FHD LED Matt Ryzen5 5500U 4.0Ghz 8GB RAM 256GB SSD Radeon RX Vega7 Win11 Garancia
- Apple iPhone 12 Pro 128 GB Pacific Blue 1 év Garancia Beszámítás Házhozszállítás
- BESZÁMÍTÁS! ASUS B760M i7 13700K 32GB DDR4 512GB SSD RX 6800XT 16GB Phanteks Eclipse P400 Glacier
- HIBÁTLAN iPhone 13 128GB Starlight -1 ÉV GARANCIA - Kártyafüggetlen, MS3432
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest