Ankündigung

Einklappen
Keine Ankündigung bisher.

Mysql Frage

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Mysql Frage

    Hallo,

    Ich wollte bei meinem Nachrichtensystem in meiner COmmunity eine funktion für admins machen, dass sie eine nachricht an alle Mitglieder versenden können... nur ich frage mich wie / was muss ich machen, das jeder seine eigene nachricht bekommt... denn wenn ich alle user in eine zelle eintragen würde und es würde jemand diese nachricht löschen, dann könnte die ein anderer nicht mehr lesen...

    hat jemand ne idee...

  • #2
    Bei jedem user ein eintrag? ich kenne ja deine struktur nicht

    Kommentar


    • #3
      Du brauchst ne Tabelle wo die Mail Adressen drin sind die du dan per MySQL ausliest und mit einer while() schleife ab arbeitest.
      z.b.
      PHP-Code:
      $sql="SELECT adresse FROM mailliste";
      $res=mysql_query($sql);
      $header 'From: absender@domain.de' "\r\n" .
                    
      'Reply-To: absender@domain.de' "\r\n";
      while(
      $data=@mysql_fetch_object($res)){
              
      $empfaenger=$data->adresse;
              
      mail($empfaenger,$betreff,$nachricht,$header);

      So könnte man das ganz dirty machen, aber vergiss nciht die Verbindung zum SQL-Server das habe ich mir im Beispeil einfach ma geschenkt. Ebenso musst du $betreff und $nachricht noch irgenwo Deffinieren.

      *edit*
      Ich war grad auf euer Seit ihr solltet eure mails da nicht so öffentlich hinstellen da die sonst recht fix in den Stammlisten landen und ihr sicher schon genug Viagra und Co Spams erhaltet

      Kommentar


      • #4
        ich bezweifle, dass es um gewöhnliche emails geht

        Kommentar


        • #5
          Nach seinem Text hört sich das für mich wie ein Mailing an aber mit etwas Fantasie könnte er auch ein PM-System meinen.

          Kommentar


          • #6
            ja es soll nen pm system sein

            ich hab halt einmal den "Posteingang" und einmal den "Postausgang" und ich will es so machen, das jeder user dann seine eigene nachricht bekommt...

            Kommentar


            • #7
              was ist denn so schwer daran, eine nachricht an alle zu schicken?

              Kommentar


              • #8
                Dan brauchst du aber schon ne ganze Menge mehr...
                1. Eine Tabelle in der du Speicherst: Absender ID, Ziel ID, Nachricht, Titel, Zeit/Datum, /Gelensen/Ungelesen.
                2. Muss überprüft werden Habe ich die Mail versickt?
                Wenn ja Zeige sie im Ausgang.
                3. Ist die Mail für mich?
                Wenn ja zeige sie im Eingang vllt mit der Meldung "X neue Nachrichten"
                4. Habe ich die bereits Gelsen? Gelsen/Ungelesen Flag setzen

                Das währe so das gröbste...

                Kommentar


                • #9
                  nein ich meinte eig. das ich auswähle "alle user" und dann wird die nachricht allen angezeigt, ist aber auch nur persönlich für den user, also er kann sie löschen und sie danach nicht mehr sehen

                  wie das mit dem nachrichten verschicken geht weiß ich schon... es geht nur um das versenden an alle

                  Kommentar


                  • #10
                    Hallo!

                    Hier mal meine Tabellenstruktur von meinem PN System!

                    PHP-Code:
                    //Tabelle PNs
                    id_pn int(14auto_increment primary key,
                       
                    empf_id int(14not null default '0',//user id empfänger
                       
                    empf_name varchar(100not null default '',//username empfänger
                       
                    abs_id int(14not null default '0',//user id absender
                       
                    abs_name varchar(100not null default '',//username absender
                       
                    abs_dell int(1not null default '0',//löschen postausgang
                       
                    empf_dell int(1not null default '0',//löschen posteingang
                       
                    betreff varchar(100not null default '',
                       
                    datum int(10not null default '0',
                       
                    pntext text not null default '',
                       
                    gelesen int(1not null default '0'
                     
                    //Tabelle PN Meldungen
                    melde_id int(14auto_increment primary key,
                       
                    melde_post_id int(14not null default '0',
                       
                    poster_id int(14not null default '0',
                       
                    poster_name varchar(100not null default '',
                       
                    melder_id int(14not null default '0',
                       
                    melder_name varchar(100not null default '',
                       
                    melde_datum int(10not null default '0',
                       
                    post_text text not null default '',
                       
                    meldung_read int(1not null default '0' 
                    Die mit den Meldungen habe ich deshalb gemacht falls es Verstöße,Drohungen etc. gibt und gegebenfalls gehandelt werden kann. Die erste ist die Normale PN Tabelle!

                    [Edit]
                    Wieder zu langsam!

                    Wenn du das mit dem versenden und löschen etc. Handling schon weist ist es doch eigentlich kein Problem es an alle User zu verschicken!

                    Kommentar


                    • #11
                      Genau so nur packst du alle Empfänger in eine Schleife und dort Sendest du dann die Nachricht
                      Also brauchst du ja so was wie SQL: "SELECT ID FROM user WHERE ID!=$my_id" oder wie du die unser Identiefiezierst aber ahlt nach dem System in etwa und davon dan die Rückgabe in die Sende Schelife schieben.

                      Kommentar


                      • #12
                        Zitat von litterauspirna Beitrag anzeigen
                        H
                        Hier mal meine Tabellenstruktur von meinem PN System!
                        PHP-Code:
                        //Tabelle PNs
                        id_pn int(14auto_increment primary key,
                           
                        empf_id int(14not null default '0',//user id empfänger
                           
                        empf_name varchar(100not null default '',//username empfänger
                           
                        abs_id int(14not null default '0',//user id absender
                           
                        abs_name varchar(100not null default '',//username absender
                        ....
                         
                        //Tabelle PN Meldungen
                        melde_id int(14auto_increment primary key,
                           
                        melde_post_id int(14not null default '0',
                           
                        poster_id int(14not null default '0',
                           
                        poster_name varchar(100not null default '',
                        .... 
                        Weder der Sender-, noch der Empfänger- oder Postername haben in diesen Tabellen etwas zu suchen, die Id's genügen völlig, der Rest ist ja in der User-Tabelle. Stell dir einer ändert seinen Name und du führst das dann in allen Tabellen nach ...

                        Kommentar


                        • #13
                          Ja ok stimmt schon wenn man genauer drüber nach denkt! Nur müsste man den Usernamen der zur userid gehört dann immer mit einem left join abfragen,glaube ich zumindest. Aber von Prinzio her richtig!

                          Kommentar


                          • #14
                            gibt es nicht zu jeder id einen usernamen?!

                            Kommentar


                            • #15
                              Omg

                              unter normalisierung eines relationalen datenbankschemas versteht man die schrittweise erfolgende zerlegung von relationen (in der datenbank: Tabellen), auch mittels normalisierungsalgorithmen (siehe z. B. synthesealgorithmus (3nf), zerlegungsalgorithmus (bcnf)), in mehrere relationen auf der grundlage funktionaler abhängigkeiten. Eine normalisierung ist notwendig, um redundanzen der daten zu vermeiden, die einen erhöhten speicherplatz benötigen, das durchsuchen und analysieren der daten verlängern und bei der änderung von daten zu inkonsistenzen führen können.
                              Das relationenschema wird dabei in die erste, zweite, dritte usw. normalform überführt. Damit ein relationenschema eine normalform erfüllt, muss es die kriterien der gewünschten normalform und die kriterien der „vorherigen“ normalformen erfüllen.
                              Neben den abhängigkeiten, die für diese normalformen „bereinigt“ wurden, gibt es noch weitere, wie zum beispiel die inklusionsabhängigkeit, die template-abhängigkeit und die domain-key-normalform (dknf).
                              wenn du das verstanden hast... darfst du dich in nem jahr nicht wundern, warum beim selben User auf 5 verschiedenen Nachrichten 5 verschiedene Namen stehen

                              Wenn nicht, dann würd ich mir ein gutes Buch über datenbanken kaufen

                              grüsse

                              Kommentar

                              Lädt...
                              X