[php] hoe article systeem met word

Pagina: 1
Acties:

  • TheRebell
  • Registratie: Oktober 2000
  • Laatst online: 09-09 08:43
Hoi,

ik ben dus van plan om een article/review systeempje te maken. Hiervoor moet het mogelijk zijn om het getikte article te kunnen uploaden en waarna het mogelijk is om deze webbased te kunnen bekijken.
Uploaden is een eitje maar het 'openen' van die files niet.
Gewoon openen lukt maar het moet mogelijk zijn om in bv Word zoiets te tikken en dan MET BEHOUD van opmaak EN plaatjes het article te kunnen openen in je browser. Niet het bestand downloaden en dan via Word in je browser maar in je webfiles.

Welke 'editor' is hiervoor aan te raden (Word, PDF, ???) en hoe kan ik de opmaak en de plaatjes hier ook in behouden?

Iemand een idee :?

  • Orphix
  • Registratie: Februari 2000
  • Niet online
Ik denk dat je gewoon .docs wilt uploaden (wat je nu al doet). Om word documenten in IE te laten zien moet je de juiste content-type meegeven in de header (via de header() functie)
Een beetje zoeken op google zal het antwoord geven.
[edit]zie ook hier
http://www.phpfreakz.nl/artikelen.php?aid=72&print=1

  • TheRebell
  • Registratie: Oktober 2000
  • Laatst online: 09-09 08:43
nee, het gaat er dus om, om ze ook te kunnen zien zonder IE. Dus PHP zou de .doc moeten lezen en dan heel de mik moeten parsen. Daarna dus sturen zodat ik de tekst ( en plaatjes) in mn browser heb. Dus niet met de "Word in IE"-mogelijkheid...

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
MS Word is natuurlijk heel grappig, maar imho niet de meest aantrekkelijke aanpak om artikelen aan te bieden op het web. Gesloten formaten lenen zich niet goed voor aanpassing en bovendien is MS Word geen goed formaat om documenten uit te wisselen in een heterogene omgeving zoals het internet.

Ik denk dat je er beter eens over na kan denken of je geen fraaiere oplossing kunt toepassen. Ik zou daarbij denken aan een open formaat op de server-kant. Uiteraard denk ik hierbij direct aan XML. Je kunt de documenten op een buitengewoon fraaie manier aanbieden door deze XML documenten te formatteren met XSLT en XSL Formatting Objects naar PDF. Deze oplossing heeft een hoop voordelen: (1) Je kunt je formaat server-side uitstekend bewerken. (2) Je kunt je documenten in verschillende vormen aanbieden, bijvoorbeeld als HTML, MS Word of RTF. (3) Iedereen kan je artikelen openen omdat het PDF is. Overal ziet je artikel er uitstekend uit, zonder gezeur met fonts en dergelijke.

Het is wellicht een uitdagende en wat lastigere oplossing, maar ik garandeer je dat je er extreem veel plezier van zult hebben :) .

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • Orphix
  • Registratie: Februari 2000
  • Niet online
Op woensdag 27 maart 2002 00:46 schreef TheRebell het volgende:
nee, het gaat er dus om, om ze ook te kunnen zien zonder IE. Dus PHP zou de .doc moeten lezen en dan heel de mik moeten parsen. Daarna dus sturen zodat ik de tekst ( en plaatjes) in mn browser heb. Dus niet met de "Word in IE"-mogelijkheid...
aaah. Je kan het volgende doen
- Word bestanden eerste via word converteren naar HTML pagina's en dan uploaden. Maar dat had je zelf waarschijnlijk ook al bedacht en wil je dus niet.
Dan kan je ook nog
- Als het een windows-server betreft waar Word op staat kan je via COM het bestand openen en dan Word de conversie naar HTML laten doen en dat html bestand terugsturen. Dit lukt dus niet op een linux/unix server!

  • TheRebell
  • Registratie: Oktober 2000
  • Laatst online: 09-09 08:43
Op woensdag 27 maart 2002 00:54 schreef mbravenboer het volgende:
MS Word is natuurlijk heel grappig, maar imho niet de meest aantrekkelijke aanpak om artikelen aan te bieden op het web. Gesloten formaten lenen zich niet goed voor aanpassing en bovendien is MS Word geen goed formaat om documenten uit te wisselen in een heterogene omgeving zoals het internet.

Ik denk dat je er beter eens over na kan denken of je geen fraaiere oplossing kunt toepassen. Ik zou daarbij denken aan een open formaat op de server-kant. Uiteraard denk ik hierbij direct aan XML. Je kunt de documenten op een buitengewoon fraaie manier aanbieden door deze XML documenten te formatteren met XSLT en XSL Formatting Objects naar PDF. Deze oplossing heeft een hoop voordelen: (1) Je kunt je formaat server-side uitstekend bewerken. (2) Je kunt je documenten in verschillende vormen aanbieden, bijvoorbeeld als HTML, MS Word of RTF. (3) Iedereen kan je artikelen openen omdat het PDF is. Overal ziet je artikel er uitstekend uit, zonder gezeur met fonts en dergelijke.

Het is wellicht een uitdagende en wat lastigere oplossing, maar ik garandeer je dat je er extreem veel plezier van zult hebben :) .
Je bedoelt dus het online (:?) invoeren van het article en dan deze hierna omzetten naar een XML file:? Hoe zou ik deze file dan kunnen opslaan en hoe kan ik dan snel bv ene plaatje inserten? Dan zou ik dus telkens XML moeten tikken?!?

Ben namelijk niet de enigste gebruiker die articles gaat maken....

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
TheRebell: Je bedoelt dus het online (:?) invoeren van het article en dan deze hierna omzetten naar een XML file:? Hoe zou ik deze file dan kunnen opslaan en hoe kan ik dan snel bv ene plaatje inserten? Dan zou ik dus telkens XML moeten tikken?!?
De invoer van de data besprak ik niet in mijn stukje (ik maakte mezelf er even makkelijk vanaf ;) ). Ik probeerde vooral de basis van een professionele oplossing te beschrijving. Welke schillen je daar omheen bouwt maakt niet zo heel erg veel uit. Je kunt mensen in principe XML laten schrijven (zo moeilijk is dat bij een zelf ontwerpen domein-formaat nu ook weet, tis net HTML :+ ), maar je kunt ook zelf een editor aanbieden als Java applet of ActiveX toestanden. Het basis-idee is dat de editor niet relevant zou moeten zijn voor het document formaat wat je intern gebruikt. Het is belangrijk dat je dit formaat 'in je macht hebt' en voor verschillende doelen kunt gebruiken. MS Word voldoet daar imho niet aan, en XML bij uitstek wel :) .

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • SchizoDuckie
  • Registratie: April 2001
  • Laatst online: 18-02-2025

SchizoDuckie

Kwaak

Op mijn server werkt het niet met plaatjes, maar de ondersteuning zit er wel in. Ik moet alleen het image path ff goed instellen.


||
||
\ /

Stop uploading passwords to Github!


  • TheRebell
  • Registratie: Oktober 2000
  • Laatst online: 09-09 08:43
Op woensdag 27 maart 2002 07:55 schreef papa_eend het volgende:
Op mijn server werkt het niet met plaatjes, maar de ondersteuning zit er wel in. Ik moet alleen het image path ff goed instellen.


||
||
\ /
Zoiets is idd geweldig :D.
Zo kunnen personen zelf een stukje tekst maken (wat bijna allemaal in Word zal worden gedaan) en dan kunnen ze het zo uploaden en kan ik er html files van maken :)

Alleen is de vraag: hoe convert je zoiets :?
En van die plaatjes, je zegt dat de ondersteuning er wel in zit, maar je kunt dan dus gewoon plaatje sin Word mikken en die komen netjes in je html te staan?

* TheRebell is al heel blij dat het iig kan :D

  • TheRebell
  • Registratie: Oktober 2000
  • Laatst online: 09-09 08:43
Kan iemand een duwtje in de goede richting geven mbt hoe je zoiets maakt ??

Lees in de file en convert ik new-lines enzo :? ofuh...beetje vaag, want hoe kun je speciale tags maken dan (zoals italic) die kun je niet uitlezen:?

  • Skinny
  • Registratie: Januari 2000
  • Laatst online: 25-07 18:17

Skinny

DIRECT!

SIZE does matter.
"You're go at throttle up!"


  • mjax
  • Registratie: September 2000
  • Laatst online: 02-09 04:48
Met het pakket Net-IT kan dit heel erg mooi. Het is een compleet contentmanagement systeem die precies kan wat jij wilt. Alle bestandstypes die afgedrukt kunnen wordt, kan Net-IT omzetten in native HTML.

