Autor Zpráva
nodon
Profil *
Ahoj, už dva dny řeším problém s přečtením .txt souboru ve kterém je slovník který se snažím dostat do MySQL, ale zatím všechny pokusy dopadají tak že to rozhodně nevypisuje to co chci. Zde je kod:

$file = fopen("./synonyma.txt", "r");

while($radek = fgets($file)){
    $pole_slov = explode("|", $radek);
    $synonymum_1 = $pole_slov['0'];
    $pocet_radku = $pole_slov['1'];
    $p = 0;
    while($p == $pocet_radku){
        if($p == 0){
            $radek_2 = fgets($file);
            $pole_synonym = explode("|", $radek_2);
            $synonymum_2 = $pole_synonym['1'];
        }else{
            $radek_2 = fgets($file);
        }
        $p++;
    }
echo $synonymum_2 . " : ";
echo $pocet_radku;
echo "<br />";
}



Tady ukázka slovníku v .txt:


propít|1
(1)|utratit (pitím)|prohýřit|prochlastat
dopustit se|1
(1)|spáchat (zločin)|provést
klepnout|4
(1)|ťuknout|kliknout (tlačítkem)|cvaknout
(2)|zasáhnout <koho>|praštit
(3)|zabít|ranit (mrtvice)
(4)|popovídat si|poklepat si|zdrbnout si


Skript by měl vzít slovo a první synonymum a další řádky přejet až na další slovo a tam to stejné. Bohužel to vypadá asi nějak takhle:

Notice: Undefined variable: synonymum_2 in /opt/lampp/htdocs/synonyma2.php on line 20
: 1
4 : zkazit
pahorkatina : kopec
povrch : vrchol
povrch : 1
2 : hašteřit se
finišovat : zrychlit běh
finišovat : 1
marcus33cz
Profil
No když ten skript použiju na tvoji ukázku, vypíše to:
: 1 
1 : utratit (pitím)
4 : spáchat (zločin)
zasáhnout : ťuknout
popovídat si : zabít

Nějak se mi nechce řešit, jestli je tohle to, co chceš, aby to vypisovalo.

Každopádně to žádnou chybu nezpůsobí, takže musíš být konkrétnější a dát sem všechno potřebné.
Notice: Undefined variable: synonymum_2 in /opt/lampp/htdocs/synonyma2.php on line 20
Co je soubor synonyma2.php a co je na řádku 20? To by se možná hodilo zjistit, protože v tvém kódu je na řádku 20 jenom výpis odřádkování, který tu chybu způsobit nemůže.
nodon
Profil *
Přesně to je ten problém, že to vypisuje takové kraviny, mělo by to vypsat slovo a za ně synonymum, všechno jsem to popsal nahoře, jinak tu chybu bych ani moc neřešil, v první verzi nebyla ale kraviny to vypisovalo stejně. Jinak na řádku 20 je akorát echo $synonymum_2;

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0