PHP/Javascript

  • Vielleicht kennt sich der ein oder andere ja mit PHP und JavaScript aus. Auf meiner "Website" hab ich ein Nachrichten System, damit sich die User Nachrichten schicken können. Das funktioniert so weit auch alles. Jetzt habe ich aber eine Datei (userinclude.php), welche auf JEDER Seite ganz oben in einen DIV-Container includet wird. Unteranderem ist dort ein Feld mit Nachrichte: wie viele man hat. Wenn ein Benutzer jetzt eine Nachricht bekommt, soll sich die Zahl automatisch ändern, ohne das er die Seite neu laden muss. Wie bekommt man so etwas hin?

  • Die Frage ist, wie die nachricht verschickt wird.


    Wenn du, während die Nachricht verschickt wird, eine Push-Nachricht schickst, kannst du es in Echtzeit mit JS empfangen und dann die Zahl in dem Kasten um 1 erweitern.
    Wenn du jedoch keine Push-Nachricht schickst, musst du mit einem setInterval() alle paar Sekunden ein AJAX Request machen, welches von einer anderen Seite die Anzahl der Nachrichten ausliest.

  • Hier ein Beispiel für den zweiten Fall (jQuery wird benötigt):


    page.php

    JavaScript
    var messageAmount = xy; //hier soll vorher mit PHP der Wert ausgegeben werden (mysqli_num_rows)function getMessageAmount() {messageAmount = $.ajax("getMessageAmount.php");$('#messageAmount').html(messageAmount)}$(document).ready(function(e) {setInterval(getMessageAmount, 10000); //alle 10 Sekunden wird die oben geschriebene Funktion aufgerufen});


    getMessageAmount.php

    PHP
    $sqlRows = mysqli_num_rows($sql->query("SELECT * FROM blablabla"));
    echo $sqlRows;



    Und bitte schreib demnächst nicht "JAVA" in den Titel, Java und Javascript sind himmelweite Unterschiede!

  • funktioniert leider nicht
    Ich hab folgenden Code. Mach ich was falsch?

  • Bitte tu dir selber einen Gefallen und lerne Javascript oder lass es einfach weg, Pech gehabt.
    jQuery ist eine Library für JS, welche zum Beispiel ein AJAX Request vereinfachen kann (ich nehme an, dass du nicht weißt, was das ist).
    Außerdem scheinst du nicht zu wissen, was $('#id') verweist auf ein Element mit einer bestimmten ID (wenn jQuery inkludiert ist), allerdings denke ich, dass getElementById dir auch ncihts sagt.
    Und ich habe keine Lust, dir hier ein fertiges Programm vor die Nase zu setzen.