Diskuze: Fulltextové vyhledávání
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.

Člen

Zobrazeno 13 zpráv z 13.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Nejsem si jistý jestli je to dobře, ale takhle by to mohlo fungovat:
SELECT * FROM `tabulka` WHERE `nazev` LIKE %$text%
SELECT * FROM `tabulka` WHERE MATCH(`titulek`, `clanek`) AGAINST('slovo');
Moc se v PHP nevyznám je toto správně ?? Píše mi to varování.
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given
in index.php on line 4
<?php
$vysledek=mysql_query("SELECT * FROM `new` WHERE MATCH(`jmeno`, `text`) AGAINST('$text')");
$text = AddSlashes($_POST['word']);
while (MySQL_Fetch_Array($vysledek)){
echo "Vyhledáno";
}
?>
Pro příznivce mých skriptů:
http://www.itnetwork.cz/dev-lighter/277
K čemu tam máš tu funkci AddSlashes()
? Ta se přece už
dávno nepoužívá, protože není bezpečná.
Moc díky za kód a toto přidává do tabulky v databázi ??
$insert->execute(array('Muži', 'Franta, Pavel, Jindra a Josef'));
Ano. Nemusíš ty stringy nijak ošetřovat. Je to bezpečné ukládání. Klidně i takto:
$insert->execute(array($_POST['titulek'], $_POST['clanek']));
Není to nebezpečné pouze v případě když je zapnuto magic_quotes_gpc?
addslashes používá php-fusion třeba stále, ale možná pouze pro administrační používání kvůli php skriptům přímo v novinkách.
Ještě myslím, že to je nevhodné protože to potom znehodnocovalo text když už před ošetřením obsahoval např. \'..
magic_quotes by mělo být standardně vypnuto. Je to zvěrstvo, které nesmyslně przní vstupní text.
Zobrazeno 13 zpráv z 13.