Encore quelques souçis avec mon script PHP, suite->.

  • Auteur de la discussion Auteur de la discussion a7_
  • Date de début Date de début
WRInaute discret
(re)Salut ;),

suite aux reponses constructives a mon prècedent post, j'en profite pour poser quelques questions en rapport avec ce même script, sur lequelles je bute vu mon (très) flaible niveau de connaissance en language PHP.

Donc, je m'explique :

J'utilise DokuWiki (wiki PHP stockant les entrées dans des fichier *.txt), ensuite à l'aide de ce script

:arrow: url : http://test.miranda-fr.net/creer_langpack.php
:arrow: url src : http://test.miranda-fr.net/doku.php?id= ... ngpack_src

il gènere un fichier qui regroupe l'ensemble du texte contenu entre les balises <file> </file> des entrée wiki de la catégorie "langpack" (donc tout les fichiers *.txt dans data/page/langpack/
exemple :

Code:
ceci est la traduction du plugin Wizz.
<file>
[Send nudge]
Envoyer un wizz
[nudge recevied]
Wizz reçu
</file>

voila, j'ai 2 problèmes :

[probleme 1 fixé :) ]
1) cette page controle si les fichiers sont corrects :
:arrow: http://test.miranda-fr.net/creer_langpack.php?check=1

Mais apparament (comme vous pouvez le voir) malgré les erreur détectées dans history_stats et nudge a la fin du rapport, s'affiche :

Le contrôle s'est passé sans erreurs.

malgré les erreurs ! :/

le code qui s'affiche donc (voir le src du script) :
} // end for
if ($flg_error) {echo ' - '.$flg_error.' Erreur(s) trouvée(s). Le langpack n\'est probablement pas valide ';}
else{ echo'<br />Le contrôle s\'est passé sans erreurs. <a href="creer_langpack.php">Retour au choix des Plugins </a>';}
if (isset($flg_error)){return($flg_error);}
} // end func

au lieu de :

} // end for
if ($flg_error) {echo ' - '.$flg_error.' Erreur(s) trouvée(s). Le langpack n\'est probablement pas valide ';}
else{ echo'<br />Le contrôle s\'est passé sans erreurs. <a href="creer_langpack.php">Retour au choix des Plugins </a>';}
if (isset($flg_error)){return($flg_error);}
} // end func
:?:


2) ensuite, normalement ici :
:arrow: http://test.miranda-fr.net/creer_langpack.php
en ne selectionnant que les entrées (via les checkbox) que l'on désire compiler, QUE les entrées selectionnées devrait être compiler , mais la.. toutes sont compilées dans le txt :/

OU plus exactement :

si QUE l'entrée "4x4x4" (la premiere du listing) selectionner j'obtient dans l'entete du fichier generer :
Miranda Language Pack Version 1
Language: French (fr-FR)
Locale: 040c
Last-Modified-Using: Miranda IM 0.5
Authors: Da*****78, a7 et la comunautée miranda-fr.net
Author-email: *********@wanadoo.fr & *********r@miranda-fr.net
X-Langpack-creation-date: 14 Aug 2006 23:49:58
X-Langpack-creator: Langpack creator v0.04.22b
; Plugins-included: 4x4x4 core

; FLID: French Language Pack 0.06.08.14
[Send nudge]
Envoyer un wizz
[nudge recevied]
Wizz reçu
ETC.........
Juste qu'as la donc tout est correct..., MAIS pourtant TOUT le texte des autres entrées sont incluses dans le fichier, et si check "tout selectionner" j'ai une entete :
Miranda Language Pack Version 1
Language: French (fr-FR)
Locale: 040c
Last-Modified-Using: Miranda IM 0.5
Authors: Da*****78, a7 et la comunautée miranda-fr.net
Author-email: *********@wanadoo.fr & *********r@miranda-fr.net
X-Langpack-creation-date: 14 Aug 2006 23:49:58
X-Langpack-creator: Langpack creator v0.04.22b
; Plugins-included: 4x4x4 acrypter advanced_auto_away aim_oscar aim_toc2 ajouter_par_a7 alarms alternative_browse_received_files always_online atomic auto_database_backup auto_replacer auto_shutdown autorun avatar_service away_sys_mod behind_the_edge bnetmessenger buddy_expectator buddy_pounce change_icq_details_plus chat clist_meta_mw clist_modern_avartars_mod clist_modern_contact_layered clist_mw clist_nicer_plus clist_switcher clml_add_on common console contact_merge_cleaner contacts_notifier contacts_plus contacts_status core custom_profile_folders database_editor_plus_plus email_express extended_idle_system fdd_notify file_as_message find_message flt_contacts font_service fortune_away_msg gadu_gadu gamer_status ghostify gmail_multiple_notifier gmail_notifier hdd_info help history_editor history_plus_plus history_stats host_file http_server_plus icq_ocarcar_j icq_oscar_8 ie_history ie_view ignore_contact im_crypter import import_plus irc isee jabber jabber_g keep_status keyboard_notify_ext log_statistics m_bot m_phantom_user m_tool_tip m_tv message_export message_notify metacontacts miranda_database_with_autobackups miranda_g15 miranda_qq miranda_rpc msecure msn msn_account_setup msn_mods msp_auto_set_nickname_and_status_message multi_protocol_contact_merge my_details net_access_notify new_event_notify new_event_notify_mod new_generation_event_notify new_status_notify nick_change_notify non_im_contact notes_and_reminders nudge nw_send open_folder otr path ping_plugin ping_protocol popup_plus proto_link proxy_switch re_position reconnect relay rss_news rss_news_popup scriver secure_im send_screenshot seti_at_home show_uin shutdown simple_auto_replier simple_away skype smart_auto_away smart_auto_replier smiley_add sms sms_driver_plugin spam_filter spam_returner spin_chat splash_screen srmm startup_status status_scheduler stop_spam switch_nick tabsrmm tipper tlen tooltip_info tooltip_notify top_tool_bar traffic_counter trillian_message_history_importer tweak_miranda tweak_ui typing_notify unicode_history_viewer updater user_info_ex user_notes version_info wa_track wassup weather web_aware web_pager web_sms web_view webcam wikify window_start_position winpopup_proto world_time ya_relay yahoo yamn_pop_file yamn_tweety yapp yet_another_mail_notifier zero_notifications

