View Full Version : Javascript, word e webserver apache
stò sviluppando un sito in php su web server apache, adesso ho la necessità di gestire dei documenti word...ora, con php (versione linux) non ho la classe com implementata e ho le mani legate (anche se ho trovato una classe php che apre il file ma offre ben poco per la gestione), ho pensato a javascript e qui sorge un altro problema utilizzando:
var w=new ActiveXObject('Word.Application');
var obj;
w.Visible = true;
var obj=w.Documents.Open("C:\\A.doc");
ho si il processo winword.exe in memoria ma non mi apre ne word ne il documento
può essere che la classe ActiveXObject è gestita lato server (quindi nel mio caso linux) e non riesca a essere eseguita correttamente ?
se avete altre idee....
thanks!
stò sviluppando un sito in php su web server apache, adesso ho la necessità di gestire dei documenti word...ora, con php (versione linux) non ho la classe com implementata e ho le mani legate (anche se ho trovato una classe php che apre il file ma offre ben poco per la gestione), ho pensato a javascript e qui sorge un altro problema utilizzando:
var w=new ActiveXObject('Word.Application');
var obj;
w.Visible = true;
var obj=w.Documents.Open("C:\\A.doc");
ho si il processo winword.exe in memoria ma non mi apre ne word ne il documento
può essere che la classe ActiveXObject è gestita lato server (quindi nel mio caso linux) e non riesca a essere eseguita correttamente ?
se avete altre idee....
thanks!Una soluzione basata su Javascript, come hai appena descritto, non va affatto bene. Questo per via di 2 limiti: (a) Il codice funzionerebbe solo ed esclusivamente con IE (questo potrebbe andarti bene o anche non andarti bene, dipende) (b) Su una pagina web viene sicuramente proibito, da parte di IE, l'accesso a oggetti e file relativi al file-system locale. Per ovvi motivi ... ;)
Una soluzione basata su Javascript, come hai appena descritto, non va affatto bene. Questo per via di 2 limiti: (a) Il codice funzionerebbe solo ed esclusivamente con IE (questo potrebbe andarti bene o anche non andarti bene, dipende) (b) Su una pagina web viene sicuramente proibito, da parte di IE, l'accesso a oggetti e file relativi al file-system locale. Per ovvi motivi ... ;)
il sito verrebbe utilizzato solo in una intranet aziendale (dove tutti i pc hanno IE).
la mia necessità è quella di poter aprire,creare e modificare documenti di word presenti su un server...tu cosa mi consiglieresti ?
il sito verrebbe utilizzato solo in una intranet aziendale (dove tutti i pc hanno IE).Ah ok, allora il primo limite possiamo toglierlo perché ti va bene e non ti crea problemi.
Rimane il secondo limite, quello della sicurezza. Io ho fatto alcune prove con questo codice html (metti tu il path giusto al documento):
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Test Word</title>
<script type="text/javascript">
<!--
function apri_doc ()
{
var word = new ActiveXObject ('Word.Application');
word.Visible = true;
var doc = word.Documents.Open ("....path documento....");
}
//-->
</script>
</head>
<body>
<p>
<input type="button" onclick="apri_doc()" value="Apri documento">
</p>
</body>
</html>
Se lo apro con IE come pagina "locale", cioè con File | Apri... | Sfoglia..., non ci sono problemi, il documento Word si apre. L'unica cosa è che IE presenta una box di avvertimento per consentire o meno l'interazione con il controllo AcriveX. Rispondendo Sì, il documento Word si apre.
Il problema si presenta se la pagina html viene caricata tramite protocollo http. Ho messo la pagina in modo che fosse visibile attraverso il mio web server in locale con il URL http://localhost. Cercando di aprire il documento Word, mi compare una box di errore "Errore: Il server di automazione non può creare l'oggetto". Smanettando un po' con le opzioni di sicurezza di IE (Strumenti | Opzioni Internet... | Protezione) sono riuscito a far aprire il documento Word anche dalla pagina su http.
Ah ok, allora il primo limite possiamo toglierlo perché ti va bene e non ti crea problemi.
Rimane il secondo limite, quello della sicurezza. Io ho fatto alcune prove con questo codice html (metti tu il path giusto al documento):
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Test Word</title>
<script type="text/javascript">
<!--
function apri_doc ()
{
var word = new ActiveXObject ('Word.Application');
word.Visible = true;
var doc = word.Documents.Open ("....path documento....");
}
//-->
</script>
</head>
<body>
<p>
<input type="button" onclick="apri_doc()" value="Apri documento">
</p>
</body>
</html>
Se lo apro con IE come pagina "locale", cioè con File | Apri... | Sfoglia..., non ci sono problemi, il documento Word si apre. L'unica cosa è che IE presenta una box di avvertimento per consentire o meno l'interazione con il controllo AcriveX. Rispondendo Sì, il documento Word si apre.
Il problema si presenta se la pagina html viene caricata tramite protocollo http. Ho messo la pagina in modo che fosse visibile attraverso il mio web server in locale con il URL http://localhost. Cercando di aprire il documento Word, mi compare una box di errore "Errore: Il server di automazione non può creare l'oggetto". Smanettando un po' con le opzioni di sicurezza di IE (Strumenti | Opzioni Internet... | Protezione) sono riuscito a far aprire il documento Word anche dalla pagina su http.
ok...provo
grazie mille :)
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.