PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Bettelaufrufe nur aus D CH A vergüten



NeedSomeWeed
06.08.2009, 11:49
Hallo,

gibt es eine Möglichkeit dass nur Aufrufe des Bettellinks aus Deutschland, der Schweiz und Österreich vergütet werden ?

didith1207
06.08.2009, 12:05
klar es gibt für alles eine möglichkeit...

ich würde dir das länderaddon aus dem download empfehlen und eben die bettel datei auch einbinden so das eventuell alle anderen Länder eine andere Seite zu sehen bekommen ohne das sie vergütet wird

DimpleX
08.08.2009, 08:56
moin,

kann man auch direkt übern server machen das nur user aus DE/AT/CH drauf kommen alle anderen auf ne seite mit infos in 27 sprachen warum die nicht rein kommen ;)

aber das ist ne sache da sollte man schon fit mit sein server sein

wikipedia geoip

DimpleX

didith1207
19.08.2009, 00:06
also das länderaddon aus dem download installieren und dann die bettel.php mit diesem code ersetzen:


<?

$ccode_array = mysql_fetch_array(db_query("SELECT * FROM laendercode WHERE IP_FROM<=inet_aton('".$ip."') AND IP_TO>=inet_aton('".$ip."');"));
$cc2=$ccode_array['CC2'];


if($cc2 == 'DE' OR $cc2 == 'AT' OR $cc2 == 'CH'){?>


<?
$_GET['ref'] = (int)$_GET['ref'];


if ($pageconfig['reload_betteln'] == 0){
$betteltext = '<b>Die Bettelfunktion ist auf dieser Seite deaktiviert';
}else{

if ($_SESSION['uid'] == $_GET['ref'] || $_GET['ref'] == $_COOKIE['uid']){
$betteltext = '<b><font color="#FF0000">Du kannst dich nicht selbst anbetteln!</font></b>';
}else{


$reloadcheck = db_query("SELECT bis FROM ".$db_prefix."_reloads WHERE ip = '".$ip."' and tan = 'bettelaufruf' and bis >= ".time()." LIMIT 1");

if (!mysql_num_rows($reloadcheck)) {
$minimum = $pageconfig['min_betteln'];
$maximum = $pageconfig['max_betteln'];
srand((double)microtime()*1000000);
$bettelsumme = rand($minimum*100,$maximum*100)/100;
$new_reload = time()+$pageconfig['reload_betteln'];
db_query("INSERT INTO ".$db_prefix."_reloads (ip,uid,tan,bis) VALUES ('".$ip."','".$_GET['ref']."','bettelaufruf','".$new_reload."')");
db_query("UPDATE ".$db_prefix."_kontodaten SET angebettelt =angebettelt + 1, bv = bv + ".$bettelsumme.", kontostand = kontostand + '".$bettelsumme."' WHERE uid = '".$_GET['ref']."'");

refumsatz ($bettelsumme,$_GET['ref']);
aktivralley ($bettelsumme,$_GET['ref']);
bilanz(0,$bettelsumme);
$betteltext = '<b>Du hast für den User '.$_GET['ref'].' gerade '.$bettelsumme.' '.$waehrung.' erbettelt!</b>';
} else {
$reloadcheck = mysql_fetch_array($reloadcheck);
$betteltext = '<b><font color="#FF0000">Du bist noch für '. round((($reloadcheck['bis'] - time())/60),0) .' Minuten fürs Betteln gesperrt</font></b>';
}
}
}
?>

<?head("Betteln auf ".$seitenname);?>
Verdiene auch Du mit!<br>
Melde Dich bei <?=$seitenname;?> an und bewirbe Deinen persönlichen Bettellink, so
verdienst Du deine <?=$waehrung;?> fast wie im Schlaf!<br>
<br>
<div align="center"><?=$betteltext;?></div>
<?foot();?>

<?
$filename = 'lib/texte/bettelwerbung.txt';
$fp = fopen ($filename, "r");
$inhalt = fread ($fp, filesize ($filename));
fclose ($fp);
$inhalt = str_replace('\\', '', $inhalt);

if ($inhalt != ''){
head("Werbung dieser Seite");
echo nl2br($inhalt);
foot();
}
?>
<?} else {?>
<?head("Betteln auf ".$seitenname);?>
Aufruf wurde nicht vergütet!<br>
<br>
<div align="center"><?=$betteltext;?></div>
<?foot();?>

<?
$filename = 'lib/texte/bettelwerbung.txt';
$fp = fopen ($filename, "r");
$inhalt = fread ($fp, filesize ($filename));
fclose ($fp);
$inhalt = str_replace('\\', '', $inhalt);

if ($inhalt != ''){
head("Werbung dieser Seite");
echo nl2br($inhalt);
foot();
}

}?>das teil ist so gemacht das die werbung immer angezeigt wird aber nur bei User aus Deutschland,Schweiz und österreich bekommt der User eine vergütung

