Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1489 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Javascript PHP et innerhmtl

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Javascript PHP et innerhmtl

n°1717470
johnson950
Posté le 14-04-2008 à 20:22:48  profilanswer
 

Bonjour,
 
Je développe actuellement une page qui lorsque je clique sur un titre d'une listbox, affiche un tableau.
 
Pour ce faire j'utilise la fonction onChange.
 
Cependant pour construire le tableau que je dois afficher je dois parser des fichiers binaires qui se trouve sur le serveur. J'ai crée des fonctions PHP pour faire cela cependant d'après certaines sources (trouvé sur Internet) cela n'est pas possible.
 
après certaine recherche j'ai trouvé la fonction "innerhtml" et j'ai fais des tests et ca fonctionne.
 

Code :
  1. <html><head><title>Test</title>
  2. <script type="text/javascript">
  3. <!--
  4. function modifier() {
  5. document.getElementById('monparagraphe').innerHTML = "<?php
  6.          $fp=fopen('data.txt','r');
  7. $donnees = fgets($fp,255);
  8. fclose($fp);
  9. echo 'Le fichier contient : '.$donnees;
  10. echo"<table border='1'><tr><td>test</td><td>test1</td></tr><tr><td>test2</td><td>test3</td></tr></table>";
  11. ?>";
  12. }
  13. //-->
  14. </script>
  15. </head>
  16. <body>
  17. <p id="monparagraphe">Texte</p>
  18. <a href="javascript:modifier()">autre texte</a>
  19. </body>
  20. </html>


 
Je voudrais donc savoir si il était possible à la place de l'ensemble des instructions php d'inclure un fichier qui contient la fonction PHP qui fournira le tableau.
 
Ainsi que la raison pour laquel tout le monde dit que cela fonctionne pas alors que le code ci dessus marche très bien.
 
 
Merci

mood
Publicité
Posté le 14-04-2008 à 20:22:48  profilanswer
 

n°1717483
johnson950
Posté le 14-04-2008 à 21:24:33  profilanswer
 

si quelqu'un a besoin, voici le code :

Code :
  1. <html><head><title>Test</title>
  2. <script type="text/javascript">
  3. <!--
  4. function modifier() {
  5. var mavariable = "<?php require_once 'test.php'; ?>";
  6. document.getElementById('monparagraphe').innerHTML = mavariable;
  7. }
  8. //-->
  9. </script>
  10. </head>
  11. <body>
  12. <p id="monparagraphe">Texte</p>
  13. <a href="javascript:modifier()">autre texte</a>
  14. </body>
  15. </html>

n°1717495
johnson950
Posté le 14-04-2008 à 22:32:55  profilanswer
 

Cependant je n'ai pas eu la réponse a ma deuxième question :
 
Comment se fait il que le code fonctionne vu que le serveur devrait être exécuté uniquement au chargement de la page !
 
Merci

n°1717589
gatsu35
Blablaté par Harko
Posté le 15-04-2008 à 10:24:52  profilanswer
 

heu ça t'es jamais venu à l'esprit de regarder le code source généré (genre clic droite afficher le code source de la page dans ton navigateur)
et là tu regardes et tu comprendras pourquoi ca marche.
 
Un d'une part tu appeles ta fonction php pendant le chargement de la page, et donc tout le bouzin est contenu dans une variable JS (cf code source de la page).
 
Le mieux pour ce que tu cherches à faire (charger le contenu seulement au clic de la souris) c'est de passer par une requete AJAX)

n°1718034
johnson950
Posté le 15-04-2008 à 18:02:55  profilanswer
 

Merci pour tes informations et je me suis mis a Ajax !

n°1718627
Opera140
Posté le 16-04-2008 à 15:10:37  profilanswer
 

Salut !
 
J'ai un problème du même genre.
 
Sur ma page d'index j'ai :

Code :
  1. <div id="login">
  2.  <?php
  3.   if(isset($_SESSION['login']))
  4.    include('logged.php');
  5.   else
  6.    include('logform.php');
  7.  ?>
  8. </div>


Où "logform.php" contient mon formulaire d'identification.
 
J'ai ensuite un script de vérification :

Code :
  1. function verifLogin()
  2. {
  3. var username = encodeURI(document.logform.user.value);
  4. var password = encodeURI(document.logform.pass.value);
  5. var xhr;
  6. try
  7. {
  8.      xhr = new ActiveXObject("Microsoft.XMLHTTP" );    // essayer Internet Explorer  
  9. }
  10. catch(e)   // Echec
  11. {
  12.     xhr = new XMLHttpRequest() // Autres navigateurs
  13. }
  14. xhr.open('get','login.php?user='+username+'&pass='+password);
  15. xhr.onreadystatechange = function()
  16. {
  17.  if(xhr.readyState == 4)
  18.  {
  19.   var reponse = xhr.responseText;
  20.   if(reponse == 0)
  21.   {
  22.    document.getElementById('login').innerHTML = '<?php include(\'logged.php\'); ?>';
  23.   }
  24.   else
  25.   {
  26.    window.alert('Echec d\'authentification');
  27.    document.getElementById('login').innerHTML = "<?php include(\'logform.php\'); ?>";
  28.   }
  29.  }
  30. };
  31. xhr.send(null);
  32. }


 
Cependant, les includes ne fonctionnent pas.
Je me dis que c'est surement parce que je suis en AJAX coté client et que donc je ne peut pas utiliser de php, mais à ce moment là, je ne vois pas comment faire ...

n°1720276
sanaa_elja​dida
Posté le 19-04-2008 à 15:18:11  profilanswer
 

bonjour, je sens que c'est pas juste de vous poser une question au moment ou vous attendez des réponses,
mais il parait que vous êtes tres fort que moi en ça,bref, j'ai une page html ou en dois entrer un login et un mot de passe("pour simplifier un seul) si c correcte il vas me lancer une autre page html où il ya un menu.....
comment faire? sans etre besoin de creer une table compte dans la base de donnée....et d'y acceder pour la vérification . je veux tt simplement un code qui fait la verification avec un login et mot de passe donnés.
merci pour votre temps


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Javascript PHP et innerhmtl

 

Sujets relatifs
RESOLU PHP lecteur mp3 / lire mp3 a partir d'un dossierINSERT PHP/ACCESS
Probleme d'apostrophe en javascriptFlash - Php - MySQL
Integrer un module de traitement de texte en PHP/HTML500 Internal Server Error lors d'une erreur PHP
petit javascript simple pour vérifier qu un site est on-line ?création de statistiques mensuelles en PHP/MySQL
[PHP] pbm fonction "public static" 
Plus de sujets relatifs à : Javascript PHP et innerhmtl


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR