Ajax : problème (niveau Iut/Bts)

Ajax : problème (niveau Iut/Bts) - HTML/CSS - Programmation

Marsh Posté le 08-01-2013 à 20:41:39    

Bonjour à tous,
 
Voici deux énoncés sur lesquels je sèche,  
 
Question 1 :
- Faites un fichier (3 lignes) qui modifie les entêtes de réponse HTTP pour ajouter Content-Type: text/plain;charset=UTF-8, et renvoie un texte de votre choix (par exemple la date, ou Hello world)
 
Ce fichier sera référé par la suite par texte.php
Utile: echo, header (PHP)
 
Question 2 :
- Faites une page qui comprend uniquement une zone cliquable (faite comme vous le voulez, un paragraphe marqué Cliquez suffit bien). Lorsque l'on clique sur cette zone, le texte renvoyé par texte.php est ajouté au corps du document.
Vous le ferez de trois façons successivement: $.get, $.ajax (avec gestion des erreurs), $('#monparagraphe').load(...).
 
Ce que j'ai fait :  
 
Question 1 :  
 

Code :
  1. <?php
  2. header("Content-Type: text/plain;charset=UTF-8" );
  3. echo 'hello word';
  4. ?>


 
Problème ==> Malgré mes recherches un peu partout, impossible de savoir/comprendre ou s'effectue le changement d'entête.
J'ai bien cherché avec la console javascript mais pas de changement visible.
 
Question 2 :  
 

Code :
  1. $(function(){
  2. $('p').click(cible);
  3. function cible(){
  4. $.get("text.php", function(data){
  5.    $('p').text("Data Loaded: " +   data);
  6. });
  7. }
  8. });


 
Problème ==> Le code récupérer n'est pas interprété, je m'y attendais plus ou moins mais je n'arrive pas précisément à comprendre pourquoi n'y comment régler ça.


Message édité par Zhales le 09-01-2013 à 09:50:01
Reply

Marsh Posté le 08-01-2013 à 20:41:39   

Reply

Marsh Posté le 09-01-2013 à 00:41:12    

1] regarde l'onglet réseau de firebug, clique sur ta requête GET et analyse les entêtes de la réponse.
 
Essaye de passer de faux headers du genre X-Pouet: Toto et regarde si t'arrives à les retrouver dans les headers.
 
2] Passe l'url complète de la ressource : http://........./text.php
Et utilise $.ajax, c'est quand même vachement mieux, tu peux controler tous les paramètres.


---------------
Directeur Technique (CTO)
Reply

Marsh Posté le 09-01-2013 à 09:36:06    

Merci pour ta réponse j'ai trouvé ou se modifiait l'entête, par contre le code php se renvoie en balises avec $.ajax et $.get.
Je suis d'accord avec toi je préfère aussi le $.ajax mais la consigne demande les 3 méthodes.
Avec load par contre c'est nickel le php est interprété.


Message édité par Zhales le 09-01-2013 à 09:51:35
Reply

Marsh Posté le 09-01-2013 à 11:51:01    

comment accèdes-tu à la page qui contient le javascript?
 
Etant donné que ce dernier va chercher le fichier "text.php", il va utiliser le même emplacement que la page qui le contient
 
Donc si tu utilises file:///....../test.html par exemple, le code javascript va chercher le fichier file:///...../text.php
 
En accédant au fichier directement, le code PHP ne sera pas interprété et le javascript va recevoir le fichier tel quel (avec les balises <?php etc...)
 
Pour que le php soit interprété, il faut passer par un serveur web, et donc que l'adresse utilisée soit du style http://localhost/test.html


---------------
Origin / PSN / Steam / Uplay : x1fr - bnet : Fab#2717
Reply

Sujets relatifs:

Leave a Replay

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