mcmuhl
19.09.2009, 21:01
also das länderaddon aus dem download installieren und dann die bettel.php mit diesem code ersetzen:


<?

$ccode_array = mysql_fetch_array(db_query("SELECT * FROM laendercode WHERE IP_FROM<=inet_aton('".$ip."') AND IP_TO>=inet_aton('".$ip."');"));
$cc2=$ccode_array['CC2'];


if($cc2 == 'DE' OR $cc2 == 'AT' OR $cc2 == 'CH'){?>


<?
$_GET['ref'] = (int)$_GET['ref'];


if ($pageconfig['reload_betteln'] == 0){
$betteltext = '<b>Die Bettelfunktion ist auf dieser Seite deaktiviert';
}else{

if ($_SESSION['uid'] == $_GET['ref'] || $_GET['ref'] == $_COOKIE['uid']){
$betteltext = '<b><font color="#FF0000">Du kannst dich nicht selbst anbetteln!</font></b>';
}else{


$reloadcheck = db_query("SELECT bis FROM ".$db_prefix."_reloads WHERE ip = '".$ip."' and tan = 'bettelaufruf' and bis >= ".time()." LIMIT 1");

if (!mysql_num_rows($reloadcheck)) {
$minimum = $pageconfig['min_betteln'];
$maximum = $pageconfig['max_betteln'];
srand((double)microtime()*1000000);
$bettelsumme = rand($minimum*100,$maximum*100)/100;
$new_reload = time()+$pageconfig['reload_betteln'];
db_query("INSERT INTO ".$db_prefix."_reloads (ip,uid,tan,bis) VALUES ('".$ip."','".$_GET['ref']."','bettelaufruf','".$new_reload."')");
db_query("UPDATE ".$db_prefix."_kontodaten SET angebettelt =angebettelt + 1, bv = bv + ".$bettelsumme.", kontostand = kontostand + '".$bettelsumme."' WHERE uid = '".$_GET['ref']."'");

refumsatz ($bettelsumme,$_GET['ref']);
aktivralley ($bettelsumme,$_GET['ref']);
bilanz(0,$bettelsumme);
$betteltext = '<b>Du hast für den User '.$_GET['ref'].' gerade '.$bettelsumme.' '.$waehrung.' erbettelt!</b>';
} else {
$reloadcheck = mysql_fetch_array($reloadcheck);
$betteltext = '<b><font color="#FF0000">Du bist noch für '. round((($reloadcheck['bis'] - time())/60),0) .' Minuten fürs Betteln gesperrt</font></b>';
}
}
}
?>

<?head("Betteln auf ".$seitenname);?>
Verdiene auch Du mit!<br>
Melde Dich bei <?=$seitenname;?> an und bewirbe Deinen persönlichen Bettellink, so
verdienst Du deine <?=$waehrung;?> fast wie im Schlaf!<br>
<br>
<div align="center"><?=$betteltext;?></div>
<?foot();?>

<?
$filename = 'lib/texte/bettelwerbung.txt';
$fp = fopen ($filename, "r");
$inhalt = fread ($fp, filesize ($filename));
fclose ($fp);
$inhalt = str_replace('\\', '', $inhalt);

if ($inhalt != ''){
head("Werbung dieser Seite");
echo nl2br($inhalt);
foot();
}
?>
<?} else {?>
<?head("Betteln auf ".$seitenname);?>
Aufruf wurde nicht vergütet!<br>
<br>
<div align="center"><?=$betteltext;?></div>
<?foot();?>

<?
$filename = 'lib/texte/bettelwerbung.txt';
$fp = fopen ($filename, "r");
$inhalt = fread ($fp, filesize ($filename));
fclose ($fp);
$inhalt = str_replace('\\', '', $inhalt);

if ($inhalt != ''){
head("Werbung dieser Seite");
echo nl2br($inhalt);
foot();
}

}?>das teil ist so gemacht das die werbung immer angezeigt wird aber nur bei User aus Deutschland,Schweiz und österreich bekommt der User eine vergütung

Hmm, bei mir kommt nur: Aufruf wurde nicht vergütet!, egal ob ich aus Deutschland oder aus was weiß ich für einem Land bin. Habe das Vms 1.2.4

Hardy
19.09.2009, 21:10
Hast du denn auch das ländercode addon drinne?
http://www.designerscripte.net/downloads.php?do=file&id=196

mcmuhl
19.09.2009, 21:15
Hast du denn auch das ländercode addon drinne?
http://www.designerscripte.net/downloads.php?do=file&id=196

Ja und die Datenbank wurde auch aktualisiert.

Hardy
19.09.2009, 21:32
Mach mal nach $cc2=$ccode_array['CC2'];


echo'$cc2';

und schau mal was dann da steht.

mcmuhl
19.09.2009, 21:47
Mach mal nach $cc2=$ccode_array['CC2'];


echo'$cc2';

und schau mal was dann da steht.

Nein leider nicht dort steht dann:

$cc2
Betteln auf Lalala
Aufruf wurde nicht vergütet!

Sebmaster
19.09.2009, 21:48
und schau mal was dann da steht.

Kann ich dir jetzt schon sagen, es wird $cc2 da stehen:rolleyes: <== Edit: Mist, zu spät

Mach lieber:
echo $cc2;

mcmuhl
19.09.2009, 21:55
Kann ich dir jetzt schon sagen, es wird $cc2 da stehen:rolleyes: <== Edit: Mist, zu spät

Mach lieber:
echo $cc2;

Hey,

leider scheint das auch nicht das Problem zu sein. Er zeigt immernoch das selbe an:
Aufruf wurde nicht vergütet!

Sebmaster
19.09.2009, 22:10
Hey,

leider scheint das auch nicht das Problem zu sein. Er zeigt immernoch das selbe an:
Aufruf wurde nicht vergütet!

Davor nichts?

Hardy
19.09.2009, 22:13
Naja das Aufruf wurde nicht vergütet! weiterhin da steht habe ich mir eigentlich schon gedacht. Wenn bei echo $cc2;
allerdings auch nicht der Ländercode (Also D für Deutschland) vor "Betteln auf BLABLABLA" erscheint dann hast du das Update des Ländercodes nicht korrekt eingespielt.

mcmuhl
19.09.2009, 22:14
Davor nichts?

Wie davor nichts ? Ob nicht noch etwas anderes dabei stand ? Wenn Ja dann Nein :-)

/e
Ich werde nochmals das Ländercode addon drauf machen. Mal schauen ob ich etwas falsch gemacht habe.

/e2:
Also ich habe nochmal alles nachgeschaut und dort kann man eigtl. keinerlei Fehler machen...

Datenbankeintrag besteht.
Alles im richtigen Order.
Geupdatet.
Cron ausgeführt.
Mehr kann ich ja nicht machen :-)

Sebmaster
19.09.2009, 22:17
Wenn sonst nichts da steht, fehlen ihm entweder die Daten, oder er kennt die IP nicht, ich tippe aber auf ersteres:wink:

Schau mal in die Tabelle laendercode, ob da irgendwelche Zeilen drin sind

mcmuhl
19.09.2009, 22:23
Wenn sonst nichts da steht, fehlen ihm entweder die Daten, oder er kennt die IP nicht, ich tippe aber auf ersteres:wink:

Schau mal in die Tabelle laendercode, ob da irgendwelche Zeilen drin sind

IP_FROM
IP_TO
CC2
CC3
land

diese sind eingetragen.

Sebmaster
19.09.2009, 22:30
Nicht Spalten, sondern Zeilen:suspicious:

mcmuhl
19.09.2009, 22:34
Nicht Spalten, sondern Zeilen:suspicious:


0 Zeilen, okay irgendwie kann er nicht auf mein mysql zugreifen. Stimmts ? :-(
MySQL lieferte ein leeres Resultat zurück (d. h. null Zeilen). (die Abfrage dauerte 0.0006 sek.)

Sebmaster
19.09.2009, 22:53
Nö, das heißt, der Ländercron konnte nichts importieren. Ist es möglich, dass du den Cron für VMS1.1 statt 1.2 nimmst?:knueppel:

mcmuhl
19.09.2009, 22:57
Nö, das heißt, der Ländercron konnte nichts importieren. Ist es möglich, dass du den Cron für VMS1.1 statt 1.2 nimmst?:knueppel:

Hmmm, denke ich nicht, ich habs für Vms 1.2 geladen und der cron scheint auch ausgeführt zu werden da eigentlich bei 1.1 Crons ja nur eine weiße Seite bleibt und bei mir wird angezeigt Cron gelaufen.

Sebmaster
19.09.2009, 22:59
Hmmm, denke ich nicht, ich habs für Vms 1.2 geladen und der cron scheint auch ausgeführt zu werden da eigentlich bei 1.1 Crons ja nur eine weiße Seite bleibt und bei mir wird angezeigt Cron gelaufen.

Die Ländercodedatei auch richtig platziert/entpackt?

mcmuhl
19.09.2009, 23:05
Die Ländercodedatei auch richtig platziert/entpackt?

Ja, ich bin mir total sicher das alles im richtigen Ordner ist. Habe es schon öfters getestet und neu hochgeladen.

Sebmaster
19.09.2009, 23:18
Ja, ich bin mir total sicher das alles im richtigen Ordner ist. Habe es schon öfters getestet und neu hochgeladen.

Es gibt nur 2 mögliche Gründe:


Cron kaputt
Du machst was falsch

In welche Ordner steckst du denn die Dateien, und wie führst du alles aus?

mcmuhl
20.09.2009, 00:52
Es gibt nur 2 mögliche Gründe:


Cron kaputt
Du machst was falsch

In welche Ordner steckst du denn die Dateien, und wie führst du alles aus?

Ich versteh die Welt nicht mehr, beim so c.a 20ten klick auf den Cron hat er es endlich übernommen und es geht auch alles. Naja jezt klappt es ja.. Vielen dank für alle die versucht haben mir zu helfen :-)

Lokutos
20.09.2009, 10:21
als kleiner tipp wenn du es beim betteln einsetzt solltest du diese ratschläge beherzigen weil je nach bettelseite doch eine rechte datenbanklast zusammenkommen kann.
http://designerscripte.net/showthread.php?t=8182&highlight=l%E4ndercode

cr00sy
14.02.2010, 17:47
Hey,

wie würde der Code aussehen wenn ein User das Bettellink-Pro addon von Lokutos hat? :rolleyes:

cr00sy
27.02.2010, 18:56
Keiner eine Idee? :suspicious:

didith1207
27.02.2010, 20:16
wer hat das bettellink pro wie soll das aussehen? du solltest den progger fragen hier kennt so gut wie keiner dein gemeintes addon

Lokutos
27.02.2010, 21:28
Hi zu meinen addons kannst du gerne fragen direkt an mich wenden
natürlich antworte ich auch in foren meinte auch das beantwortet zu haben *ugly*
hab ich wohl vergessen Sorry.

Hier die Anleitung:

suche in der betteln_verg.php

<?füge direkt danach ein:


$ccode_array = mysql_fetch_array(db_query("SELECT * FROM laendercode WHERE IP_FROM<=inet_aton('".$ip."') AND IP_TO>=inet_aton('".$ip."');"));
if($ccode_array['CC2'] == 'DE' OR $ccode_array['CC2'] == 'AT' OR $ccode_array['CC2'] == 'CH'){suche ?> und füge davor


}else{
//Länderprüfung falsch
$betteltext = '<b><font color="#FF0000">Du kommst leider nicht aus DE AT oder CH</font></b>';
}
ein.


ist ungetestet müsste aber gehen.
MFG
Lokutos