Utenti stranieri non vedono il sito
Moderatore: mod Generali
-
- membro Junior
- Messaggi: 35
- Iscritto il: 11/09/2006, 1:26
Utenti stranieri non vedono il sito
Ho verificato un problema a seguito delle segnalazioni di utenti che cercano di accedere al mio shop on-line.
In pratica viene restituito loro un errore (perché il browser è cpnfigurato per l'inglese o per altre lingue):
Warning: main(includes/languages/.php) [function.main]: failed to open stream: No such file or directory in /web/htdocs/www.aquariumline.com/home/catalog/inclu ... on_top.php on line 285
Fatal error: main() [function.require]: Failed opening required 'includes/languages/.php' (include_path='.:/php/lib/php/') in /web/htdocs/www.aquariumline.com/home/catalog/inclu ... on_top.php on line 285
Qualcuno può aiutarmi? Non sò proprio cosa fare anche perché il PHP npn lo mastico ...
Grazie per l'aiuto che vorrete darmi
In pratica viene restituito loro un errore (perché il browser è cpnfigurato per l'inglese o per altre lingue):
Warning: main(includes/languages/.php) [function.main]: failed to open stream: No such file or directory in /web/htdocs/www.aquariumline.com/home/catalog/inclu ... on_top.php on line 285
Fatal error: main() [function.require]: Failed opening required 'includes/languages/.php' (include_path='.:/php/lib/php/') in /web/htdocs/www.aquariumline.com/home/catalog/inclu ... on_top.php on line 285
Qualcuno può aiutarmi? Non sò proprio cosa fare anche perché il PHP npn lo mastico ...
Grazie per l'aiuto che vorrete darmi
e' un problema noto di oscommerce.
se non hai la lingua installata lui non riesce a visualizzare la pagina.
qualcuno sa dell'esistenza di una patch ?
io ho risolto cosi' :
in application_top.php (catalogo ed admin)
ho modificato il codice in modo che se non ha nessuna lingua mette l'inglese:
non e' una soluzione completa... ma funziona.
unico problema mette la lingua inglese tutte le volte apri il sito, poi tu lo cambi in italiano.
se non hai la lingua installata lui non riesce a visualizzare la pagina.
qualcuno sa dell'esistenza di una patch ?
io ho risolto cosi' :
in application_top.php (catalogo ed admin)
ho modificato il codice in modo che se non ha nessuna lingua mette l'inglese:
Codice: Seleziona tutto
// set the language
if (!tep_session_is_registered('language') || isset($_GET['language'])) {
if (!tep_session_is_registered('language')) {
tep_session_register('language');
tep_session_register('languages_id');
}
include(DIR_WS_CLASSES . 'language.php');
$lng = new language();
if (isset($_GET['language']) && tep_not_null($_GET['language'])) {
$lng->set_language($_GET['language']);
} else {
$lng->get_browser_language();
}
$language = $lng->language['directory'];
$languages_id = $lng->language['id'];
}
// include the language translations
// correct missed language in admin
if ($language == null) $language = 'english';
// end missed language
require(DIR_WS_LANGUAGES . $language . '.php');
$current_page = basename($PHP_SELF);
if (file_exists(DIR_WS_LANGUAGES . $language . '/' . $current_page)) {
include(DIR_WS_LANGUAGES . $language . '/' . $current_page);
}
unico problema mette la lingua inglese tutte le volte apri il sito, poi tu lo cambi in italiano.
Home page personale http://www.magnino.net
SVN aggiornamenti http://code.google.com/p/oswai/source/browse/#svn/trunk
SVN aggiornamenti http://code.google.com/p/oswai/source/browse/#svn/trunk
forse un'alternativa piu' valida sta' nel sostituire il codice postato prima
con questa variante :
direi che e' piu' efficace.
ma se qualcuno ha qualche suggerimento in merito spari pure
Codice: Seleziona tutto
// correct missed language in admin
if ($language == null) $language = 'english';
// end missed language
Codice: Seleziona tutto
// correct missed language in admin
if (!is_file(DIR_WS_LANGUAGES . $language . '.php')) {
$language = 'english';
}
// end missed language
ma se qualcuno ha qualche suggerimento in merito spari pure
Home page personale http://www.magnino.net
SVN aggiornamenti http://code.google.com/p/oswai/source/browse/#svn/trunk
SVN aggiornamenti http://code.google.com/p/oswai/source/browse/#svn/trunk
- essevi2001
- membro Baby
- Messaggi: 60
- Iscritto il: 26/12/2006, 18:33
i file sono propio quelli, scusa se sono stato troppo generico.
Home page personale http://www.magnino.net
SVN aggiornamenti http://code.google.com/p/oswai/source/browse/#svn/trunk
SVN aggiornamenti http://code.google.com/p/oswai/source/browse/#svn/trunk
-
- membro Junior
- Messaggi: 35
- Iscritto il: 11/09/2006, 1:26
Innanzi tutto ringrazio per l'aiuto.
Nel suggerimento fornito non capisco quando si verifica il problema?
In pratica $language == null quando si verifica?
Si verifica forse quando il browser dell'utente visitatore non trasmette l'informazione sulla lingua?
E allora perché non metterci:
if ($language == null) $language = 'italian'; ?
Ho forse detto una cosa sbagliata? Se sì fatemi capire dove sbaglio
Nel suggerimento fornito non capisco quando si verifica il problema?
In pratica $language == null quando si verifica?
Si verifica forse quando il browser dell'utente visitatore non trasmette l'informazione sulla lingua?
E allora perché non metterci:
if ($language == null) $language = 'italian'; ?
Ho forse detto una cosa sbagliata? Se sì fatemi capire dove sbaglio
-
- membro Junior
- Messaggi: 35
- Iscritto il: 11/09/2006, 1:26
Ragazzi scusate se ritorno sull'argomento ma ho rilevato un problema.
In particolare con riferimento al codice:
nel mio file non mi ritrovo il pezzo di codice:
Devo aggiungerlo? oppure fa' parte di una personalizzazione?
In particolare con riferimento al codice:
Codice: Seleziona tutto
// include the language translations
// correct missed language in admin
if ($language == null) $language = 'english';
// end missed language
require(DIR_WS_LANGUAGES . $language . '.php');
$current_page = basename($PHP_SELF);
if (file_exists(DIR_WS_LANGUAGES . $language . '/' . $current_page)) {
include(DIR_WS_LANGUAGES . $language . '/' . $current_page);
}
Codice: Seleziona tutto
$current_page = basename($PHP_SELF);
if (file_exists(DIR_WS_LANGUAGES . $language . '/' . $current_page)) {
include(DIR_WS_LANGUAGES . $language . '/' . $current_page);
}
riepilogo per maggiore chiarezza, scusate la confusione:
in application_top.php
sia in /admin/includes/
che in /includes/
sostituite il seguente codice:
con questo:
il controllo funziona cosi':
se trova il file della stessa lingua del browser lo usa, se non lo trova mette inglese come default.
potete sostituire english con italian, ma per gli utenti esteri... io lascerei inglese.
in application_top.php
sia in /admin/includes/
che in /includes/
sostituite il seguente codice:
Codice: Seleziona tutto
// include the language translations
require(DIR_WS_LANGUAGES . $language . '.php');
Codice: Seleziona tutto
// include the language translations
// correct missed language in admin
if (! is_file(DIR_WS_LANGUAGES . $language . '.php')) {
$language = 'english';
}
// end missed language
require(DIR_WS_LANGUAGES . $language . '.php');
se trova il file della stessa lingua del browser lo usa, se non lo trova mette inglese come default.
potete sostituire english con italian, ma per gli utenti esteri... io lascerei inglese.
Home page personale http://www.magnino.net
SVN aggiornamenti http://code.google.com/p/oswai/source/browse/#svn/trunk
SVN aggiornamenti http://code.google.com/p/oswai/source/browse/#svn/trunk
il problema sorge quando tu hai un sito con una sola lingua installata.
esempio tu cancelli tutte le lingue e lasci solo l'italiano.
un cliente francese od inglese visita il sito e trova solo pagine d'errore invece di vedere il sito in italiano.
per correggere il bug basta apportare le modifiche al codice come ho indicato sopra.
se usi opera, firefox, nescape ed IE noterai che ogni tanto il problema delle lingue si manifesta.
esempio tu cancelli tutte le lingue e lasci solo l'italiano.
un cliente francese od inglese visita il sito e trova solo pagine d'errore invece di vedere il sito in italiano.
per correggere il bug basta apportare le modifiche al codice come ho indicato sopra.
se usi opera, firefox, nescape ed IE noterai che ogni tanto il problema delle lingue si manifesta.
Home page personale http://www.magnino.net
SVN aggiornamenti http://code.google.com/p/oswai/source/browse/#svn/trunk
SVN aggiornamenti http://code.google.com/p/oswai/source/browse/#svn/trunk
onestamente non ho provatomustafa ha scritto:anche se disabiliti la lingua dal pannello (localizzazione -> lingue )?
Home page personale http://www.magnino.net
SVN aggiornamenti http://code.google.com/p/oswai/source/browse/#svn/trunk
SVN aggiornamenti http://code.google.com/p/oswai/source/browse/#svn/trunk