2014-07-22 6 views
-2
<?php 
include('changeLang.php'); 
$default_language = 'sr'; 
if(isset($_COOKIE['lang'])) { 
    $lang = $_COOKIE['lang']; 
} 
else { 
    $lang = $default_language; 
} 
if($lang == 'en') { 
    include('language_en.php'); 
} 
else { 
    include('language_sr.php'); 
} 
?> 

J'ai ajouté un nouveau chemin d'URL et je n'éjecte aucune erreur, Bien sûr, tout est dans le même dossier et il n'y a pas de sous-dossiers pour exclure immédiatement la possibilité. Je pense erreurMon code ne fonctionne pas en ligne

<script type="text/javascript"> 
function changeLanguage (lang) { 

    $.ajax({ 
     url: 'http://www.example.com/changeLang.php', 
     type: 'POST', 
     data:{ lang:lang }, 
     beforeSend: function(){ 

     }, 
     complete: function(){ 

     }, 
     success: function(data) {    
      console.log(data); 
      if(data == 'ok'){ 
       location.reload(); 
      } 
      //var response = JSON.parse(data); 
     }, 
     error: function(data, textStatus, errorThrown){ 
      console.log("error"+' '+JSON.stringify(data) + textStatus + errorThrown); 
     } 
    }); 
} 
</script> 

// dans le code

Mon mistke était href, parce que je mets href = "", la page rechargeait à des fonctions premières et onclick jamais été utilisé, donc je dois mettre javascript: void (0) et dans css curosr: pointeur pour div #flag ....

+0

Définir * ne fonctionne pas *. Quelle erreur obtenez vous ? Qu'as-tu débugué jusqu'ici? – Rikesh

+3

** Eww **. Personne ne va vous aider si vous n'essayez même pas de vous aider. Je vais vous donner un indice - affiner votre code à ce qui ne fonctionne pas et fournir les erreurs (* le cas échéant *) pour être aidé plus loin. – Darren

+0

Il serait utile si vous avez corrigé l'indentation sur le code afin qu'il ne saute pas dans et hors du formatage du code – TheEnvironmentalist

Répondre

1

Vous demandez changeLang.php, qui ne sera pas le nom du fichier en ligne. Vous aurez besoin du plein URL. La même chose s'applique aux fichiers image.

Par exemple, dans la section ajax du script, vous avez

$.ajax({ 
    url: 'changeLang.php', 

Au lieu de demander changeLang.php, ajouter au nom de fichier complet, comme http://www.example.com/site/changeLang.php. Cela spécifie le serveur que vous attendez de servir le fichier et où vous le savez.

Localement, il y a presque toujours un seul serveur, et souvent une structure de répertoires beaucoup plus simple, réduisant ces erreurs. Dès que vous le mettez en ligne, les erreurs apparaissent comme des erreurs. Souvenez-vous également que les paramètres de rapport d'erreurs pour un site en ligne seront généralement beaucoup plus sévères que ceux d'un environnement de développement. Vous voudrez peut-être vérifier votre fichier php.ini, à la fois localement et en ligne. Vous pouvez temporairement afficher tous les détails. Cela pourrait vous aider à comprendre le problème.

+0

** Uhhhhhh ** '->' Cela fonctionnera s'ils sont dans le même répertoire. – Darren

+1

Tout à fait raison, mais cela a fixé des problèmes de mon côté plus de fois que je peux compter. Suggestion utile puis – TheEnvironmentalist

+1

C'est exactement vrai :-) Peut-être mettre à jour votre réponse avec un exemple et une meilleure explication pour donner à OP une compréhension! – Darren