Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 11 bis 20 von 21

Thema: User bestätigt mehr Mails als verschickt wurden!?

  1. #11
    Benutzer
    Registriert seit
    02.07.2010
    Beiträge
    52
    Guten Morgen,

    trotz das in der Datenbank kein doppelter Eintrag war, wieder das gleiche!

    Log von gestern:

    01.01. 19:39:14 - 2aAQRy9RnaqSMK - 7000.00
    01.01. 19:39:14 - 2aAQRy9RnaqSMK - 7000.00
    01.01. 19:39:16 - xcbnr7kShM93tf - 7000.00
    01.01. 19:39:17 - B9bHgP8xhvZsvM - 7000.00
    01.01. 19:39:18 - nKY3KVKs4ses0T - 7000.00
    01.01. 19:39:21 - N0bkQOM7JPzou0 - 7000.00
    01.01. 19:39:23 - GZPIyiL5xp61JB - 7000.00
    01.01. 19:39:25 - DLiTmqe7DbO0Kr - 7000.00
    Wieder das gleiche, nur bei dem einen User!

  2. #12
    Erfahrener Benutzer Avatar von didith1207
    Registriert seit
    17.09.2006
    Beiträge
    1.580
    ich wurde von einem sponsor auf das selbe problem hingewiesen ich hatte das aber auf dem nonlose vms und meine mails verschickt... keine doppelten einträge in der DB und trotzdem hat ein User ständig eine davon 2x bestätigt

  3. #13
    Benutzer
    Registriert seit
    02.07.2010
    Beiträge
    52
    Und wieder...

    Log von heute:

    02.01. 12:05:01 - rOKNNI8cOaseWi - 6500.00
    02.01. 12:10:39 - sdFcFDQM5asVUk - 6500.00
    02.01. 12:33:06 - xhYTpF7PYthQRA - 6500.00
    02.01. 16:01:38 - BXetIsYyIw2jAp - 6500.00
    02.01. 16:01:40 - PW700O6ELR4rCP - 6500.00
    02.01. 16:01:42 - JetvPd0PnFyJAA - 6500.0
    02.01. 16:01:46 - nvZNGPaP1AYGTk - 6500.00
    02.01. 16:01:46 - 6s0IhCULKFl6rX - 6500.00
    02.01. 16:01:46 - 6s0IhCULKFl6rX - 6500.00
    02.01. 16:01:47 - sbWPEYrbABr4KQ - 6500.00
    02.01. 16:01:49 - SGuMAvxI26Kunl - 6500.00
    Trotz das kein Eintrag doppelt ist, habe ich jetzt den Tipp von jpwfour mal gemacht...

    Zitat Zitat von jpwfour Beitrag anzeigen

    PHP-Code:
    db_query("UPDATE ".$db_prefix."_paidmails_empfaenger SET status=1  WHERE tan='".$_GET['tan']."' and uid=".$_GET['uid']." LIMIT  1"); 
    das Limit 1 weglässt, also:
    PHP-Code:
    db_query("UPDATE ".$db_prefix."_paidmails_empfaenger SET status=1  WHERE tan='".$_GET['tan']."' and uid=".$_GET['uid'].""); 
    Dann würde bei doppelten TANs jede auf "bestätigt" gesetzt werden (nur für die jewelige UID natürlich), einen Versuch ist es wert (pcheck.php)
    ... mal sehen was morgen ist.

    Würdet ihr an meiner Stelle den User sperren?

    Ist zwar nicht meine Art, aber wohl die letzte Maßnahme!?

  4. #14
    Administrator Avatar von Lokutos
    Registriert seit
    29.03.2008
    Beiträge
    3.147
    Zitat Zitat von Siggi84 Beitrag anzeigen
    Und wieder...

    Log von heute:



    02.01. 16:01:46 - 6s0IhCULKFl6rX - 6500.00
    02.01. 16:01:46 - 6s0IhCULKFl6rX - 6500.00
    MFG Lokutos
    SwissNetWorX - VMS Hosting / V-Server / Cloud-Server / Hosting

  5. #15
    Benutzer
    Registriert seit
    02.07.2010
    Beiträge
    52
    Zitat Zitat von Lokutos Beitrag anzeigen
    MFG Lokutos
    Ja, nur wie macht er das.

    Für jedes Problemchen/Fehler/Bug/etc... muss es ja eine Lösung geben.

  6. #16
    Erfahrener Benutzer Avatar von hankfromhelvete
    Registriert seit
    26.04.2007
    Beiträge
    633
    Zitat Zitat von Siggi84 Beitrag anzeigen
    Würdet ihr an meiner Stelle den User sperren?
    Würde ich nicht machen, solange du nicht weißt ob es ein Fehler oder Absicht des Users ist.

  7. #17
    Erfahrener Benutzer Avatar von jpwfour
    Registriert seit
    06.02.2008
    Beiträge
    3.717
    Im Prinzip gibt es ja eine gute Prüfung bei Mailbestätigung, in der ich so erstmal keine groben Fehler erkennen kann. Und wenn die Einträge nicht doppelt vorhanden sind, bleibt noch das mit der race condition, evtl. benutzt er ein Klickprogramm, welches "gleichzeitiges" Aufrufen natürlich besser hinbekommt als ein Mensch.
    Wobei er es dann schon absichtlich darauf anlegen müsste, die meisten Fakeskripte geben sich ja mit einer 1x Bestätigung schon zufrieden

    Sehe 2 Möglichkeiten:
    - User sperren, da selbst wenn das keine Absicht ist, er sich dessen dennoch bewusst ist (mehr Vergütung, +1 Punkte mehr in Rallye) und das nicht meldet beim Admin, schon ein Grund (ausserdem sind die Ausreden doch immer spannend die dann kommen )
    - pcheck.php noch besser absichern:

    Optimal wären Tabellen-/Zeilensperren, aber etwas kompliziert einzubauen, evtl reicht es auch, die Zeile:
    PHP-Code:
    db_query("UPDATE ".$db_prefix."_paidmails_empfaenger SET status=1 WHERE tan='".$_GET['tan']."' and uid=".$_GET['uid']." LIMIT 1"); 
    die normalerweise erst nach den ganzen Rallyes Bilanzen etc kommt, direkt nach:
    PHP-Code:
    if (($mail['start']+$mail['aufendhalt']-1) <= time() AND $mail['status'] == 0) { 
    zu verschieben und noch zu erweitern:
    PHP-Code:
    db_query("UPDATE ".$db_prefix."_paidmails_empfaenger SET status=1 WHERE tan='".$_GET['tan']."' and uid=".$_GET['uid']." AND status=0 LIMIT 1"); 
    danach kann man dann mit:
    PHP-Code:
    if(mysql_affected_rows()==1){
    //rallyes etc.
    }else{
    $headmsg 'Doppelt bestätigt! Paidmail ungültig!';
          
    db_query("UPDATE ".$db_prefix."_paidmails_empfaenger SET status=2 WHERE tan='".$_GET['tan']."' and uid=".$_GET['uid']." LIMIT 1");

    Das doch schon ganz gut verhindern.

    Sieht dann etwa so aus der Abschnitt:

    PHP-Code:
    if (($mail['start']+$mail['aufendhalt']-1) <= time() AND $mail['status'] == 0) {
      
    db_query("UPDATE ".$db_prefix."_paidmails_empfaenger SET status=1 WHERE tan='".$_GET['tan']."' and uid=".$_GET['uid']." AND status=0 LIMIT 1");
      if(
    mysql_affected_rows()==1){
         
    //rallyes etc. bis:
        
    $headmsg $mail['verdienst'].' '.$waehrung.' gutgeschrieben!';
      }else{
      
    $headmsg 'Doppelt bestätigt! Paidmail ungültig!';
          
    db_query("UPDATE ".$db_prefix."_paidmails_empfaenger SET status=2 WHERE tan='".$_GET['tan']."' and uid=".$_GET['uid']." LIMIT 1");
      }
    } else {
          
    $headmsg 'Wartezeit umgangen! Paidmail ungültig!';
          
    db_query("UPDATE ".$db_prefix."_paidmails_empfaenger SET status=2 WHERE tan='".$_GET['tan']."' and uid=".$_GET['uid']." LIMIT 1");
        } 
    Kill one man, and you are a murderer.
    Kill millions of men, and you are a conqueror.
    Kill them all, and you are a god.
    - Jean Rostand, Thoughts of a Biologist (1939)

  8. #18
    Benutzer
    Registriert seit
    02.07.2010
    Beiträge
    52
    So, jetzt kann ich euch mal wieder updaten

    Hatte leider bissel streß, musste mit Hundi in die Tierklinik.

    Seitdem ich das "Limit 1" herausgenommen habe, ist es nicht wieder passiert.

    Läuft jetzt seit 3 Tagen ohne Abweichung!

    Nur wie kann das jetzt gehen, wenn doch keine doppelten Einträge drin waren, oder gerade nur Zufall?

    Halte euch auf dem laufenden!

    Danke nochmal an ALLE!!!

  9. #19
    Erfahrener Benutzer Avatar von Hardy
    Registriert seit
    24.01.2007
    Beiträge
    2.235
    Verstehe ich jetzt gerade nicht

    Was soll es denn mit den Limit zu tun haben?
    Vermutlich hast du noch was anderes verändert was ausschlaggebend war oder doch nur zufall (was ich nicht glaube)

  10. #20
    Benutzer
    Registriert seit
    02.07.2010
    Beiträge
    52
    Zitat Zitat von Hardy Beitrag anzeigen
    Verstehe ich jetzt gerade nicht

    Was soll es denn mit den Limit zu tun haben?
    Vermutlich hast du noch was anderes verändert was ausschlaggebend war oder doch nur zufall (was ich nicht glaube)
    Nein was anderes habe ich nicht gemacht!

    Nur aus...

    PHP-Code:
                 db_query("UPDATE ".$db_prefix."_paidmails_empfaenger SET status=1 WHERE tan='".$_GET['tan']."' and uid=".$_GET['uid']." LIMIT 1"); 
    ... das

    PHP-Code:
                 db_query("UPDATE ".$db_prefix."_paidmails_empfaenger SET status=1 WHERE tan='".$_GET['tan']."' and uid=".$_GET['uid'].""); 
    So wie es jpwfour Hier beschrieben hat!

Seite 2 von 3 ErsteErste 123 LetzteLetzte

Ähnliche Themen

  1. Mails gehen an eine Adresse, die es nicht mehr gibt
    Von Sam2004 im Forum Support zum VMSone
    Antworten: 4
    Letzter Beitrag: 30.10.2011, 19:31
  2. Mehr Mails bestätigt als gesendet
    Von teddybyte im Forum Support zum VMSone
    Antworten: 1
    Letzter Beitrag: 04.12.2009, 23:42
  3. Antworten: 5
    Letzter Beitrag: 12.07.2009, 00:20
  4. Antworten: 1
    Letzter Beitrag: 31.08.2007, 16:53
  5. User bekommen mehr Mails als eingestellt
    Von Tulpe81 im Forum Support zu Addons & Erweiterungen
    Antworten: 5
    Letzter Beitrag: 22.08.2007, 05:52

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •