Meowsalot: User direkt ansprechen und abspeichern

Beitrag lesen

Hallo alle,

ich habe ein kleines Problem. Auf meiner Seite können User sich untereinander Nachrichten schicken. Diese werden so abgespeichert

if(isset($_POST['abschicken_nachricht'])){

    if ($stmt = $mysqli->prepare("INSERT INTO nachrichten (tID, userID, nachricht) 
                                      VALUES (?, ?, ?)"))
       { 
        
        $tID      	 = $_GET['code'];
        $userID      = $UserDaten->userCode;
        $nachricht   = $_POST["nachricht"];

        $stmt->bind_param("sss", $tID, $userID, $nachricht);
        
        $stmt->execute();
        }
    else {
          echo $mysqli -> error;
    }
}

Klappt aus. Jetzt kann in $_POST["nachricht"] z.B. so etwas stehen:

Ich bin ein Test. @Test1 ist die Nachricht bei dir angekommen? @Test2 kannst du bitte noch ein Wasser mitbringen?

Jetzt kommt ein Problem wo ich nicht weiß wie ich es lösen kann. Wenn ein User direkt mit @ angesprochen wird, soll in eine weitere Tabelle ein Insert geschrieben werden. Das Insert ist kein Problem nur wie kann ich mit PHP Herausfinden ob ein User angesprochen wird? Das zweite Problem ich weiß nicht, wie viele User in einer Nachricht angesprochen werden.

Ich hoffe ihr versteht mein Problem?

Noch eine letzte Frage meinen Variablen z.B.

$tID = $_GET['code'];

Ich könnte in diesem Beispiel $_GET['code'] direkt an $stmt->bind_param übergeben. Wann ist es sinnvoll dieses zu tun bzw. wann ist es sinnvoll erst eine Variable anzulegen und diese dann an $stmt->bind_param zu übergeben?

Bis bald!
Meowsalot (Bernd)

akzeptierte Antworten