inclure un fichier php avec javascript

inclure un fichier php avec javascript - HTML/CSS - Programmation

Marsh Posté le 22-07-2008 à 11:27:20    

Bonjour à tous,  
 
je dois faire une mise en page différente suivant la résolution de l'écran.  
voici mon code.

Code :
  1. <script language="JavaScript">
  2.   var w = screen.width;
  3.   if(w < 1440){document.write("<br><img src='img/espace_emploi_petit.gif' border='0'><br><img src='img/nos_occasions_petit.gif' border='0'><br><img src='img/groupe_distribution_petit.gif' border='0'><br><img src='img/signature_petit.gif' border='0'><br>" );}
  4.   if(w >= 1440){document.write("<br><img src='img/espace_emploi.gif' border='0'><br><img src='img/nos_occasions.gif' border='0'><br><img src='img/groupe_distribution.gif' border='0'><br><img src='img/signature.gif' border='0'><br>" );}
  5.  </script>


en plus de ce chargement d'image je voudrais inclure un fichier php.  
si c'est <1440 le fichier s'appelle "menu_petit.php" sinon c'est "menu" tout court.  
j'ai essayé de mettre "include('menu.php') dans document.write mais ça ne fonctionne pas. Comment je peux faire?

Reply

Marsh Posté le 22-07-2008 à 11:27:20   

Reply

Marsh Posté le 22-07-2008 à 12:48:07    

Salut,
Je vais peut-être dire une bêtise mais je pense que ça ne marche pas car ton code JS est exécuté sur ton pc et non sur le serveur donc il ne peut pas interpréter du PHP et par conséquent inclure ta page. Il faudrait utiliser de l'AJAX pour cela.

Reply

Marsh Posté le 22-07-2008 à 13:36:05    

@jenny50 :
 
Comme l'a dit Deamon, le code JS est exécuté en client-side, ça ne marchera pas (au passage le fait que tu poses cette question montre que tu n'as pas saisis les fondements client / serveur).
 
Ensuite, faire un ajustement de mise en page selon la résolution de l'utilisateur est une très mauvaise idée :
 
- si le JS n'est pas activé sur le browser de l'utilisateur, ça ne fonctionnera pas
- il faut savoir que des visiteurs dispose d'un écran en mode retourné vertical, donc ton estimation selon la largeur d'écran se trouve complètement biaisée
 
Ceci dit si vraiment tu comptes pondre ce genre de solution :
 
- écrire un script qui récolte les params côté client et fait une redir automatique vers une page php qui va récupérer les params
- une fois les params récupérés côté serveur, adapter le code selon le style désiré avant de l'envoyer au client


---------------
Easy Ridin'  ⎝⏠⏝⏠⎠  
Reply

Marsh Posté le 23-07-2008 à 17:45:10    

ok je te remercie ANViL... comment tu fais toi pour faire une mise en page qui aille sur tous les écrans si tu ne fais pas selon la résolution?
 
C'est dommage de faire tout dans un 800*600 quand on sait que la plus part des écrans sont plus grand.

Reply

Marsh Posté le 23-07-2008 à 18:02:23    

Essaye de faire un include d un php avec en paramètre la resolution de l ecran et dans le script php tu fais ton traitement...
 
Mais bon tout retailler pour chaque resolution t as pas fini, les sites en 800*600 ca existe plus, tu bosses en 1024*768 c est tres bien pour 99% des utilisateurs d ordi (je parles pas des mobiles...)


Message édité par Oreste le 23-07-2008 à 18:04:11
Reply

Marsh Posté le 23-07-2008 à 21:27:10    

et CSS, ça existe ... ça permet de faire un site sémantique, et selon les styles CSS, de s'adapter au type de média (imprimante, écran, pda ...)


---------------
NewsletTux - outil de mailing list en PHP MySQL
Reply

Marsh Posté le 25-07-2008 à 11:43:00    

jenny50 a écrit :

ok je te remercie ANViL... comment tu fais toi pour faire une mise en page qui aille sur tous les écrans si tu ne fais pas selon la résolution?
 
C'est dommage de faire tout dans un 800*600 quand on sait que la plus part des écrans sont plus grand.


 
Un layout fluide s'adapte à tout type de résolution s'il est bien conçu ;)


Message édité par ANViL le 25-07-2008 à 11:43:11

---------------
Easy Ridin'  ⎝⏠⏝⏠⎠  
Reply

Marsh Posté le 25-07-2008 à 14:56:50    

j'utilisais le CSS mais je mettai un float à ma colonne centrale...
Je n'avais donc pas tout compris.
Merci pour l'astuce.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed