Hladanie bez MySQL
22 příspěvků
Archiv diskusního fóra
Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.
-
Potreboval by som zistit ako by sa dalo hladat a strankach v PHP, ale bez SQL.
-
dost blbě.... co přesně si představuješ? tak můžeš otevřít danou skupinou souborů a hledat v nich....
-
ja si to predstavujem asi takto: //subor hladaj.php $hladane_slovo="kybernetický"; $open=FOpen ("adresy.dat","r"); $read=FRead ($open,filesize("adresy.dat")); $e=explode ("\n",$read); $file=file ("adresy.dat"); for ($i=count($file);$i>0;$i--) { $open=FOpen ($e[$i],"r"); $read=FRead ($open,filesize($e[$i])); if (?) { echo "Slovo \"$hladane_slovo\" bolo najdene na adrese <a href=$e[$i] target=_blank>$e[$i]</a><br>"; } } //subor adresy.dat www.euphoria.wz.cz/xyz/index.html www.euphoria.wz.cz/yxz/index.html www.euphoria.wz.cz/zxy/index.html ale aky prikaz mam dat namiesto tych otaznikov?
-
>> if (?) { Copak to je nějaká podmínka?
-
zorro>ale aky prikaz mam dat namiesto tych otaznikov? tam bolo povodne nieco taketo if (?) { ale forum to asi zmenilo na "?" tam kde je ten otaznik neviem co mam dat aby to fungovalo
-
No, tak teď už v tom mám pěknej guláš. Copak fórum změní "otazník " ? Když napíšeš tady & tak ti z toho vyjede &, ale jinak to nechápu.
-
zas to zmenilo if (?+?+?+?+?+?+?+?) {
-
tusim to funguje takto: $zmenene=str_replace ("?","?");
-
Sorry, fakt nechápu co ti změní, když mi to pořádně nevysvětlíš. Asi si sedím na vedení.
-
$zmenene=str_replace ("?+?+?","?");
-
...dost bolo o otaznikoch...teraz o tom hladani...
-
>> $zmenene=str_replace ("?","?"); 1) Opět nechápu, co měníš, když tam máš mít dva otazníky 2) BTW: Fce Str_Replace() obsahuje tři parametry, ale to doufám víš.
-
tak skus napisat pet otaznikov po sebe a uvidis...
-
No, koukám, že se tady překřikujeme a odepisujeme oba v jeden a ten samý moment. Zeptám se tě takhle: Co ti brání to přepsat do databáze a usnadnit si tak tvůj problém?
-
problem: neviem robit v SQL a teraz nemam cas sa ho ucit, lebo sa prave ucim C/C++ a okrem toho webzdarma ma pre sql vyhradenych len 5MB
-
skus mi pomoct najst v tomto chybu (ak budes ochotny) (diki): <? $hladane_slovo="kybernetický"; $open=FOpen ("adresy.dat","r"); $read=FRead ($open,filesize("adresy.dat")); $e=explode ("\n",$read); $file=file ("adresy.dat"); for ($i=count($file);$i>0;$i--) { $open=FOpen ($e[$i],"r"); $read=FRead ($open,filesize($e[$i])); $f=explode (" ",$e[$i]); $s="no"; $x=0; while ($s=="no") { if ($f[$x]) { if ($f==$hladane_slovo) { echo "Slovo \"$hladane_slovo\" bolo najdene na adrese <a href=$e[$i] target=_blank>$e[$i]</a><br>"; $s="yes"; $x=$x+1; } } else { $s="yes"; } } } ?>
-
Rád bych ti poradil, ale přiznám se, že tomu moc nerozumím. Jen mi nejde do hlavy toto: $open=FOpen ($e[$i],"r"); První parametr fce fopen() by měl být IMHO soubor, resp. cesta k němu, ale z tohoto to tak nevypadá.
-
bla-bla $e=explode ("\n",$read); bla-bla for ($i=count($file);$i>0;$i--) { bla-bla $open=FOpen ($e[$i],"r"); obsah adresy.dat: xyz/1.html xyz/2.html xyz/3.html Co by to malo robit: 1.) Otvori si subor adresy.dat na citanie 2.) Obsah suboru rozdeli do pola ($e[0]=1riadok,$e[1]=2riadok,...) 3.) Postupne otvori vsetky $e[0] (1riadok=xyz/1.html) $e[1]... 4.) Kazdy otvoreny subor rozdeli na slova (f[0]=prve slovo,...) 5.) Vytvori premnnu "$s" s hodnotou "no" 6.) Prejde cely subor a ak najde slovo zodpovedajúce "$hladanemu_slovu", nastavi premennej "$s" hodnotu "yes", cim sa skonci hladanie v tomto subore, a prejde sa na dalsi subor ($e[1]) ...Neviem ci tomu niekdo pochopi, ale za snahu to stoji
-
skusim to vysvetlit este takto: <? $hladane_slovo="kybernetický"; //slovo, ktore sa ma hladat $open=FOpen ("adresy.dat","r"); //subor v ktorom su ulozene adresy HTML suborov v ktorych sa ma hladat slovo $read=FRead ($open,filesize("adresy.dat")); //otvori tento subor na citanie $e=explode ("\n",$read); //rozdeli subor do pola ($e[0]=riadok 1, $e[1]=riadok 2) $file=file ("adresy.dat"); //otvori subor v ktorom su ulozene adresy HTML suborov v ktorych sa ma hladat slovo for ($i=count($file);$i>0;$i--) { //tento usek sa bude opakovat tolko krat, kolko je uvedenych HTML suborov $open=FOpen ($e[$i],"r"); //otvori prvy HTML subor, potom druhy, potom treti, ... $read=FRead ($open,filesize($e[$i])); //Precita prvy HTML subor, potom druhy, ... $f=explode (" ",$read); //Rozdeli prvy HTML subobor na slova, potom rozdeli druhy subor na slova, ... $s="no"; //premenna s s hodnotou no. Ak bude mat premenna hodnotu yes, skonci sa vyhladavanie v HTML subore $x="0"; //premnna x s hodnotou 0. Po kazdom prejdenom slove sa hodnota zvisi o 1. while ($s=="no") { //cyklus while. Ak je hodnota premennej s no, tak pokracuje dalej if ($f[$x]) { //zisti ci existuje slovo. ak slovo neexistuje, vrati premennej s hodnotu yes if ($f==$hladane_slovo) { //ak sa naslo spravne slovo echo "Slovo \"$hladane_slovo\" bolo najdene na adrese <a href=$e[$i] target=_blank>$e[$i]</a><br>"; $s="yes"; $x=$x+1; } } else { $s="yes"; } } } ?>
-
Teď už konečně chápu jak to myslíš a IMHO to musí jít i nějak udělat. Ale otázka zní "jak"?
-
poznamka: ak si to prehodis do poznamkoveho bloku, tak je to citatelnejsie
-
blahapet: Ohledně těch otazníků. Sám nevim, jaký to má smysl, ale tohle forum, když napíšeš víc otazníků za sebou, tak to změní na jeden. :)