PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Interfacepaidmails Tanübergabe



drmoney
07.01.2007, 01:08
Hallo
hab schon ne Menge Interfaces in mein VMS eingebaut mit dem man die Paidmails der Sponsoren holen kann.
Aber folgendes Problem:
Die Emails werden ohne TAN versendet. ( diese mail ist nicht für dich )

In der Mailhistory kann man sie aber bestätigen.
Wenn ich eine Adminmail versende wird die TAN mit übergeben und man kann sie aus der Mail heraus bestätigen.

Das mit der DB Änderung in varchar32 hab ich schon gemacht und die Forensuche schmeisst nix dabei raus.
Hoffe es ist noch einer da der mir schnell helfen kann.

Mfg
DrMoney

Power24
07.01.2007, 01:38
Original von drmoney
Hallo
hab schon ne Menge Interfaces in mein VMS eingebaut mit dem man die Paidmails der Sponsoren holen kann.
Aber folgendes Problem:
Die Emails werden ohne TAN versendet. ( diese mail ist nicht für dich )



Das mit der DB Änderung in varchar32 hab ich schon gemacht und die Forensuche schmeisst nix dabei raus.
Hoffe es ist noch einer da der mir schnell helfen kann.

Mfg
DrMoney

Suche mal nach folgender zeile in den crons :


$int_tan = create_code(14); ersetze diese durch
$int_tan = create_code(32);

dann müsste alles wieder laufen.

drmoney
07.01.2007, 01:45
Leider nicht
in den codes steht alles auf $int_tan = create_code(32);

Gremlin
07.01.2007, 01:51
Wie macht sich das bemerkbar?

Steht in der Datenbank schon keine Tan drin?
--> Bug beim eintragen

Steht in der Email keine Tan am Bestätigunslink dran?
--> Bug beim versenden

Lässt sich die Mail nicht bestätigen obwohl Tan vorhanden?
--> Bug beim auslesen

drmoney
07.01.2007, 01:56
Steht in der Datenbank schon keine Tan drin?
--> In der DB stehen die TANs

Steht in der Email keine Tan am Bestätigunslink dran?
--> TAN in der EMail fehlt

TANs in der Mailhistory ?
--> Ja, funktioniert

Beispiellink einer Paidmail von Webmasterlose:

http://www.MEINE_DOMAIN.de/admin/?content=/werbesystem/paidmail_versenden&tan=yJ3d16GXcLADi65VyVUVKdG8SfOPk8iF

Power24
07.01.2007, 02:10
Überprüfe mal ob in paidmail_versenden.php folgen zeilen vorhanden sind.

Bestätigungslink:
'.$domain.'/pclick.php?tan='.$tan.'&uid='.$versendet["uid"].'

wenn vorhanden poste mal deine ganze paidmail_versenden.php.

Mfg power24

drmoney
07.01.2007, 02:15
Hier der Code.
Aber warum geht das wenn ich Paidmails manuell eintrage und verschicke ?
Soweit ich das gesehen habe benutzt der bei manuellen Paidmails $int_tan = create_code(14);



<?php
if (!isset($_GET['tan'])) $_GET['tan'] = "";

$daten = mysql_fetch_array(db_query("SELECT * from ".$db_prefix."_gebuchte_werbung WHERE tan='".$_GET['tan']."';"));

if($_GET['tan']) {
$empfaenger = db_query("SELECT * FROM ".$db_prefix."_emaildaten WHERE freigabe_fuer = '3' or freigabe_fuer = '2'");
$maxempf = mysql_num_rows($empfaenger);
if ($daten['menge'] == 0) $daten['menge'] = 5000;
if ( $daten['menge'] >= $maxempf ) $daten['menge'] = $maxempf;

$bis = $daten['gueltig'];
db_query("INSERT INTO ".$db_prefix."_paidmails_versendet (tan,menge,verdienst,ziel,beschreibung,mailtext,au fendhalt,gesendet,gueltig) VALUES ('".$_GET['tan']."','".$daten['menge']."','".$daten['verdienst']."','".$daten['ziel']."','".$daten['beschreibung']."','".$daten['mailtext']."','".$daten['aufendhalt']."','".time()."','".$bis."')");

$senden = db_query("SELECT * FROM ".$db_prefix."_emaildaten WHERE freigabe_fuer = '3' or freigabe_fuer = '2' ORDER BY RAND() LIMIT ".$daten['menge']."");
while ($versendet = mysql_fetch_array($senden)) {
db_query("INSERT INTO ".$db_prefix."_paidmails_empfaenger (uid,gueltig,tan,status,aufendhalt) VALUES ('".$versendet['uid']."','".$bis."','".$_GET['tan']."','0','".$daten['aufendhalt']."')");
$message='Hallo,
dieses ist eine neue '.$seitenname.' Paidmail, für dessen Bestätigung
Du '.$daten['verdienst'].' '.$waehrung.' für '.$daten['aufendhalt'].' Sek. aufenthalt erhälst!
Diese Paidmail ist gültig bis '.date("d.m.Y - H:i:s",$bis).'

'.$daten['beschreibung'].'

'.$daten['mailtext'].'
--------------------------------------------------------------------

Die Betreiber von '.$seitenname.' distanzieren sich vom Inhalt dieser Mail!

Diese Mail ist kein Spam da der Empfänger als Mitglied von
'.$seitenname.' dem Empfang zugestimmt hat.

Bestätigungslink:
'.$domain.'/pclick.php?tan='.$tan.'&uid='.$versendet["uid"].'

Mit freundlichen Grüßen
Das '.$seitenname.' Team';
mail($versendet['emailadresse'], 'Neue '.$seitenname.' Paidmail', $message, 'FROM: '.$seitenname.' <'.$betreibermail.'>') or die('Versandfehler');

}
db_query("DELETE FROM ".$db_prefix."_gebuchte_werbung where tan='".$_GET['tan']."';");
$msg_send = '<b><div align="center"><font color="#800000">Diese Paidmail wurd an '.$daten['menge'].' User versendet</font></div></b>';
}

