Categories > [old] TbsOoo & TinyDoc >

[fr] 1er pas, 1er test, 1ère anomalie d'utilisation

The forum is closed. Please use Stack Overflow for submitting new questions. Use tags: tinybutstrong , opentbs
By: Anonymous
Date: 2006-08-11
Time: 07:50

[fr] 1er pas, 1er test, 1ère anomalie d'utilisation

Bonjour,

Tout est installé semble-t-il et pourtant, j'ai un message, enfin plusieurs, mais ils sont peut-être liés au même problème.

Je suis en environnement windows xp/sp2

J'ai mon zip dans le répertoire : "C:\Program Files\zip" et le unzip "C:\Program Files\unzip"

J'ai un répertoire appelé Ooo placé à la racine de mon site en cours de développement, dans lequel, j'ai mes classes "tbs_class.php" et "tbsooo_class.php".

Dans ce répertoire, j'ai placé un autre répertoire "tmp".

Dans le répertoire Ooo, j'ai mon programme php et ma page html de l'exemple de la documentation avec le "Hello"

Lorsque j'exécute mon programme, j'ai :
TinyButStrong Error (LoadXmlFromDoc method): File not found : tmp/3a348706afef4b2ed348957ef2759ab9/content.xml

Warning: rmdir(tmp/3a348706afef4b2ed348957ef2759ab9) [function.rmdir]: Directory not empty

TinyButStrong Error (_RemoveTmpDir method): Can't remove directory : tmp/3a348706afef4b2ed348957ef2759ab9

TinyButStrong Error (_RemoveTmpDir method): Can't remove directory : tmp/3a348706afef4b2ed348957ef2759ab9

Warning: rmdir(tmp/3a348706afef4b2ed348957ef2759ab9) [function.rmdir]: Directory not empty


TinyButStrong Error (_RemoveTmpDir method): Can't remove directory : tmp/3a348706afef4b2ed348957ef2759ab9

Je les ai placé en séquence comme ils apparaissent sans bien sûr les messages sur le header qui sont dûs aux messages précédemment cités.

Dans mon répertoire tmp, j'ai bien un répertoire portant le nom "3a348706afef4b2ed348957ef2759ab9" avec à l'intérieur un "content.xml" de 0 ko.

Voilà j'ai expliqué, une idée d'où provient l'erreur.
By: Olivier Loynet
Date: 2006-08-11
Time: 10:00

Re: 1er pas, 1er test, 1ère anomalie d'utilisation

Bonjour,

Il faut déclarer ou se trouve les binaires
Dans ton cas, il faut écrire

$OOo->SetZipBinary('C:\\Program Files\\zip');
$OOo->SetUnzipBinary('C:\\Program Files\\unzip"');

Olivier
By: pierre3
Date: 2006-08-11
Time: 21:37

Re: 1er pas, 1er test, 1ère anomalie d'utilisation

Merci Olivier,

Cela ne change rien, les messages restent les mêmes.
By: pierre3
Date: 2006-08-11
Time: 21:55

Re: 1er pas, 1er test, 1ère anomalie d'utilisation

Je décortique pas à pas la classe tbsooo et ligne 113, j'ai le message suivant :
[cote]Undefined index: extension in c:\program files\easyphp1-8\www\gestelle\Ooo\tbsooo_class.php on line 115[/cote]

J'ai mis des "echo" pour tracer ce qui se passe, donc mes n° de ligne ne correspondent pas aux tiennent.

J'ai regardé ce qu'il y avait  dans [cote]a_pathinfo : Array ( [dirname] => C:\Program Files\EasyPHP1-8\www\gestelle [basename] => templates_doc ) [/cote]

Effectivement, je n'ai pas "extension".

By: pierre3
Date: 2006-08-11
Time: 22:03

Re: 1er pas, 1er test, 1ère anomalie d'utilisation

J'ai trouvé l'extension, le chemin d'accès n'était pas bon.

Ne serait-il pas judicieux dans ta page au niveau du tutorial d'expliquer un peu tout cela pour les benets comme moi.

Bon, mais j'ai toujours mon message :
[cote]TinyButStrong Error (LoadXmlFromDoc method): File not found : tmp/895b6b4e12f5a888264ce4d3a11374c8/content.xml[/cote]
By: pierre3
Date: 2006-08-11
Time: 22:41

Re: 1er pas, 1er test, 1ère anomalie d'utilisation

En traçant pas à pas, j'ai trouvé qu'un copie de mon document sxw avait été faite dans mon environnement temporaire "tmp' avec un nom de fichier unique. Ce même nom de fichier unique est utilisé dans tmp pour créer un dossier qui recevra le unzip du sxw.

Le message me dit que le fichier content.xml n'est pas trouvé, effectivement à ce stade il n'y a rien dans le dossier unique créer.

Le unzip se serait-il mal comporté ?

On trace, on trace juste au dessus, il y a le unzip.

Oh ! quelle horreur

Autant on test la présence du répertoire contenant zip ou celui contenant le unzip, autant on ne test pas si zip.exe ou unzup.exe existe.

Résultat il ne faut pas mettre dans mon cas

[cote]$OOo->SetZipBinary('C:\\Program Files\\zip');
$OOo->SetUnzipBinary('C:\\Program Files\\unzip"');[/cote]

Mais

[cote]$OOo->SetZipBinary('C:\\Program Files\\zip\\zip');
$OOo->SetUnzipBinary('C:\\Program Files\\unzip\unzip"');[/cote]

Il lui manquait les .exe du zip et du unzip.

Continuons, continuons...
By: pierre3
Date: 2006-08-11
Time: 22:45

Re: 1er pas, 1er test, 1ère anomalie d'utilisation

C'est bon le tutorial, on va jouer un peu maintenant.

A plus et merci pour cette classe
By: Olivier Loynet
Date: 2006-08-12
Time: 09:51

Re: 1er pas, 1er test, 1ère anomalie d'utilisation

Désolé pour ma petite erreur, il fallait le modifier comme ci-dessous

$OOo->SetZipBinary('C:\\Program Files\\zip\\zip');
$OOo->SetUnzipBinary('C:\\Program Files\\unzip\unzip"');


Pour ma part j'ai créé un répertoire, par exemple

c:\programs files\bin dans lequel j'y ai mis les binaires.

Ensuite il faut definir une variable globale (PATH) à Windows pour dire de parcourir aussi le répertoire c:\programs files\bin pour rechercher des binaires,

set PATH=c:\program files\bin;%PATH% à mettre dans l'autoexec

$OOo->SetZipBinary('zip');
$OOo->SetUnzipBinary('unzip"');

Cela à l'avantage de faire un code plus portable entre machine Windows et Linux

Parfois si tu n'as pas les executable sous Linux, il faudra les trouver par exemple avec les chemins suivants

$OOo->SetZipBinary('/usr/local/bin/zip');
$OOo->SetUnzipBinary('/usr/local/bin/unzip');


PS : pour mettre du code dans le forum, il faut mettre CODE et non COTE