Hallo,
suche einen Schnippsel mit dem Banner nur einzeln geklickt werden können.
Wer hat sowas?
Vielen lieben Dank schonmal!
Gruß, Roadstar
Druckbare Version
Hallo,
suche einen Schnippsel mit dem Banner nur einzeln geklickt werden können.
Wer hat sowas?
Vielen lieben Dank schonmal!
Gruß, Roadstar
Mal hoch hol, hab das ganze Forum durchforstet, ich weiss es gab mal nen Thread zu dem Thema, aber das find ich nicht mehr
Max Forcedbanner auf 1 setzen und aus dem Userprofil die Einstellungen dafür entfernen ? wäre jetzt das einfachste
ansonsten wäre das eine framegeschichte ..
siehe als bsp hier:
- beim topframeaufruf wird eine extra id gespeichert ala insert into vms_user/konto _daten wo auch immer man will kann man ja auch mit create code einen extra erstellen
- wird jetzt ein weiterer frame aufgerufen und die id nicht wieder auf 0 gesetzt wurde dann "Aufruf fehlerhaft" oder wie auch immer man das nennen will
- wenn die kampagne abgelaufen ist dann wird die id wieder auf 0 gesetzt und ist bereit für die nächsten aufruf
Nein, dass ebe nicht, sonst hätte ich hier nicht den alten Thread ausgekramt.
Wie ich den nächsten banner frei gebe weiss ich, also 1 zu 0, aber wie bzw wo muss ich was eintragen das aus der 0 eine 1 wird? genauso fehlt ja dann die abfrage wenn 1 " keine vergütung "
die kontodaten um ein feld erweitern das nennst du dann active_banner oder wie auch immer dann beim aufruf der topframe die zeile
PHP-Code:
UPDATE vms_kontodaten SET active_banner = 1 WHERE uid = '".$_SESSION['uid'];
hier wenn der javascript countdown timer abgelaufen ist da muss dann ajax sowie die message in die klammer rein ala
hier auch der typ post, die url zum verarbeiten der funktion und als data einfach die session uidCode:$.ajax({
type: "POST",
url: die url zum verarbeiten
data: '".$_SESSION['uid'],
});
hier die php zum verarbeiten
kann jetzt auch sein das es nicht ganz korrekt vom syntax her ist da ich mitten im umzug steck und es am pc nicht abgleichen kannPHP-Code:
<?php
$uid = $_GET['uid'];
UPDATE vms_kontodaten SET active_banner = 0 WHERE uid = '".$_SESSION['uid'];
ja und nicht mysql_real_escape_string vergessen dann ist das eine saubere sache
achja und um anzuzeigen das ein fehlerhafteraufruf entstanden ist eine einfache if schleife um den kompletten php krempel in der topframe der prüft ob 1 oder 0
active_banner = 1
active_banner = 0
sind beides kein Problem, dass Problem ist eher die if abfrage
if ($_SESSION['uid'] >= 1 AND $pruefung['tlinks'] = $pruefung['prlinks'] ) {
< vergütet nichts
> vergütet nichts
= vergütet nichts
== vergütet alles
Ich glaub du hast da einen Denkfehler drin
Es muss ja nicht die Session uid geprüft werden sondern den wert von der jeweiligen uid
also wäre die if abfrage eher so..
PHP-Code:
// Hier erhalten wir die 1 oder 0 der jeweiligen Session
$data = mysql_query ("SELECT active_banner FROM vms_kontodaten WHERE uid = '".$_SESSION['uid']."'");
$data_id = mysql_fetch_assoc['.$data.'];
PHP-Code:
// Hier prüfen wir jetzt ob der user aktiv ist oder noch gesperrt
if ($data_id > 0)
{
$msg= 'Fehler es wird nur ein Banner pro Ablauf gewährt';
}
else
{
// Regulärer Ablauf des Topframes
}
Das Problem war nicht die IF-Abfrage in der Topframe sondern das Eintragen in die DB vorher. Aber habe es gelöst
Es gibt etwas viiiiiel simpleres für den Frame.
So musst du dich nicht mit 1 und 0 und Zwischenspeicherung und all das beschäftigen ;-).PHP-Code:
if (isset ($_SESSION['nextFrameTime']) && time() < (int)$_SESSION['nextFrameTime']) { die('Man soll nur einen Banner aufrufen.'); /** hier die fehlermeldung in einem die oder ähnliches */ }
$_SESSION['nextFrameTime'] = time()+$wartezeit; // $wartezeit entsprechend ersetzen