$basarisorgula=$db->prepare("SELECT * FROM basarilar WHERE karakterkodu =" . $_GET['id']);
ben şöyle bir şey denedim ama hata veriyor arkadaşlar, yapmak istediğim karakterkodu = olarak belirleyeceği veri urlde get aracılığıyla id olarak gelen veri olsun istiyorum.
yani xx.php?id=3 ise id 3 ün sonuçlarını getirsin sorgu, id 4 ise 4 ün bunu nasıl yapabilirim
PHP Yardım => sql sorgusunda get kullanmak
9
●162
- 01-06-2020, 23:28:48
$basarisorgula=$db->prepare("SELECT * FROM basarilar WHERE karakterkodu = ' . $_GET['id'] . '");Bu şekilde dener misin? - 01-06-2020, 23:30:48
$basarisorgula=$db->prepare("SELECT * FROM basarilar WHERE karakterkodu = { $_GET['id'] } "); - 01-06-2020, 23:33:20Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting '-' or identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in C:xampphtdocscanlikarakter.php on line 353YazilimciBiri adlı üyeden alıntı: mesajı görüntüle
Fatal error: Uncaught Error: Cannot use object of type PDOStatement as array in C:xampphtdocscanlikarakter.php:358 Stack trace: #0 {main} thrown in C:xampphtdocscanlikarakter.php on line 358Abdullahx adlı üyeden alıntı: mesajı görüntüle
Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting '-' or identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in C:xampphtdocscanlikarakter.php on line 353onurgosteris adlı üyeden alıntı: mesajı görüntüle - 01-06-2020, 23:35:36GET ile aldığın isteği tırnak içerisine al. String veri gönderdiğinden tırnak dışında syntax hatasına düşer.
- 01-06-2020, 23:36:06
$basarisorgula=$db->prepare("SELECT * FROM basarilar WHERE karakterkodu = $_GET['id']);Kod bu şekilde çalışır fakat güvenlik açığı bırakır. Önerim şu şekilde,
$basarisorgula = $db->prepare("SELECT * FROM basarilar WHERE karakterkodu = :p_karakter_kodu"); $basarisorgula->bindParam(':p_karakter_kodu', $_GET['id']); $basarisorgula->execute(); - 01-06-2020, 23:38:11
$basarisorgula=$db->prepare("SELECT * FROM basarilar WHERE karakterkodu = ?"); $basarisorgula->execute(array($_GET['id']));MySQL sorgusunu execute ederken bu şekilde array ile değeri gönderip dener misin?