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 ::

Einführung in XHTML, CSS und Webdesign

Einführung in XHTML, CSS und Webdesign 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 > PHP Grundlagen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 14.02.2002, 17:52:25
ProGamer11 ProGamer11 ist offline
Anfänger
 
Registriert seit: Feb 2002
Beiträge: 55
Top 5 Liste

Hi

will für meinen Besuchertausch Dienst eine Top5 Liste mit den meisten Referals machen.
Die DB Struktur ist so aufgebaut:

ID | geworbenvon | account | ..
=============================
1 | (leer) | Muenchbach |
2 | Muenchbach | test |
3 | Muenchbach | test 2 |
4 | test | test 3 |

Account "Muenchbach" hat also 2 Referals und Account "test" hat 1 Referal.
Jetzt soll das sortiert nach den meisten Referals angezeigt werden und auf 5 begrenzt (.. limit 5 ?).

Mit diesem Code mache ich das aber das es nach den meisten Referals sortiert geht nicht , weil ich nicht weiss man was abfragen muss :-(


<?
$a=mysql_query("select * from bannertausch");
while($b=mysql_fetch_object($a))
{

$daten1 = mysql_query("select count(*) as insg from bannertausch where geworbenvon like '$b->account' and status = '1' ");
$daten2 = mysql_fetch_array($daten1);

// Hier mache ich eine Tabelle:
print ("Account: $b->account, Referals: $daten2[insg]<br>");

}
?>
Mit Zitat antworten
  #2  
Alt 14.02.2002, 18:50:52
Matthias Matthias ist offline
Moderator
 
Registriert seit: Jan 2002
Ort: CologneCity
Alter: 46
Beiträge: 484
So mußt du deine SQL Abfrage formulieren:

mysql_query("select geworbenvon,count(geworbenvon) as total from bannertausch group by geworbenvon order by total desc limit 5");

So mach jetzt Feierabend
Matthias
Mit Zitat antworten
  #3  
Alt 14.02.2002, 20:07:21
ProGamer11 ProGamer11 ist offline
Anfänger
 
Registriert seit: Feb 2002
Beiträge: 55
danke, hat geklappt :D


Nachtrag:
ups, doch nicht


Der Code:

<?
$a=mysql_query("select * from bannertausch ");
while($b=mysql_fetch_object($a))
{
$i++;


$daten1 = mysql_query("select account,website,geworbenvon,count(geworbenvon) as total from bannertausch where geworbenvon='$b->account' group by geworbenvon order by total desc limit 5 ");
$daten2 = mysql_fetch_array($daten1);

//Tabelle
print ("User: $b->account Referals: $daten2[total]");

}
?>

listet die Accounts nach Account auf, aber nicht nach den Referals sortiert.

wenn ich es so mache:

<?
$a=mysql_query("select account,website,geworbenvon,count(geworbenvon) as total from bannertausch group by geworbenvon order by total desc limit 5");
while($b=mysql_fetch_object($a))
{

//Tabelle
print ("User: $b->account Referals: $b->tota]");

}
?>

dann listet er meinen Account (mit 0 Refs) als erstes und zeigt 5 Referals an, 5 ist aber die Mitgliederzahl insg...

Wo liegt mein Fehler?

Geändert von ProGamer11 (14.02.2002 um 21:31:08 Uhr)
Mit Zitat antworten
  #4  
Alt 15.02.2002, 11:02:18
Matthias Matthias ist offline
Moderator
 
Registriert seit: Jan 2002
Ort: CologneCity
Alter: 46
Beiträge: 484
print ("User: $b->account Referals: $b->tota]"); <--- Schau mal hier. Wenn du total schreibst sollte es funktionieren :))))
Mit Zitat antworten
  #5  
Alt 15.02.2002, 15:06:03
ProGamer11 ProGamer11 ist offline
Anfänger
 
Registriert seit: Feb 2002
Beiträge: 55
Hi

nein, geht leider nicht.. ich erhalte

Muenchbach: 8
x 1
x 2


jedoch habe ich keine Referals, die anderen auch nicht. :-(


hmm.. also insg. gibt es 11 Mitglieder.
Mitglied 1 bin ich, habe mir jetzt 2 Referals bei Account 1 eingestellt. Account 2 hat keine Referals und erhalte:

User: (account1) Referals: 9
User: (account2) Referals: 2

bei Account 2+3 steht lediglich unter "Geworbenvon" mein Account "Muenchbach" drin.

Ist vielleicht ein bischen kompliziert erklärt, aber ich hoffe du kannst mir weiterhelfen
Mit Zitat antworten
  #6  
Alt 15.02.2002, 16:13:37
Matthias Matthias ist offline
Moderator
 
Registriert seit: Jan 2002
Ort: CologneCity
Alter: 46
Beiträge: 484
?? Erklär mal bitte wie die Ausgabe genau aussehen soll.
Also am besten wie oben die Tabelle hier rein schreiben (komplett) und wie es dann bei der ausgabe aussehen soll.
Mit Zitat antworten
  #7  
Alt 25.02.2002, 14:41:12
ProGamer11 ProGamer11 ist offline
Anfänger
 
Registriert seit: Feb 2002
Beiträge: 55
Hallo

hier der Code mit Beispieldaten:


<div align="center">
<table width="523" border="1" cellpadding="0" cellspacing="0" bordercolor="#FFFFFF" bgColor="#336699">
<tr>
<td height="22" valign="top" bordercolor="#336699" colspan="4">
<div align="center"><font face="Arial, Helvetica, sans-serif" color="#FFFFFF"><b>
Top5</b></font></div>
</td>
</tr>
<tr>
<td valign="top" colspan="4" bordercolor="#336699" height="21">
<div align="center"><font face="Arial, Helvetica, sans-serif"><b><font color="#FFFFFF">Bannertausch</font></b></font></div>
</td>
</tr>
<tr>
<td width="94" height="21" valign="top" bordercolor="#336699">
<div align="center"><font face="Arial, Helvetica, sans-serif" color="#FFFFFF"><b>Platz:</b></font></div>
</td>
<td width="125" valign="top" bordercolor="#336699">
<div align="center"><font face="Arial, Helvetica, sans-serif" color="#FFFFFF"><b>Mitglied:</b></font></div>
</td>
<td width="176" valign="top" bordercolor="#336699">
<div align="center"><font face="Arial, Helvetica, sans-serif" color="#FFFFFF"><b>Website:</b></font></div>
</td>
<td width="118" valign="top" bordercolor="#336699">
<div align="center"><font face="Arial, Helvetica, sans-serif" color="#FFFFFF"><b>Referals:</b></font></div>
</td>
</tr>
<tr>
<td height="21" valign="top" bordercolor="#336699">
<div align="center"><font face="Arial, Helvetica, sans-serif" color="#FFFFFF">1
</font></div>
</td>
<td valign="top" bordercolor="#336699">
<center>
<font face="Arial, Helvetica, sans-serif" color="#FFFFFF">test </font>
</center>
</td>
<td valign="top" bordercolor="#336699">
<center>
<font face="Arial, Helvetica, sans-serif" color="#FFFFFF">http://www.Test.de</font>
</center>
</td>
<td valign="top" bordercolor="#336699">
<center>
<font face="Arial, Helvetica, sans-serif" color="#FFFFFF">12 </font>
</center>
</td>
</tr>
<tr>
<td height="21" colspan="4" valign="top" bordercolor="#336699">&nbsp;</td>
</tr>
</table>
</div>


Robin
Mit Zitat antworten
  #8  
Alt 25.02.2002, 19:09:03
Matthias Matthias ist offline
Moderator
 
Registriert seit: Jan 2002
Ort: CologneCity
Alter: 46
Beiträge: 484
Hmmm.
Ist Referals auch eine Spalte in der db??
Dann wäre es ja ganz einfach.

$a=mysql_query("select account,website,geworbenvon from bannertausch order by referals desc limit 5");

Hab ichs jetzt :)))

Das ist wieder ne schwierige Geburt :))
Matthias
Mit Zitat antworten
  #9  
Alt 25.02.2002, 19:15:24
ProGamer11 ProGamer11 ist offline
Anfänger
 
Registriert seit: Feb 2002
Beiträge: 55
Hi

ne Referals gibts nicht, diese Variable muss erst gecountet werden ;)
hehe, das wird noch was *g*

also wie hier:

ID | geworbenvon | account | ..
=============================
1 | (leer) | Muenchbach |
2 | Muenchbach | test |
3 | Muenchbach | test 2 |
4 | test | test 3 |

da muss man dann wohl erst die "geworbenvon"s der Accounts zusammenzählen und dann nach geworbenvon (limit5) anzeigen lassen, oder?
Mit Zitat antworten
  #10  
Alt 27.02.2002, 11:49:16
Matthias Matthias ist offline
Moderator
 
Registriert seit: Jan 2002
Ort: CologneCity
Alter: 46
Beiträge: 484
Ich hab das gefühl das wir aneinander vorbei reden :))))

Aber ich glaube ich habs jetzt kapiert. Muß aber selber erst ein bißchen testen.

Schick mir mal bitte die Tabelle. Dann muß ich mir die nicht nachbauen. Du kannst mit phpmyadmin die Daten in eine Datei speichern.

Matthias
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

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 12:52:33 Uhr.


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


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