IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AJAX Discussion :

[AJAX] affichage en ajax


Sujet :

AJAX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Développeur Web
    Inscrit en
    Novembre 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2007
    Messages : 65
    Par défaut [AJAX] affichage en ajax
    Salut, je viens de faire une base de données dans laquelle existe 2 tables : Rubrique et sous_rubrique, afin d'afficher toutes les sous rubriques liées à chaque rubrique.

    Voici les champs de mes 2 tables:

    rubrique(id, nom).
    sous-rubrique(id, nom, id_rub) avec id_rub c'est l'identifiant de chaque rubrique.

    Comment j'ai procédé ?

    1- Récupérer l'id du rubrique en cliquant ci-dessus dans une variable last_id.
    2- Envoyer cette variable avec $.ajax au même page (catégories.php).
    3- les requêtes nécessaires.

    Voici mon code:

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    <?php
    require('connect.php');
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
    <link href="css/style.css" rel="stylesheet"/>
    <head>
       <script src="js/jquery.js"></script>
       <script>
            $(document).ready(function() {
              $('.link').click(function(){
                $.ajax({
                   type: 'GET',
                   url: 'categories.php',
                   data: 'last_id='+$(this).attr('id'),
     
                   success: function(data){
                     $('#sousRubriques').html(data);
                   };
                });
                }); 
            });
       </script>
    </head>
    <body>
        <div id="box">
        <div id="rubriques">
          <?php
          $req = $bdd->prepare('select * from rubrique');
          $req->execute();
          echo '<table class="categories">';
          while($data = $req->FETCH(PDO::FETCH_OBJ)):?>
                <tr> <td><img height=29; width=32; src="images/categories/<?php echo $data->id.'.png'?>" /></td> <td><p class="link" id="<?php echo $data->id;?>"><?php echo $data->nom; ?> </p></td> </tr>
          <?php endwhile;
          echo '</table>';
          $req->closeCursor();?>
        </div>
        <div id="sousRubriques">
          <?php
     
            if(!empty($_GET['last_id'])){
                $last_id = striptags($_GET['last_id']);
                $req = $bdd->prepare('SELECT * FROM sous_rubrique WHERE "id_rub" like :last_id');
                $req->execute(array(':last_id'=>$last_id));
                 echo '<ul>';
                 while($data = $req->FETCH(PDO::FETCH_OBJ)):?>
                   <li><?php echo $data->nom;?></li>
                 <?php endwhile;
                 echo '</ul>';
                 $req->closeCursor();
            }
            else{
                header('Location: categories.php');
            }
     
          ?>
        </div>
        <div style="clear:both;"></div>
        </div>
    </body>
    </html>

    avec connect.php contenant le script (PDO) connectant au base de données.

    L'erreur affiché:

    Cette page Web présente une boucle de redirection.
    La page Web à l'adresse http://127.0.0.1/test/categories.php a déclenché trop de redirections. Pour résoudre le problème, effacez les cookies de ce site ou autorisez les cookies tiers. Si le problème persiste, il peut être dû à une mauvaise configuration du serveur et n'être aucunement lié à votre ordinateur.
    Voici quelques suggestions :
    Reload this web page later.
    En savoir plus sur ce problème.
    Erreur 310 (net::ERR_TOO_MANY_REDIRECTS) : Trop de redirections

    Svp aidez moi, et merci d'avance.

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 139
    Par défaut
    A mon avis c'est ta redirection
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    header('Location: categories.php');
    qui t'embête. Tu dois tomber dedans en permanence puisque tu testes si ta variable n'est pas vide, et qu'avec ta redirection, elle est toujours vide.

    Ta page est à mon avis mal structurée également ... ton appel ajax est ta propre vue ...
    Tu devrais faire une vue avec une liste déroulante pré-remplie par les rubriques et une action qui cherche les sous-rubriques lorsqu'on change de rubrique et qui peuple la deuxieme liste déroulante. Cette action serait un appel Ajax vers une autre méthode qui ne ferait QUE ça (te retourner les éléments de sous rubrique en fonction de la clé de la rubrique)

Discussions similaires

  1. [AJAX] affichage avec Ajax
    Par Wizard50 dans le forum AJAX
    Réponses: 1
    Dernier message: 29/03/2010, 07h46
  2. [AJAX] Affichage PeriodicalUpdater Ajax
    Par Tsoko dans le forum AJAX
    Réponses: 2
    Dernier message: 21/05/2009, 08h33
  3. [AJAX] Affichage résultat ajax.request quand load page
    Par marcolet.pierre dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 05/01/2008, 16h27
  4. [AJAX] Affichage avec AJAX
    Par bernylap dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 11/10/2007, 16h55
  5. [AJAX] Affichage en Ajax
    Par RichardP dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 03/05/2007, 16h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo