SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Der CSS-Problemlöser

Der CSS-Problemlöser zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > MySQLi/PDO/(MySQL)
Hilfe Community Kalender Heutige Beiträge Suchen

MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 27.07.2004, 11:42:04
Lerian Lerian ist offline
Anfänger
 
Registriert seit: Jul 2004
Beiträge: 22
Bannersystem Probleme

Mahlzeit,

ich bin seit einigen Tagen am versuchen ein Bannersystem zu realisieren.
Die Eingabe habe ich soweit fertig, das war auch an sich ganz easy. Aber mit der Ausgabe komm ich absolut nicht zurecht. Vielleicht kann mir hier jemand helfen. Also zur Beschreibung:

Tabelle: adview
Spalten: id, views, code, status, clicks.
In der Id, steht die ID des Banners/ Eintrages.
In Views wie oft er schon einmal aufgerufen worden ist.
In Code steht der html Code für das Banner.
In Status, ob er aktiviert ist, oder ob er deaktiviert ist.
In Clicks, wie oft er angeklickt worden ist.

Nun möchte ich folgendes machen:

Die Banner werden auf einer gesonderten Seite dargestellt. Beim Aufruf wird aber immer derjenige mit der kleinsten Zahl ( in der Spalte Views) aufgerufen, damit jeder gleich viel dran kommt.Ebenso habe ich das mit der Hinzufügung bei Views ( wenn der Banner aufgerufen werden soll, dann soll die Zahl bei Views um eins summiert werden, damit die Anzahl wieder stimmt) noch net hinbekommen.

Frage:
Geht das überhaupt mit der Darstellung durch die kleinste Zahl, weil ich mich frage, was passiert, wenn bei zwei Einträgen die gleiche Zahl steht. Ruft er dann einfach irgendeinen Banner auf, oder bringt er einen Fehler?

Dann möchte ich, dass wenn der User auf das Banner clickt, ein Eintrag in der Spalte Clicks erfolgt, so das ich sehen kann, wie oft der eine oder der andere Banner angeklickt wird.

Natürlich sollen nur die Banner aufgerufen werden, die auch aktiviert sind ( status = 1).

Kann mir dazu jemand ein paar Tipps geben, da ich absolut in ner Sackgasse angekommen bin.

Danke

Lerian

P.S. Sollte es was Größeres sein, dann bin ich auch gerne bereit mich über ICQ zu unterhalten und meinen Geldbeutel auf zu machen. Ist mein ernst, da ich echt siet Donnerstag letzter Woche dran hänge und nun am verzweifeln bin.
Mit Zitat antworten
  #2  
Alt 27.07.2004, 14:56:33
Benutzerbild von yozek
yozek yozek ist offline
Junior Member
 
Registriert seit: May 2004
Ort: Köln
Alter: 43
Beiträge: 226
yozek eine Nachricht über ICQ schicken yozek eine Nachricht über MSN schicken
Also:

PHP-Code:
$db->query('SELECT code,id from adview where status="1" ORDER by view ASC LIMIT 0,1');
$row $db->fetch_row();
print(
'<a href="?aktion=update&id='.$row[1].'">'.$row[0].'</IMG>');

//* So nun wird der Banner dargestellt, welcher mit den kleinsten Viewwert.
//* Wird der Banner angekilct ist er auf eine Aktion verbunden.

$if ($_GET['aktion'] == 'update') :
$db->query('UPDATE adview SET view=view+1, click=click+1 WHERE id=' $_GET['id']);
endif; 
__________________
yozek

King of my castle - 127.0.0.1
Computer befreien das Denken vom Rechnen

Geändert von yozek (27.07.2004 um 15:32:53 Uhr)
Mit Zitat antworten
  #3  
Alt 27.07.2004, 15:19:52
Lerian Lerian ist offline
Anfänger
 
Registriert seit: Jul 2004
Beiträge: 22
Hm....

....also ehrlich gesagt, könnt ich jetzt das weinen anfangen.

Das ist alles? Das ist der ganze Code um das zu machen was ich wollte und ich ***** suche seit einigen Tagen nach der Lösung und dann sowas..... also irgendwie komm ich mir gerade wie der kleinste Newbie auf der gesamten Welt vor.

Erstmal recht herzlichen Dank, yozek. Vielen Dank. Ich werde das nun mal ausprobieren und dann mich wieder melden.

Thx..
Mit Zitat antworten
  #4  
Alt 27.07.2004, 15:33:46
Benutzerbild von yozek
yozek yozek ist offline
Junior Member
 
