Email an alle Benutzer nach Datenbankeintrag

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

  • Email an alle Benutzer nach Datenbankeintrag

    Hallo zusammen,

    ich habe hier meine Script welches an den Benutzer eine Mail sendet wenn er einen Datenbank Eintrag vorgenommen hat.

    PHP-Code:
    // Send confirmation email
                    
    $result mysql_query("SELECT * FROM users WHERE nick='".AddSlashes($nick)."'");
                    
    $user_name mysql_result ($result,0,"name");
                    
    $user_email mysql_result ($result,0,"email");
                    
    $user_address mysql_result ($result,0,"address");
                    
    $user_city mysql_result ($result,0,"city");
                    
    $user_country mysql_result ($result,0,"country");
                    
    $user_zip mysql_result ($result,0,"zip");
                    
    $user_newauc mysql_result ($result,0,"newaucmail");
                    
    $title $sessionVars["SELL_title"];
                    
    $auction_id $sessionVars["SELL_auction_id"];
                    
    $description $sessionVars["SELL_description"];
                    
    $pict_url $pcURL;
                    
    $minimum_bid $sessionVars["SELL_minimum_bid"];
                    
    $resell_nr $sessionVars["SELL_resell_nr"];
                    
    $duration $sessionVars["SELL_duration"];
                    
    $iquantity $sessionVars["SELL_iquantity"];
                    
    $cat_name $sessionVars["SELL_category"];
                    
    $ends substr($a_ends,8,2).".";
                    
    $ends .= substr($a_ends,5,2).".";
                    
    $ends .= substr($a_ends,0,4).".";
                    
    $auction_url $SITE_URL "item.php?mode=1&id=".$sessionVars["SELL_auction_id"];
                    
    $buy_now $sessionVars["SELL_buy_now"];

                    include(
    './includes/auction_confirmation.inc.php'); 
    jetzt möchte ich noch zusätzlich jedem Benutzer der mit dem Status 2 in der Datenbank eingetragen ist, automatisch eine Mail senden mit dem Link zum Datenbankeintrag. Mit diesem Anhang:


    PHP-Code:
    $us_query     "SELECT * FROM users WHERE status='2'";
                        
    $us_result    mysql_query($us_query);
                        if (
    $us_result)
                        {
                          
    $us_name        mysql_result($us_result0"name");
                          
    $us_email       mysql_result($us_result0"email");
                          
    $to             $us_email;
                          
    $subject        "Ein neuer Eintrag wurde eingestellt";
                          
    $message        "Hallo $us_name,\n\n";
                          
    $message       .= "auf $SITE_NAME. wurde ein neuer Eintrag eingestellt.\n";
                          
    $message       .= "Hier der Link zum Eintrag: \n\n";
                          
    $message       .= "$auction_url\n\n";
                          
    $message       .= "Ihr Team von $SITE_NAME.";
                          
    mail($to,$subject,$message,"From:".$SITE_NAME."<$adminEmail>\nReplyTo:$adminEmail"); 

    Leider wird aber nur eine Mail an den ersten Benutzer gesendet welcher in der Datenbank mit dem Status 2 eingetragen ist gesendet.

    Was mache ich falsch ?
    Kann mir jemand helfen ?

    Gruß
    Webdienst

  • #2
    Wie auch ... wo ist Deine Schleife ... ?!?!?!?!?
    carpe noctem

    [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
    [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

    Kommentar


    • #3
      Hallo,

      ich hatte mal eine Schleife eingebaut.

      PHP-Code:
      $us_query     "SELECT * FROM users WHERE status='2'";
                          
      $us_result mysql_query($us_query);
                          while(
      $row mysql_fetch_array($us_result))
                          if (
      $us_result
      darauf hin habe ich 1600 Mails an die erste Adresse des Datenbank eintrags bekommen. Bis der Mailserver sich verabschiedet hat.

      Also habe ich gedacht ich probiere lieber nicht mehr rum.

      Kann Du mir die Lösung bitte kurz verraten ? Ich probiere jetzt schon ein paar Tage.

      Gruß
      Webdienst

      Kommentar


      • #4
        Dann solltest Du einfach nicht
        PHP-Code:
        mysql_result($us_result0"name"); 
        verwenden ... sondern
        PHP-Code:
        while($row mysql_fetch_array($us_result)) 
        und
        PHP-Code:
        $row["name"
        Bevor die Frage kommt ... für alle anderen Felder gilt das natürlich auch ...
        carpe noctem

        [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
        [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

        Kommentar


        • #5
          Hallo,

          lieg ich jetzt so richtig ?

          PHP-Code:
          $us_query     "SELECT * FROM users WHERE status='2'";
                              
          $us_result mysql_query($us_query);
                              while(
          $row mysql_fetch_array($us_result))
                              if (
          $us_result)
                              {

                                
          $us_email       mysql_result($row["name"]);
                                
          $to             $us_email;
                                
          $subject        "Ein neuer Eintrag wurde eingestellt";
                                
          $message        "Hallo $us_name,\n\n";
                                
          $message       .= "auf $SITE_NAME. wurde ein neuer Eitrag eingestellt.\n";
                                
          $message       .= "Hier der Link zur Auktion: \n\n";
                                
          $message       .= "$auction_url\n\n";
                                
          $message       .= "Ihr Team von $SITE_NAME.";
                                
          mail($to,$subject,$message,"From:".$SITE_NAME."<$adminEmail>\nReplyTo:$adminEmail"); 
          und Danke für die Hilfe !

          Kommentar


          • #6
            Natürlich nicht!!
            PHP-Code:
            $us_query "SELECT * FROM users WHERE status='2'";
            if ( 
            $us_result mysql_query($us_query) ) {
                while ( 
            $row mysql_fetch_array($us_result) ) {
                    
            $us_email       $row["name"];
                    
            $to             $row["email"];
                    
            $subject        "Ein neuer Eintrag wurde eingestellt";
                    
            $message        "Hallo $us_name,\n\n";
                    
            $message       .= "auf $SITE_NAME. wurde ein neuer Eitrag eingestellt.\n";
                    
            $message       .= "Hier der Link zur Auktion: \n\n";
                    
            $message       .= "$auction_url\n\n";
                    
            $message       .= "Ihr Team von $SITE_NAME.";
                    
            mail($to,$subject,$message,"From:".$SITE_NAME."<$adminEmail>\nReplyTo:$adminEmail");
                }
                
            mysql_free_result($us_query);

            ... sonst zieht sich das hier wirklich noch über Tage hin ... und das halte ich nicht aus ...
            carpe noctem

            [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
            [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

            Kommentar


            • #7
              Danke nochmal.

              Werd es sofort testen !

              Kommentar

              Lädt...
              X