Nadeel: het is afschuwelijk duur (ongeveer € 25.000)

  • TheRebell
  • Registratie: Oktober 2000
  • Laatst online: 09-09 08:43
Dus met een van die pakketjes, wvWare enzo, zou het moeten lukken. Ik zal eens kijken.
Wil alles door PHP laten doen... Als het gelukt is wil ik de source wel geven (mits er vraag naar is)

thnx

Damn...niet onder Windhoos...jammer....

  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

Op woensdag 27 maart 2002 07:55 schreef papa_eend het volgende:
Op mijn server werkt het niet met plaatjes, maar de ondersteuning zit er wel in. Ik moet alleen het image path ff goed instellen.


||
||
\ /
Heb je ook toevallig de source code hiervan? Of maak je gebruik van wvWare?

Programmer - an organism that turns coffee into software.


  • Skinny
  • Registratie: Januari 2000
  • Laatst online: 25-07 18:17

Skinny

DIRECT!

Op woensdag 27 maart 2002 12:47 schreef LuCarD het volgende:

[..]

Heb je ook toevallig de source code hiervan? Of maak je gebruik van wvWare?
Iets verder kijken dan je neus lang is :? ... check de links

SIZE does matter.
"You're go at throttle up!"


  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

Op woensdag 27 maart 2002 13:06 schreef Skinny het volgende:

[..]