Registriert seit: May 2004
Ort: Köln
Alter: 43
Beiträge: 226
yozek eine Nachricht über ICQ schicken yozek eine Nachricht über MSN schicken
es hängt davon ab, wie der BANNER Code gespeichert ist.
__________________
yozek

King of my castle - 127.0.0.1
Computer befreien das Denken vom Rechnen
Mit Zitat antworten
  #5  
Alt 27.07.2004, 16:09:38
Lerian Lerian ist offline
Anfänger
 
Registriert seit: Jul 2004
Beiträge: 22
Hm...

...also:
Der Banner Code ist wie folgt gespeichert:
Code:
<a href="http://www.beispiel.de" target="new"><img src="banner.gif"></a>
Aber er wirft mir noch nen Fehler raus.
Aber das bekomme ich sicherlich noch hin.

Kommt eigentlich bei der Zeile mit dem if wirklich ein $ davor und dann keine geschwungene Klammer {} ?

NACHTRAG:

wobei ich den Banner Code natürlich ändern kann wie ich will. Das der derzeitige noch net so ganz passt, is mir klar. aber erstmal die funktion, dann die feinheiten... ;)

den fehler den er mir immer wieder auswirft ist parse error. unexpected T_VARIABLE....
...aber auch nicht unbändigbar... *gg*

Geändert von Lerian (27.07.2004 um 16:17:35 Uhr)
Mit Zitat antworten
  #6  
Alt 27.07.2004, 21:08:56
Benutzerbild von yozek
yozek yozek ist offline
Junior Member
 
Registriert seit: May 2004
Ort: Köln
Alter: 43
Beiträge: 226
yozek eine Nachricht über ICQ schicken yozek eine Nachricht über MSN schicken
Hi,

also ich würde wie folg vorgehen:
Du fügst ein Feld hinzu, dass es wie folgt aussiegt

Tabelle: adview
Spalten: id, views, banner, href, status, clicks.

banner: Endweder die URL zum Bild oder der direkte <IMG TAG>
Href: Ziel vom Banner
Bei der Darstellung sollte folgende Abfrage stehen

PHP-Code:
$db->query('SELECT id,banner from adview where status="1" ORDER by view ASC LIMIT 0,1');
$row $db->fetch_row();
print(
'<a href="refeerer.php?aktion=weiter&id='.$row[0].'"><img src="'.$row[2].'" border="0"></A>'); 
Dann wird eine neue phpdatei erstellt mit dem Namen refeerer.php.

In dieser wird nur folgendes gemacht:

PHP-Code:
<?

if (!$_GET['aktion'] == 'weiter') : die('Ungültige eingabe'); endif;

if ($_GET['id'): 
   $id = $_GET['id'];
   $db->query("Update adview SET view=view+1, click=click+1 where id='$id'");
   $db->query("SELECT href FROM adview where id='$id'");
   $row = $db->fetch_row();
   $banner_link = $row[0]
//* Nun wird in die Schleife normaler HTML Befehl widergegeben
?>
<center><font color="red>Sie werden nun weitergeleitet</font></center>
<script LANGUAGE="JavaScript">
  window.location.href='<? print ($banner_link);?>'
</script>
<? endif;?>
Laß dich von meiner Art nicht beunruhigen.
Ich verwende seit ca 1 Jahr eine selbst geschriebene PHP Klasse, mit der ich einfach auf die Datenbank zugreifen kann. Aus diesem Grund fangen bei mir alle DB anfragen mit $db->... an... Das musst du dementsprechend bei dir umändern.

ich verwende einfach aus Umgewöhnung die alternative Syntax für die Verschatelungen.
Bei mir fängt eine IF schleife mit if (..) : (Doppelpunkt) und endet mit endif:

PHP-Code:
if (isset($variable):
   print(
'Es gibt sie wirklich');
else:
   print(
'Es war alles nur gelogen');
endif;

//* Genau so mach eich es mit for und while

for ($i=0;$i<2;$i++):
   print (
$i);
endfor;

while (
$db->fetch_row()):
   
$row[0]++;
endwhile; 
Wenn etwas nicht funktioniert, kannst du mich gerne mal im ICQ anreden oder mir ne PM schicken!

Gruss
__________________
yozek

King of my castle - 127.0.0.1
Computer befreien das Denken vom Rechnen
Mit Zitat antworten
  #7  
Alt 28.07.2004, 13:41:11
Lerian Lerian ist offline
Anfänger
 
Registriert seit: Jul 2004
Beiträge: 22
Also ich wollt nochmal danke sagen, jetzt hat es funktioniert.

Habe zwar den Code ein wenig umgeschrieben, aber es hat funktioniert...


Vielen Dank nochmal ;)
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 13:13:26 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt