Sorguda PDO::FETCH_ASSOC olması şart mı ?

David M. Boren

Hectopat
Katılım
12 Haziran 2016
Mesajlar
61
Daha fazla  
Cinsiyet
Erkek
Telefon rehberi uygulaması geliştirdim @Erkan Çevik 'in de katkılarıyla. Ancak bu telefon rehberinde SQL Injection açığı çıkmasından şüpheliyim
Postun sonunda bırakmış olduğum kod parçacığında "query" metodu ile bağlandım tablolara, SQL açığını önlemek için "prepare" metoduyla bağlanmam gerekiyor! Bu şekilde bağlanınca da "PDO::FETCH_ASSOC" boşta kalıyor, yazınca da 1. id gidiyor! Bunu düzgün bir şekilde nasıl "prepare" metodu ile kullanılabilir hale getiririm veya "PDO::FETCH_ASSOC" burada çok önemli mi?

Kodlar
PHP:
<?php
                    $query = $db->query("SELECT * FROM iller ORDER BY iller_baslik ASC", PDO::FETCH_ASSOC);
                    if ( $query->rowCount() ):
                    foreach ($query as $row):
                    ?>
                    <option value="<?php echo $row['iller_id']; ?>">
                        <?php

                        echo $row["iller_baslik"];
                       
                        endforeach;
                    endif;
                        ?>
 
Son düzenleyen: Moderatör:
Bu şekilde kullanmana zaten gerek yok. Bu sorgunda zaten dışarıdan gelen bir data yok. Diğer yandan ihtiyaç halinde ence "prepare" ile sorgunu oluştur, "execute" dan gelen dataları işlet ve sonra eğer ekrana sonuç bastıracaksan "ferch_assoc" kullanabilirsin. İster single olarak istersen döngü içerisinde işletebilirsin bunu. Mini bir örnek.

PHP:
$prepare_query    = $pdo->prepare('senin sorgun');
$prepare_query->execute(array(":ornekData" => $ornekDataDegiskeni));

$prepare_single_result = $prepare_query->fetch(PDO::FETCH_ASSOC);
 
Uyarı! Bu konu 9 yıl önce açıldı.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.

Technopat Haberler

Yeni konular

Geri
Yukarı