Iets verder kijken dan je neus lang is :? ... check de links
|:( Ik lees zo over de link van hotscripts heen... |:( |:(

Maar goed....
Hoef ik die zelf ook niet meer te schrijven >:)
Als je trouwens word cut-n-paste naar een online HTML krijg je ook helehoop troep. Ik heb daar net behoorlijke filter voor gemaakt.

Programmer - an organism that turns coffee into software.


  • SchizoDuckie
  • Registratie: April 2001
  • Laatst online: 18-02-2025

SchizoDuckie

Kwaak

• wvware is idd te vinden op http://www.wvware.com

• mijn ge-editte template (die er al wat schonere html van maakt) is hier te vinden.

• code om deze zooi om te zetten met PHP (you might need to change the paths):
PHP:
1
<?if ( isset($doc) &amp;&amp; is_uploaded_file($doc))    {         $command = "/usr/local/bin/wvWare -c tis-620 -x '/home/sites/site2/web/include/wvHtml.xml' -d '/tmp/' '".$doc."'";        $text = `$command`; // zet een word doc in html en gooi die naar $text        while (strpos($text, '<b></b>') !== false) {$text = str_replace('<b></b>', '', $text);}        while (strpos($text, "\n</p>") !== false) {$text = str_replace("\n</p>", "</p>", $text);}        while (strpos($text, '<img') !== false)         {             $pos = strpos($text, '<img');            $close = strpos($text, '>',$pos);            $length = ($close - $pos) + 1;            $text = str_replace( substr($text, $pos, $length) , '', $text);        }        while (strpos($text, "\">\n") !== false) {$text = str_replace("\">\n", "\">", $text);}        while (strpos($text, '"></p>') !== false)         {             $close = strpos($text, '"></p>');            $pos = strrpos(substr($text,0,$close),"<p");            $length = ($close - $pos) + 6;            $text = str_replace( substr($text, $pos, $length) , '', $text);        }        while (strpos($text, "\n\n") !== false) {$text = str_replace("\n\n", "\n", $text);}        $text = str_replace("</body>", "", $text);        $text = str_replace("</html>", "", $text);    die(stripslashes($text));    }?>

Have fun with it :)

Stop uploading passwords to Github!


  • SchizoDuckie
  • Registratie: April 2001
  • Laatst online: 18-02-2025

SchizoDuckie

Kwaak

Op woensdag 27 maart 2002 13:15 schreef LuCarD het volgende:

[..]
Als je trouwens word cut-n-paste naar een online HTML krijg je ook helehoop troep. Ik heb daar net behoorlijke filter voor gemaakt.
kijk, dáár ben ik weer geinteresseerd in :)

Mind to share something?

Stop uploading passwords to Github!


  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

PHP:
1
<?function stripText($inhoud){// BASIC FILTERING    $inhoud=stripslashes($inhoud);    $inhoud = preg_replace ("/(<\?)(\w+)([^>]*>)/", "", $inhoud);     $inhoud = preg_replace ("/(<[a-zA-Z]:)(\w+)([^>]*>)/", "", $inhoud);     $inhoud = preg_replace ("/(<\/[a-zA-Z]:)(\w+)([^>]*>)/", "", $inhoud); //$klaas2 = preg_replace ("/\sclass=(.*)\s(.*)([^\s]*\s)/", " \\1", $klaas2);    $inhoud = preg_replace ("/(<FONT\s)(.*)(>&amp;nbsp;<\/FONT>)/", "", $inhoud);    $inhoud = preg_replace ("/(<SPAN\s)(.*)(>&amp;nbsp;<\/SPAN>)/", "", $inhoud);    $inhoud = preg_replace ("/(<P\s)(.*)(>&amp;nbsp;<\/P>)/", "", $inhoud);    $inhoud = preg_replace ("/<script[^>]*?>.*?<\/script>/si","", $inhoud);// CREATE TEMP FILE    $tempFilename = tempnam ("/tmp", "TIDY");    $fp=fopen($tempFilename,"w");    fwrite($fp,$inhoud);    fclose($fp);// FILTER        exec("/usr/local/tidy/tidy -c -asxhtml -i  -m ".$tempFilename."");// READ BACK    $fp=fopen($tempFilename,"r");    $fstr=fread($fp,filesize($tempFilename));    fclose($fp);// DELETE    unlink($tempFilename);return $fstr;}?>

Hij is nog niet helemaal compleet af... Maar er komt redelijke nette xhtml uit.

Programmer - an organism that turns coffee into software.


  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

Ik denk trouwens dat de preg_replaces wel kunnen worden geoptimaliseerd maar ik ben geen Guru met die zaken!

Programmer - an organism that turns coffee into software.


  • TheRebell
  • Registratie: Oktober 2000
  • Laatst online: 09-09 08:43
hmmm..... hier moet toch iets mee te doen zijn.
Wie kent de "tags" die word gebruikt?

Als je nl die .doc leest in een variabele dan zou je hierop kunnen zoeken/replacen/whatever... maar dan moet je wel weten naar wat je moet zoeken :?

Verwijderd

Ik heb even niet alles gelezen on this topic, sorry, maar als de topicstarter een Windows versie zoekt met Word geïnstalleerd op de server is dit de oplossing.
Het is een OCX filetje en dat kun je uiteraard met ASP programmeren maar ook PHP :
http://www.finertechnologies.com/index-doc2html.html

Het componentje doet gewoon een Word-sessie starten en bestand>save as HTML. Allemaal in de background, hidden. Na deze conversie sluit ie Word af.
Microsoft raad het ten zeerste af om Word te gebruiken op een server, omdat Word daarvoor niet bedoeld is, maargoed.
E-mail me maar als je hier interesse in hebt, ik kan je nog meer er over vertellen.

  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

Op woensdag 27 maart 2002 19:51 schreef awesdorp het volgende:
Ik heb even niet alles gelezen on this topic, sorry, maar als de topicstarter een Windows versie zoekt met Word geïnstalleerd op de server is dit de oplossing.
Het is een OCX filetje en dat kun je uiteraard met ASP programmeren maar ook PHP :
http://www.finertechnologies.com/index-doc2html.html

Het componentje doet gewoon een Word-sessie starten en bestand>save as HTML. Allemaal in de background, hidden. Na deze conversie sluit ie Word af.
Microsoft raad het ten zeerste af om Word te gebruiken op een server, omdat Word daarvoor niet bedoeld is, maargoed.
E-mail me maar als je hier interesse in hebt, ik kan je nog meer er over vertellen.
Heb je de HTML wel eens bekeken die door WORD wordt gemaakt?????

Je kan het bijna geen HTML meer noemen het is gewoon om te :'(

Programmer - an organism that turns coffee into software.


  • TheRebell
  • Registratie: Oktober 2000
  • Laatst online: 09-09 08:43
Op woensdag 27 maart 2002 22:33 schreef LuCarD het volgende:

[..]

Heb je de HTML wel eens bekeken die door WORD wordt gemaakt?????

Je kan het bijna geen HTML meer noemen het is gewoon om te :'(
Jah, dat wel ja. gewoon :r is het....
maarja....als dr geen andere oplossing is...

btw: het draait op een Windhoos systeem dus alle *nix oplossingen gaan dus niet op...

  • killercow
  • Registratie: Maart 2000
  • Laatst online: 07-08 19:18

killercow

eth0

oke, wat jij dus wilt is dat mensen gewoon een .doc uploaden en dat de boel door jouw script omgebouwd wordt tot een html stukje dat weer in jouw content mangament systeem geplakt wordt right?

oke dat kun je op 2 manieren doen:
1 preg_replace or str_replace de hele meuk en save de file als .html
2 zoek een of andere class die dit doet voor php, zijn er vast wel, doc2html oid? gewoon ff zoeken met leuke woord combinaties.

openkat.nl al gezien?


  • TheRebell
  • Registratie: Oktober 2000
  • Laatst online: 09-09 08:43
Ik wil best preg_replace gebruiken, alleen 1 nadeel.....waarop moet ik zoeken :?

Hoe slaat Word een new-line op, of de opmaak(bv bolletjes) enzo. Of waar kan ik dit vinden, ik wil het graag helemaal zelf maken en dus niets gebruiken van een ander maar ik heb gewoon geen idee waar ik dan op zou moeten zoeken in die .doc file :?

  • Orphix
  • Registratie: Februari 2000
  • Niet online
Op donderdag 28 maart 2002 00:43 schreef TheRebell het volgende:
Ik wil best preg_replace gebruiken, alleen 1 nadeel.....waarop moet ik zoeken :?

Hoe slaat Word een new-line op, of de opmaak(bv bolletjes) enzo. Of waar kan ik dit vinden, ik wil het graag helemaal zelf maken en dus niets gebruiken van een ander maar ik heb gewoon geen idee waar ik dan op zou moeten zoeken in die .doc file :?
Begin daar dus echt niet aan. Word documenten zijn al binary, dus daar kan je echt 3x niks mee.

Als mensen zo graag in word willen, kunnen ze ook wel even als een web-pagina opslaan en die opsturen (+ plaatjes, die komen in aparte dir). En dat die Word HTML pagina's er niet uitzien klopt tegenwoordig ook niet meer, bv de XP versie poept (bijna) gewoon xml uit. Hier kan je denk ik wel met str_replaces e.d. aan de slag.

  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

Op woensdag 27 maart 2002 23:59 schreef TheRebell het volgende:

[..]

Jah, dat wel ja. gewoon :r is het....
maarja....als dr geen andere oplossing is...

btw: het draait op een Windhoos systeem dus alle *nix oplossingen gaan dus niet op...
Tidy draait ook op win32 systemen

Programmer - an organism that turns coffee into software.


  • TheRebell
  • Registratie: Oktober 2000
  • Laatst online: 09-09 08:43
Maar hoe heeft papa_eend dit dan gedaan :?

(nieuwe dag, nieuwe kansen :) )

  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

Ahhh... Sorry...

wvware draait op dit moment alleen op *nix systemen... Maar niet getreurd er zijn alternatieven.

bv. (Shareware 30 dagen evalutie. Reg kosten 5 Uk Ponds)
http://www.res.bbsrc.ac.uk/wp2html/

Kijk anders nog even in dit lijstje...
http://directory.google.com/Top/Computers/Software/Internet/Authoring/Converters/?tc=1

Daar staan er vast nog wel meer.

Programmer - an organism that turns coffee into software.


  • mjax
  • Registratie: September 2000
  • Laatst online: 02-09 04:48
Op donderdag 28 maart 2002 00:54 schreef Orphix het volgende:

[..]

Begin daar dus echt niet aan. Word documenten zijn al binary, dus daar kan je echt 3x niks mee.

Als mensen zo graag in word willen, kunnen ze ook wel even als een web-pagina opslaan en die opsturen (+ plaatjes, die komen in aparte dir). En dat die Word HTML pagina's er niet uitzien klopt tegenwoordig ook niet meer, bv de XP versie poept (bijna) gewoon xml uit. Hier kan je denk ik wel met str_replaces e.d. aan de slag.
RTF files zijn platte ascii en worden standaard ook geassocieerd met Word als ze vanuit de browser geladen worden. In het verleden heb ik dit gebruikt om vanuit een website Word documenten te genereren voor een gebruiker. Werkt als een speer: gewoon een template RTF definieren, zoeken en vervangen en het resultaat naar de gebruiker sturen.
Pagina: 1