; FLID: French Language Pack 0.06.08.14

[Send nudge]
Envoyer un wizz
[nudge recevied]
Wizz reçu
ETC.........
et la tout est aussi inclus (logique là )

essayez-vous même

Auriez-vous une idée pour résoudre mes problèmes ? (surtout le 2 :oops: ) :?

Je vous en remerci d'avance. :idea:
 
WRInaute discret
OK, probleme 1) fixé :O (merci à Lacteus @freenode )

remplacer :
function check_structure () {
$files_langpack=read_dir();
$files_langpack_sort=sort($files_langpack);

$i=0;
unset($langpack_francais);
for ($i=0;$i < sizeof($files_langpack);$i++){
$file=ereg_replace("(\.txt)$","",$files_langpack[$i]);
if (ereg("(\.txt)$",$files_langpack[$i])){
// echo '<b>'.$files_langpack[$i].'</b>';
if(ereg("^(core)",$files_langpack[$i])) {
$core=read_langpack($files_langpack[$i]); // langpack core -> $core
$core=remove_non_lp($core); // alles nicht <file>...</file> raus
$flg_error=check_file($core, 0,$files_langpack[$i]);
if ($flg_error) {echo '<a href="doku.php?id=langpack:'.$file.'" target="_blank">'.$file.'</a> - <font color="red">Erreur(s) trouvée(s)</font><br />';}
else{echo'core - <font color="green">OK</font><br />';}
unset($core);
}
else {
$files=ereg_replace("(\.txt)$","",$files_langpack[$i]);
$flg_ok=1;
//var_dump($_POST);
if(isset($flg_ok) or isset($_POST['alles'])) {
//echo $i.": ".$files."<br />";
unset($langpack);
$langpack=read_langpack($files_langpack[$i]);
$langpack=remove_non_lp($langpack);
$flg_error=check_file($langpack, 0,$files_langpack[$i]);

echo $file;
//echo $files_langpack[$i];
if ($flg_error>0) {echo ' - <font color="red">Erreur(s) trouvée(s)</font><br />';}
else{echo ' - <font color="green">OK</font><br />';}
}
} // else
}// end if
} // end for
if ($flg_error) {echo ' - '.$flg_error.' Erreur(s) trouvée(s). Le langpack n\'est probablement pas valide ';}
else{ echo'<br />Le contrôle s\'est passé sans erreurs. <a href="creer_langpack.php">Retour au choix des Plugins </a>';}
if (isset($flg_error)){return($flg_error);}
} // end func

par :
function check_structure () {
$files_langpack=read_dir();
$files_langpack_sort=sort($files_langpack);
$check_error = 0;
$i=0;
unset($langpack_francais);
for ($i=0;$i < sizeof($files_langpack);$i++){
$file=ereg_replace("(\.txt)$","",$files_langpack[$i]);
if (ereg("(\.txt)$",$files_langpack[$i])){
// echo '<b>'.$files_langpack[$i].'</b>';
if(ereg("^(core)",$files_langpack[$i])) {
$core=read_langpack($files_langpack[$i]); // langpack core -> $core
$core=remove_non_lp($core); // alles nicht <file>...</file> raus
$flg_error=check_file($core, 0,$files_langpack[$i]);
if ($flg_error) {
echo '<a href="doku.php?id=langpack:'.$file.'" target="_blank">'.$file.'</a> - <font color="red">Erreur(s) trouvée(s)</font><br />';
// --- modif lacteus
$check_error += $flg_error;
}
else{echo'core - <font color="green">OK</font><br />';}
unset($core);
}
else {
$files=ereg_replace("(\.txt)$","",$files_langpack[$i]);
$flg_ok=1;
//var_dump($_POST);
if(isset($flg_ok) or isset($_POST['alles'])) {
//echo $i.": ".$files."<br />";
unset($langpack);
$langpack=read_langpack($files_langpack[$i]);
$langpack=remove_non_lp($langpack);
$flg_error=check_file($langpack, 0,$files_langpack[$i]);

echo $file;
//echo $files_langpack[$i];
if ($flg_error>0) {
echo ' - <font color="red">Erreur(s) trouvée(s)</font><br />';
// --- modif lacteus
$check_error += $flg_error;
}
else{echo ' - <font color="green">OK</font><br />';}
}
} // else
}// end if
} // end for
// --- modif lacteus
if ($check_error) {echo ' - '.$check_error.' Erreur(s) trouvée(s). Le langpack n\'est probablement pas valide ';}
else{ echo'<br />Le contrôle s\'est passé sans erreurs. <a href="creer_langpack.php">Retour au choix des Plugins </a>';}
if (isset($check_error)){return($check_error);}
} // end func


plus que le probleme 2 :/
 
Discussions similaires
Haut