kolla efter nya meddelande utan siduppdatering?

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • voigtann1
    Forumvärd
    • 2001-06-14
    • 8810

    #46
    ajax.php retunera absolut inget... så vad vill du presentera ifrån den? du spara bara ner resultatet i en variabel (php variabel) som javascript ALDRIG kan komma åt. därför om du skapa en fil som 1. kör din sql fråga och 2. skriver ut din variabel som en text så är du mer eller mindre klar.

    sedan i page.php har jag $newpm för att skriva ut värdet för antal meddelande..
    Ja, men det har ju inget med ditt AJAX anrop till ajax.php att göra, ajax.php ajax anropet kommer retunera vad ajax.php retunera.... vilket inte retunera något som kan presenteras... du gör bara din SQL anrop men ge aldrig något tillbaka från servern som gå att presentera. Därför hade det varit bättre att ha en helt egen sida som kan presentera det ajax.php generera, om den heter ajax2.php eller något vettigare namn spelar ingen roll så länge det är den filen som AJAX anropet gå till.

    En annan sak, så kan du ju använda dig av SQL COUNT() så slipper du räknar rader (och kommer bli betydligt snabbare än att hämta alla olästa inlägg rad per rad.
    "det går inte att lära en gammal norrlänning byta namn på irc" - gammalt kinesiskt uttryck

    Comment

    • vagann
      Medlem
      • 2011-07-18
      • 167

      #47
      jaha , nu har jag gjort såhär att jag la till
      PHP Code:
      echo $newpm 
      
      vilket har nu retunerat värdet 0, vilket är bra .... men nu har det blivit så att hela #userbar försvinner så fort det retunerar värdet. strukturen i body.php verkar vara bra
      PHP Code:
          <div id="userbar"><script type="text/javascript">
      var checkForMessages = function() {
          $.get("/ajax.php", function(data) {
              $("#userbar").html(data);
              check = setTimeout(checkForMessages, 6000);
          });
      };
      var check = setTimeout(checkForMessages, 6000);
      </script><?php echo $page_userbar; ?></div>

      Comment

      • voigtann1
        Forumvärd
        • 2001-06-14
        • 8810

        #48
        Originally posted by vagann
        jaha , nu har jag gjort såhär att jag la till
        PHP Code:
        echo $newpm 
        
        vilket har nu retunerat värdet 0, vilket är bra ....
        Läs hela mitt inlägg, varför du bör ha en helt egen sida för ajax anropet och en som behåller den funktion du har idag (även om man borde se över hela koden och göra den något mer generell kanske).
        "det går inte att lära en gammal norrlänning byta namn på irc" - gammalt kinesiskt uttryck

        Comment

        • vagann
          Medlem
          • 2011-07-18
          • 167

          #49
          jag har inte en helt sidan bara för anropet utan har anropet i html strukturen där den bör visas och sedan har jag lagt funktionen i ajax.php för att har jag det i page.php då laddas page.php flera gånger in i andra filer som tex profile.php, jag vill att det endast laddar funktionen

          Comment

          • voigtann1
            Forumvärd
            • 2001-06-14
            • 8810

            #50
            Då måste varje fil vara helt självständiga... Och returnera det du vill presentera med AJAX.
            "det går inte att lära en gammal norrlänning byta namn på irc" - gammalt kinesiskt uttryck

            Comment

            • vagann
              Medlem
              • 2011-07-18
              • 167

              #51
              det är ju självständiga eller hur menar du, det jag returnera är värdet från funktionen i ajax.php med hjälp med ajax och det funkar bra , hittills är det som jag vill ha det men saken är att den resrätter länk listan $page_userbar , jag att den endast lägger till värdet till $page_userbar

              Comment

              • voigtann1
                Forumvärd
                • 2001-06-14
                • 8810

                #52
                Och hur skall ett klientspråk som JavaScript hitta en server variabel som PHP skapat utan att du ha en fil som skriver ut den till något javascript kan presentera?
                "det går inte att lära en gammal norrlänning byta namn på irc" - gammalt kinesiskt uttryck

                Comment

                • vagann
                  Medlem
                  • 2011-07-18
                  • 167

                  #53
                  kan visa med koder ? vore underbart

                  Comment

                  • voigtann1
                    Forumvärd
                    • 2001-06-14
                    • 8810

                    #54
                    Originally posted by vagann
                    kan visa med koder ? vore underbart
                    Originally posted by voigtann1
                    men för att lösa ditt problem något sådär så kan du ju skapa ajax2.php som inkludera include('pages/config.php'); och din ajax.php fil och sen kör du en echo mot din variabel $newpm
                    du måste få ut $newpm från servern till klienten för att kunna presentera den.

                    eller så ser du att jquery ajax (och andra ramverk skickar med en header HTTP_X_REQUESTED_WITH med värdet xmlhttprequest som du skulle kolla på, om den är med så skall du köra echo $newpm annars inte i din ajax.php fil.
                    "det går inte att lära en gammal norrlänning byta namn på irc" - gammalt kinesiskt uttryck

                    Comment

                    Working...