PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Automailer Spinnt



Lachi
23.05.2009, 14:50
Hallo,

habe hier schon ne ganze Zeit mit suchen verbracht aber nicht das richtige gefunden nun versuche ich es mal bei euch vileicht kann mir ja einer Helfen.

Es handelt sich um den utomailer von Stigma
Die Paidmails sind eingelesen und versickt habe nur das Problem wenn ich im User breich auf Paidmails klicke zeigt er mir folgendes an:


Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/web11/html/content/verdienen/mailhistory.php on line 31


Was ist da? Meine Meinung das eine MySQL abfrage fehlt aber woher bekomme ich die?

Gruß lachi und vielem dank für eure Hilfe

EarlofMidnight
23.05.2009, 15:01
Was steht denn in der Datein: mailhistory.php

In Zeile: 31 ?

Lachi
23.05.2009, 15:05
Oh ja :redface: Sorry hätte ich dazuschreiben sollen



while ($history = mysql_fetch_array($mails) and $angezeigt <=($max_paid['max_paidm']-1)) {

Lokutos
23.05.2009, 15:09
Hast du an der Zeile bzw etwas an der datei verändert weil die schleife kommt hinten und forne nicht hin.

Probiers mal so


while ($history = mysql_fetch_array($mails) ) {

Sebmaster
23.05.2009, 15:11
Nein Lokutos, falsch, die while-Schleife ist durchaus richtig:biggrin1:

Schau mal nach wo $mails definiert ist, also wo steht:

$mails =

und gib uns die Zeile mal:wink:

Lachi
23.05.2009, 15:26
$tmail = mysql_num_rows($mailresult);

Hoffe das ist was du brauchst

Sebmaster
23.05.2009, 15:29
Hoffe das ist was du brauchst

Nö, ich sagte:

$mails =

Lachi
23.05.2009, 15:32
if(($_GET['sortiert'] == 'gu') OR ($_GET['sortiert'] == '')){
$mails = db_query("SELECT * FROM ".$db_prefix."_paidmails_versendet WHERE ORDER BY gueltig ASC");
}
if($_GET['sortiert'] == 'au'){
$mails = db_query("SELECT * FROM ".$db_prefix."_paidmails_versendet WHERE ORDER BY aufendhalt ASC");
}
if($_GET['sortiert'] == 've'){
$mails = db_query("SELECT * FROM ".$db_prefix."_paidmails_versendet WHERE ORDER BY verdienst DESC");
}

Das ist alles mit $mails

Sebmaster
23.05.2009, 15:36
Das ist alles mit $mails

Ich kann mich irren, bin aber der Meinung, dass das WHERE da gar nicht hingehört.

Lösch es mal raus, und schau ob alles funktioniert:wink:

Lachi
23.05.2009, 15:58
Ja also der Fehler ist schon mal weg^^
Nun haben sich dafür andere eingeschlichen
1. Es wird immer nur eine Mail angezeigt egal was man im userprofil einstellt
2. wenn man die eine klickt wird die Frame zwar angezeigt aber nicht die aufenthals dauer
3. die mail wird mir vergütet aber nicht dem user
4. es ist immer die gleiche mail zum klicken da obwohl 50 eingebucht.

Lachi
24.05.2009, 19:49
Okay, habe jetzt alles zum laufen bekommen nun habe ich nur noch ne Frage zu den Crons hoffe da kann mir einer helfen.
andelt sich immer noch um den Automailer von Stigma

1. Ich lasse alle Sponsoren Crons laufen
2. dann warte ich ca. 5min. und lasse den stg_spps_mailpruef laufen
3. Ca. 5Min später lasse ich den stg_spps_mailer Cron laufen.

Cron stg_spps_mailreset einmal täglich

so nun meine Frage Punkt1 bis 3 wie oft mache ich das am tag?
aller 2 stunden sollte reichen oder? werden dann ja nur die abgelaufenen mails entfernt und die neuen Mails eingebucht.

Danke schon mal für antwort.

Lokutos
24.05.2009, 19:53
wie eh und jeh schon 100 mal im forum geschrieben.


man muss auf die sponsoren achten. sprich wenn n sponsor nur 25 Abfragen am tag stellt und die fB TL und PM verwendest kannst du nur alle 3h abfragen
cron lasse ich global alle sponsoren alle 4h laufen bei PM
FB lasse ich alle 3h laufen und TL alle 4h
dies solltest du dir überlassen ob die n einheitlichen intervall machst oder so oft wie möglich und verteilt oder wie auch immer


der mailer ist eigentlich egal wann die laufen. den du buchst ja eh im crone immer neu ein
ich habe sie immer einmal nachts um 3 uhr und mittags um 12 laufen lassen dan wenn der server am wenigsten lasst hatt.


MFg Lokutos

Plati
26.05.2009, 09:17
habe leider auch das Problem das nur eine Mail zum bestätigen angezeigt wird:frusty:
Weiss jemand Rat?
Und vor allem wie stelle ich es an das die Mails nur in die Mailhistory gelangen und nicht bei den Usern das Postfach gesprengt wird?

Jenny
26.05.2009, 11:21
Für Mails NUR inbox :

Es gibt zwei versende Funktionen bei dem Auto-Mailer

einmal:

mail($uinfo['emailadresse'], 'Neue '.$seitenname.' Paidmail', $message, 'FROM: '.$seitenname.' <'.$betreibermail.'>') or die('5:'.'Versandfehler');

das muss bei Dir dann so -->

//mail($uinfo['emailadresse'], 'Neue '.$seitenname.' Paidmail', $message, 'FROM: '.$seitenname.' <'.$betreibermail.'>') or die('5:'.'Versandfehler');


und

mail($uinfo['emailadresse'], 'Neue '.$seitenname.' Paidmail', $message, 'FROM: '.$seitenname.' <'.$betreibermail.'>') or die('10:'.'Versandfehler');

auch da muss es dann so --->

//mail($uinfo['emailadresse'], 'Neue '.$seitenname.' Paidmail', $message, 'FROM: '.$seitenname.' <'.$betreibermail.'>') or die('10:'.'Versandfehler');

heissen


nur eine Mail bestätigen:

ich weiss es nicht mehr ganz genau, weil ich hab mir derartig viel umgebaut dabei *lach*

$mail = mysql_fetch_array(db_query("SELECT `status`, `tan`, `uid`, `reload`, `aufendhalt` FROM `".$db_prefix."_paidmails_empfaenger` WHERE `tan` = '".$history['tan']."' AND `gueltig` > '".time()."' AND `uid` = '".$_SESSION['uid']."' LIMIT 1"));

Setz da mal das LIMIT höher also statt LIMIT 1 mal LIMIT 10, dass kann es schon sein

Plati
26.05.2009, 11:49
also das mit nur Inbox scheint zu klappern,da kommen keine Mails mehr an:thumb:

Nur das mit der Menge an anzeigbaren Mails klappert noch nicht,immer noch lediglich eine Mail zum klickern da

Lokutos
26.05.2009, 19:03
in der Inbox also inbox im browser aufrufen und die datei in nem editor aufrufen und nach LIMIT X suchen. da die zahl auf etwas höheres setzten.

Eventuel unterstützt deine history auch nur eine kampagnie gleichzeitig wehr weis

Plati
26.05.2009, 19:22
aber ist doch im Prinzip das was Jenny auch schon geschrieben hat.
Hab die mailhistory geöffnet und nach Limit gesucht,gibbet nur einmal:

while ($history = mysql_fetch_array($mails) and $angezeigt <=($max_paid['max_paidm']-1)) {
$mail = mysql_fetch_array(db_query("SELECT `status`, `tan`, `uid`, `reload`, `aufendhalt` FROM `".$db_prefix."_paidmails_empfaenger` WHERE `tan` = '".$history['tan']."' AND `gueltig` > '".time()."' AND `uid` = '".$_SESSION['uid']."' LIMIT 1"));

Und das Teil kann ich hinsetzen wo ich will,wird nicht mehr :frusty:

Jenny
27.05.2009, 01:55
hm, also, ich hab das so gemacht dass die User im Userprofil einstellen können wieviele Mails die auf einmal sehen wollen (ähnlich den Forcedbannern)

dann habe ich folgendes :

$max_paid = mysql_fetch_array(db_query("SELECT `max_paidm` FROM ".$db_prefix."_userdaten WHERE uid=".$_SESSION['uid'].""));


direkt unter

<? userstatus();

noch in die Mailhistory gesetzt und das funkt bei mir

o.k. ich habe noch vms1.1, ergo kann es sein dass es bei Dir evtl nen bisschen anders heissen muss zumindest im Userprofil, aber an sich sollte das dann funken

Plati
27.05.2009, 09:24
danke erstmal für die Mühen,aber klappt leider nicht :rant:


Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/vhosts/lose-bettler.de/httpdocs/content/verdienen/mailhistory.php on line 2das kommt wenn ich das Teil in die mailhistory.php einbaue unter<? userstatus();

echt zum verzweifeln mit dem Teil :frusty:

Jenny
27.05.2009, 12:49
*gg* ups, klar, haste das Feld in der db nicht angelegt? und ins Userprofil auch keine Erweiterung dazu gemacht richtig?

*lol*

Wie gesagt, ich habe den Usern das damit im Userprofil ähnlich wie für die Forcedbanner auswählbar gemacht mit der Menge der Mailanzeige und in der db dazu natürlich auch das dazu gehörige Feld zusätzlich angelegt *lol*

dachte das wäre in meinem Post rüber gekommen