?>

<? head("Paidmail Versand"); ?>
<?=$msg_send;?>
<?foot();?>

Power24
07.01.2007, 02:45
Ok der script ist gut.

dann kann es nur noch an der Datenbank liegen.

hast du alle einträge in der datenbank für den TAN auf VARCHAR(32) eingestellt.

in
VMS_gebuchte_werbung
VMS_paidmails-enpfaenger
VMS_paidmails-versendet

drmoney
07.01.2007, 09:34
da steht alles auf 32.
Das ist ne äusserest seltsame Sache.

Bei den Adminmails steht im Script create_code(14);
Da gehts dann per mail und per inbox zu bestätigen.

Habe mal das andere auch in 14 geändert, aber das bringt nix

Gremlin
07.01.2007, 14:33
<?php
if (!isset($_GET['tan'])) $_GET['tan'] = "";

$daten = mysql_fetch_array(db_query("SELECT * from ".$db_prefix."_gebuchte_werbung WHERE tan='".$_GET['tan']."';"));

if($_GET['tan']) {
$empfaenger = db_query("SELECT * FROM ".$db_prefix."_emaildaten WHERE freigabe_fuer = '3' or freigabe_fuer = '2'");
$maxempf = mysql_num_rows($empfaenger);
if ($daten['menge'] == 0) $daten['menge'] = 5000;
if ( $daten['menge'] >= $maxempf ) $daten['menge'] = $maxempf;

$bis = $daten['gueltig'];
db_query("INSERT INTO ".$db_prefix."_paidmails_versendet (tan,menge,verdienst,ziel,beschreibung,mailtext,au fendhalt,gesendet,gueltig) VALUES ('".$_GET['tan']."','".$daten['menge']."','".$daten['verdienst']."','".$daten['ziel']."','".$daten['beschreibung']."','".$daten['mailtext']."','".$daten['aufendhalt']."','".time()."','".$bis."')");

$senden = db_query("SELECT * FROM ".$db_prefix."_emaildaten WHERE freigabe_fuer = '3' or freigabe_fuer = '2' ORDER BY RAND() LIMIT ".$daten['menge']."");
while ($versendet = mysql_fetch_array($senden)) {
db_query("INSERT INTO ".$db_prefix."_paidmails_empfaenger (uid,gueltig,tan,status,aufendhalt) VALUES ('".$versendet['uid']."','".$bis."','".$_GET['tan']."','0','".$daten['aufendhalt']."')");
$message='Hallo,
dieses ist eine neue '.$seitenname.' Paidmail, für dessen Bestätigung
Du '.$daten['verdienst'].' '.$waehrung.' für '.$daten['aufendhalt'].' Sek. aufenthalt erhälst!
Diese Paidmail ist gültig bis '.date("d.m.Y - H:i:s",$bis).'

'.$daten['beschreibung'].'

'.$daten['mailtext'].'
--------------------------------------------------------------------

Die Betreiber von '.$seitenname.' distanzieren sich vom Inhalt dieser Mail!

Diese Mail ist kein Spam da der Empfänger als Mitglied von
'.$seitenname.' dem Empfang zugestimmt hat.

Bestätigungslink:
'.$domain.'/pclick.php?tan='.$_GET['tan'].'&uid='.$versendet["uid"].'

Mit freundlichen Grüßen
Das '.$seitenname.' Team';
mail($versendet['emailadresse'], 'Neue '.$seitenname.' Paidmail', $message, 'FROM: '.$seitenname.' <'.$betreibermail.'>') or die('Versandfehler');

}
db_query("DELETE FROM ".$db_prefix."_gebuchte_werbung where tan='".$_GET['tan']."';");
$msg_send = '<b><div align="center"><font color="#800000">Diese Paidmail wurd an '.$daten['menge'].' User versendet</font></div></b>';
}

?>

<? head("Paidmail Versand"); ?>
<?=$msg_send;?>
<?foot();?>

Fehler in Zeile 35! $tan wurde nicht vorher definiert ich habe $tan mit $_GET['tan'] ersetzt. Jetzt sollte es klappen.

Gruß
Gremlin

drmoney
07.01.2007, 14:44
=) =) =)
Du bist ein Schatz. Ich könnt dich knutschen.
Das wars funzt einwandfrei. Einfach geil
THX THX THX