PHP - MySQL (Freundschaftsanfrage "Benachrichtigung)?

3 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Ich würde Anfragen und tatsächliche Freundschaften in zwei verschiedenen
Tabellen festhalten, einfach aus dem Grund der Übersichtlichkeit und
eventueller anderer Statusabfragen (Anfrage abgelehnt, Anfragen komplett
geblock, ohne Freunde zu sein, Anfrage neu angenommen, etc.).

Facebook macht das mittlerweile mit PUSH-Benachrichtigungen, ansonsten kannst du auch einfach bei jedem Neuladen einer Seite prüfen, ob eine neue Anfrage vorliegt.

Dritte Möglichkeit ist per AJAX (z. B. mit jquery) eine Anfrage mit timeout zu machen, z.B.:

function checkFriendRequests(){
$.ajax({
type: "POST",
url: "ajax/check_friend_requests.php",
success: function(antwort){
//Mach was mit der Antwort, z.B. ein Popup-Fenster anzeigen
}
});
}

//Alle 10 Sekunden checkFriendRequests ausführen
setInterval (checkFriendRequests, 10000);

Danke für die ausführliche Antwort!

Ich habe jedoch nicht sehr viel mit Ajax am Hut.

der Reiter "success" ist wahrscheinlich dazu da, die Funktion antwort aus zu führen sobald die Abfrage funktionierte (?)

Aber wie muss dann die check_friend_request.php aussehen? die SQL abfrage kommt natürlich dort hinein aber wie ist der Aufbau bzw. was muss die Datei beeinhalten, um Ajax so zu sagen bescheid zu geben das die Funktion antwort ausgeführt werden soll?

(ich hoffe man versteht mein Problem, Ajax war bisher noch nie sonderlich präsent bei mir daher leider auch kaum Erfahrung)

0

dann musst du es umdesignen

verschiebe die offenen anfragen in eine eigene tabelle, und du bist das problem los.

Index auf die UserID und nur diejenigen Datensätze abfragen, die die entsprechende UserID haben (... WHERE user_x = $eingeloggter_user)

beschleunigt das setzen des Index auf dem UserID die Abfrage?

PS: Ich bin nun auf ein kleines Problem gestoßen. Ich muss ja kontinuirlich die Datensätze abfragen. Aber PHP arbeitet lediglich von oben nach unten ab bzw. nicht dynamisch... wüsstest du da eventuell ein paar vorgehensweisen?

0
@derhierxD

mit ajax

bei richtiger Umsetzung hast du den ajax code aude der website

der immer wieder eine seite anfordert, und die dann via DOM auf deiner seite aktualisiert.

0

Was möchtest Du wissen?