Temos pavadinimas: WordPress, Shopify ir PHPFusion programuotojų bendruomenė :: PDO paieška

Parašė WhiZz· 2015 Bal. 30 14:04:55
#1

Sveiki, kiek google ir visur kitur beieškojau niekur nerandu veikiančios paieškos su PHP PDO...
Gal kas mokate PDO ir galite su tuo padėti?
Pats kažką mėginau , bet gaunasi taip, kad norint surasti dainą reikia parašyti būtent tokį pavadinimą, kad parodytų ją, jeigu parašai mažosiomis raidėmis, o būna didžiosiomis, tada parodo, kad nieko nerasta...
Pvz: Duomenų bazėja yra pavadinimas Koos - Voltage, parašai tarkim koos ir nieko neranda, o jeigu Koos iškarto suranda dainą Koos -Voltage
Mano kodas:

 
function search($data) {
	global $handler;
	$word = '%'.$data.'%';
	$stmt = $handler->prepare("SELECT * FROM `songs` WHERE `song_title` LIKE ? ORDER BY song_id DESC LIMIT 10");
	$stmt->execute(array($word));
	if($stmt->rowCount()) {
		while($s = $stmt->fetch()) {
		echo "<b>{$s['song_title']}</b><br>";
		}
	} else {
		echo "No results found...";
	}
}

Redagavo WhiZz· 2015 Bal. 30 15:04:14

Parašė Žmogus· 2015 Bal. 30 19:04:04
#2

http://stackoverflow.com/a/1786656

Parašė WhiZz· 2015 Geg. 1 10:05:04
#3


function search($data) {
	global $handler;
	$sql = "SELECT * FROM `songs` WHERE `song_title` LIKE :title ORDER BY song_id DESC LIMIT 10";
	$stmt = $handler->prepare($sql);
	$stmt->execute(array(':title' => '%'.$data.'%'));
	if($stmt->rowCount()) {
		while($s = $stmt->fetch()) {
		echo "<b>{$s['song_title']}</b><br>";
		}
	} else {
		echo "No results found...";
	}
}


Visvien reikia rašyti taip kaip yra duomenų bazėja, nors ir užtenka vieno žodžio, bet Jiegu yra Rise up daina, reikia rašyti Rise, kad rastų ją, o jeigu parašai rise, tada neberanda... ?|

Parašė Žmogus· 2015 Geg. 1 12:05:42
#4

Ar tikrai? Ir per kokį phpmyadmin taip būna, kai like naudoji?

Parašė avice· 2015 Geg. 1 13:05:23
#5

bandyk...

$sql = "SELECT * FROM `songs` WHERE lower(song_title) LIKE :title ORDER BY song_id DESC LIMIT 10";
$stmt = $handler->prepare($sql);
$stmt->execute(array(':title' => '%'.mb_strtolower($data).'%'));

tikrai turi suveikt.

Redagavo avice· 2015 Geg. 1 13:05:49

Parašė WhiZz· 2015 Geg. 1 15:05:17
#6

avice, viskas puikiai veikia, pritaikiu autosugesstion su situo viskai LIKE A BOSS, dekui ;)

Redagavo WhiZz· 2015 Geg. 1 15:05:04