<?php /* Veri Tabanını Bağla */ try { $db = new PDO('mysql:host=localhost;dbname=abc', 'root', ''); }catch(PDOException $e) { $e->getMessage(); } /* Sorgu Başlat */ if (isset($_POST['search'])) { $name = htmlspecialchars(($_POST['search'])); $query = $db->query("SELECT * FROM posts WHERE title LIKE '%$name%'", PDO::FETCH_ASSOC); $query->execute(); } ?> <!-- Yazdır --> <?php foreach ($query as $result): ?> <?=$result['title']?> <?php endforeach;; ?>
PHP & AJAX & PDO ile arama işlemi
16
●266
- 24-01-2023, 16:19:19PHP & AJAX & PDO ile anlık olarak ekrana veri basan arama sistemi yapıyorum fakat PDO sorgumda bir hata var sanırım. Hatam Nerede?
- 24-01-2023, 16:21:17Hocam merhaba bu sorunla bende daha önceden karşılaşmıştım % leri oraya eklemeyerek deneyin, şöyle:
<?php /* Veri Tabanını Bağla */ try { $db = new PDO('mysql:host=localhost;dbname=lpanelen', 'root', ''); }catch(PDOException $e) { $e->getMessage(); } /* Sorgu Başlat */ if (isset($_POST['search'])) { $name = htmlspecialchars(($_POST['search'])); $name = "%".$name."%"; $query = $db->query("SELECT * FROM posts WHERE title LIKE $name", PDO::FETCH_ASSOC); $query->execute(); } ?> <!-- Yazdır --> <?php foreach ($query as $result): ?> <?=$result['title']?> <?php endforeach; ?>
- 24-01-2023, 16:22:29v4r1able adlı üyeden alıntı: mesajı görüntüle
- 24-01-2023, 16:22:48hata olarak ne geliyor hocam. Kodda bi hata gözükmüyor.
- 24-01-2023, 16:23:11v4r1able adlı üyeden alıntı: mesajı görüntüle
script.js
//Getting value from "ajax.php". function fill(Value) { //Assigning value to "search" div in "search.php" file. $('#search').val(Value); //Hiding "display" div in "search.php" file. $('#display').hide(); } $(document).ready(function() { //On pressing a key on "Search box" in "search.php" file. This function will be called. $("#search").keyup(function() { //Assigning search box value to javascript variable named as "name". var name = $('#search').val(); //Validating, if "name" is empty. if (name == "") { //Assigning empty value to "display" div in "search.php" file. $("#display").html(""); } //If name is not empty. else { //AJAX is called. $.ajax({ //AJAX type is "Post". type: "POST", //Data will be sent to "ajax.php". url: "ajax.php", //Data, that will be sent to "ajax.php". data: { //Assigning value of "name" into "search" variable. search: name }, //If result found, this funtion will be called. success: function(html) { //Assigning result to "display" div in "search.php" file. $("#display").html(html).show(); } }); } }); });
Ana sayfam
<!DOCTYPE html> <html> <head> <title>Live Search using AJAX</title> <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script> <script type="text/javascript" src="script.js"></script> </head> <body> <input type="text" id="search" placeholder="Search" /> <br> <br> <div id="display"></div> </body> </html>
- 24-01-2023, 16:24:05iltu33 adlı üyeden alıntı: mesajı görüntüle
<?php /* Veri Tabanını Bağla */ try { $db = new PDO('mysql:host=localhost;dbname=lpanelen', 'root', ''); }catch(PDOException $e) { $e->getMessage(); } /* Sorgu Başlat */ if (isset($_POST['search'])) { $name = htmlspecialchars($_POST['search']); $name = "%".$name."%"; $query = $db->query("SELECT * FROM posts WHERE title LIKE $name", PDO::FETCH_ASSOC); $query->execute(); } ?> <!-- Yazdır --> <?php foreach ($query as $result): ?> <?=$result['title']?> <?php endforeach; ?
- 24-01-2023, 16:26:19v4r1able adlı üyeden alıntı: mesajı görüntüle
<?php /* Veri Tabanını Bağla */ try { $db = new PDO('mysql:host=localhost;dbname=hh', 'root', ''); }catch(PDOException $e) { $e->getMessage(); } /* Sorgu Başlat */ if (isset($_POST['search'])) { $name = htmlspecialchars($_POST['search']); $name = "%".$name."%"; $query = $db->query("SELECT * FROM posts WHERE title LIKE $name", PDO::FETCH_ASSOC); $query->execute(); } ?> <!-- Yazdır --> <?php foreach ($query as $result): ?> <?=$result['title']?> <?php endforeach; ?>
Şu Hatayı almaktayım
Fatal error: Uncaught Error: Call to a member function execute() on bool in C:xampphtdocsaraajax.php:19 Stack trace: #0 {main} thrown in C:xampphtdocsaraajax.php on line 19 - 24-01-2023, 16:26:54omergunay adlı üyeden alıntı: mesajı görüntüle
<?php /* Veri Tabanını Bağla */ try { $db = new PDO('mysql:host=localhost;dbname=hh', 'root', ''); }catch(PDOException $e) { $e->getMessage(); } /* Sorgu Başlat */ if (isset($_POST['search'])) { $name = htmlspecialchars($_POST['search']); $name = "%".$name."%"; $query = $db->query("SELECT * FROM posts WHERE title LIKE $name", PDO::FETCH_ASSOC); $query->execute(); } ?> <!-- Yazdır --> <?php foreach ($query as $result): ?> <?=$result['title']?> <?php endforeach; ?>
Bu hatayı alıyorum
Fatal error: Uncaught Error: Call to a member function execute() on bool in C:xampphtdocsaraajax.php:19 Stack trace: #0 {main} thrown in C:xampphtdocsaraajax.php on line 19 - 24-01-2023, 16:29:29iltu33 adlı üyeden alıntı: mesajı görüntüle
execute(array()) şeklinde bi dener misin hocam.