Word dokkumentum beolvasása
Sziasztok a következő dolgot szeretném megoldani. Word dokumentumot kívánok txt-be alakítani majd a kapott txt fájlt berakni egy adatbázisba. Elég alaposan utánaolvastam már a témának így találtam meg töbek közt ezt http://weblabor.hu/hirek/20040429/word2html linket is.
így a korában használni kívánt antiword programot a jobb wvText programra cseréltem.
Ez parancssorba kiválóan működik! Pl: konzolba beírom wvText /home/pappg/Teszt.doc /home/pappg/Teszt.txt. A gond ott van, hogy nem sikerül rábírnom a php-t, hogy "adja ki" ezt a parancsot. Következő a kódom (az ürlap feltöltés és feltöltött állomány elhelyezését végző kódot nem irom ide mivel az egyrészt triviális feladat másrészt jól működik nálam)Mint a kommentekből látható elég sok féle képpen próbáltam megoldani, rá is ment fél napom, de sajnos kifogott rajtam. Ugyanis még igencsak ujjonc vagyok php terén + soha nem hívtam meg külső programot a php-ből. Mi(ke)t rontottam/hattam el? Nagyon köszönök minden segítséget/ötletet.
■ így a korában használni kívánt antiword programot a jobb wvText programra cseréltem.
Ez parancssorba kiválóan működik! Pl: konzolba beírom wvText /home/pappg/Teszt.doc /home/pappg/Teszt.txt. A gond ott van, hogy nem sikerül rábírnom a php-t, hogy "adja ki" ezt a parancsot. Következő a kódom (az ürlap feltöltés és feltöltött állomány elhelyezését végző kódot nem irom ide mivel az egyrészt triviális feladat másrészt jól működik nálam)
<?php .
.
.
.
$program="/usr/bin/wvText";
$mit=$all_tomb['tmp_name']. '/' .$all_tomb['name'];
$mive= "/tmp" ."/" ."ideglenes" .".txt";
print "$program <br>\n";
print "$mit <br>\n";
print "$mive <br>\n";
passthru("$program $mit", $mive);
//passthru($futtat,$Doctxt); //ahol a $futtat egyenlő volt a program+mit+mivé -vel.
//print "$program $mit $mive";
//exec($program $mit $mive, $dokumentum);
$dokumentum=fopen("/tmp/ideglenes.txt",'r');
foreach($dokumentum as $sor){
print "$sor";
}
//itt jön majd az ideglenes állomány törlése untouch()-val.
// illetve az adatbázisba írás,de most a cél a képernyő.
....
?>
Foreach? Fopen?
Amit te akarsz:
Valóban
fclose újabb hiba. (amúgy letöröltem volna a fájlt a script végén) Azért jár a fél fekete pont.
De sajnos nem ez a legnagyobb gond. Hanem az hogy a /temp/ideglenes.txt nem tudtam létrehozatni a scripttel. Mivel nem tudom, hogy jelenesetben hogy kellene meghívni a passthru()/exec() függvényt ahhoz hogy jól müködjön.
A megoldás
Más, rájöttem hogy a multkor azt kevertem, hogy a megnyitott fájlt olvasásra soronként kell feldolgozni...
Még egy kis hiba
str_replace
Pál_úr
Köszönöm, Jólesz!