Top liste en php + mysql

Soyez le premier à donner votre avis sur cette source.

Snippet vu 6 667 fois - Téléchargée 31 fois

Contenu du snippet

#
# Structure de la table `ip_topliste`
#

CREATE TABLE ip_topliste (
ip varchar(16) NOT NULL default '',
vote decimal(6,0) NOT NULL default '0',
jour date NOT NULL default '0000-00-00'
) TYPE=MyISAM;
# --------------------------------------------------------

#
# Structure de la table `topliste`
#

CREATE TABLE topliste (
id int(11) NOT NULL auto_increment,
titre varchar(150) NOT NULL default '',
lien varchar(150) NOT NULL default '',
details varchar(255) NOT NULL default '',
entrees decimal(6,0) NOT NULL default '0',
votes decimal(6,0) NOT NULL default '0',
inscription datetime NOT NULL default '0000-00-00 00:00:00',
PRIMARY KEY (id)
) TYPE=MyISAM;

voila la requete sql !
ensuite, changez les variables en haut de page, et pour les votes, c'est votrescript.php?op=voter&sid=id_du_site
Vous pouvez donner le nom que vous voulez a ce script, rien n'y changera !!

Source / Exemple :


<?php
$host = "localhost";
$user= "root";
$pass = "pass";
$base = "mabase";
$c = mysql_connect("$host","$user","$pass");
mysql_select_db("$base",$c);
function index($debut){
print "<CENTER><TITLE>Topliste De mon site perso !</TITLE>Top De mon site perso !<P><FORM method=\"POST\" action=\"$PHP_SELF\">Rechercher: <INPUT type=\"text\" name=\"motcles\" value=\"$motcles\"><INPUT type=\"hidden\" name=\"op\" value=\"rechercher\"> <INPUT type=\"submit\" value=\"Rechercher !\"></FORM><P></CENTER>";
if(!isset($debut)){
$sql = mysql_query("SELECT * FROM topliste ORDER by votes AND entrees DESC LIMIT 0,20");
}
elseif($debut){
$fin = $debut + 20;
$sql = mysql_query("SELECT * FROM topliste ORDER by votes AND entrees DESC LIMIT $debut,$fin");
}
//$ni = mysql_num_rows(mysql_query("SELECT * FROM topliste"));
print "<CENTER><TABLE align=center border=\"1\" cellspacing=0 cellpadding=0 width=\"90%\">";
print "<TR><TD align=center width=\"10%\">Place</TD><TD align=center width=\"70%\">Détails</TD><TD align=center width=\"10%\">Entrées</TD><TD align=center width=\"10%\">Votes</TD></TR>";
if($debut)
$j = $debut;
while(list($id,$titre,$lien,$details,$entrees,$votes,$datei,$login,$pass)=mysql_fetch_row($sql)){
$j++;
print "<TR><TD align=center width=\"10%\">$j.</TD><TD align=center width=\"70%\"><CENTER><A HREF=\"$PHP_SELF?op=visiter&sid=$id\" target=\"_blank\">$titre</A><BR>$details</CENTER></TD><TD align=center width=\"10%\">$entrees</TD><TD align=center width=\"10%\">$votes<BR><a HREF=\"$PHP_SELF?op=voter&sid=$id\">Voter</A></TD></TR>";
}
print "</TABLE></CENTER>";
$nb = mysql_num_rows(mysql_query("SELECT * FROM topliste"));
if($nb > 20){
$nb = $nb / 20;
$nb = ceil($nb);
$nb = $nb + 1;
echo "<CENTER>";
for($i=1; $i < $nb; $i++){
$d = $i;
if($i == 1){
$d = $i - 1;
}
$debut = $d.'0';
print "<A HREF=\"$PHP_SELF?debut=$debut\">$i</A>&nbsp;";
}
echo "</CENTER>";
}
}

function rechercher($motcles,$debut){
if(!isset($debut)){
print "<CENTER><TITLE>Top Liste De mon site perso !</TITLE>Top Liste De mon site perso ! <P><FORM method=\"POST\" action=\"$PHP_SELF\">Rechercher: <INPUT type=\"text\" name=\"motcles\" value=\"$motcles\"><INPUT type=\"hidden\" name=\"op\" value=\"rechercher\"> <INPUT type=\"submit\" value=\"Rechercher !\"></FORM><P></CENTER>";
$sql = mysql_query("SELECT * FROM topliste WHERE details LIKE '%$motcles%' OR titre LIKE '%$motcles%' ORDER by votes AND entrees DESC LIMIT 0,20");
}
elseif($debut){
$fin = $debut + 20;
$sql = mysql_query("SELECT * FROM topliste WHERE details LIKE '%$motcles%' OR titre LIKE '%$motcles%' ORDER by votes AND entrees DESC LIMIT $debut,$fin");
}
$nnnp = mysql_num_rows($sql);
print "<CENTER>Il y a $nnnp résultat(s) correspondant à la recherche <I>$motcles</I>.<P></CENTER>";
print "<CENTER><TABLE align=center border=\"1\" cellspacing=0 cellpadding=0 width=\"90%\">";
print "<TR><TD align=center width=\"10%\">Place</TD><TD align=center width=\"70%\">Détails</TD><TD align=center width=\"10%\">Entrées</TD><TD align=center width=\"10%\">Votes</TD></TR>";
if($debut)
$j = $debut;
while(list($id,$titre,$lien,$details,$entrees,$votes,$datei,$login,$pass)=mysql_fetch_row($sql)){
$j++;
print "<TR><TD align=center width=\"10%\">$j.</TD><TD align=center width=\"70%\"><CENTER><A HREF=\"$PHP_SELF?op=visiter&sid=$id\" target=\"_blank\">$titre</A><BR>$details</CENTER></TD><TD align=center width=\"10%\">$entrees</TD><TD align=center width=\"10%\">$votes<BR><A HREF=\"$PHP_SELF?op=voter&sid=$id\">Voter</A></TD></TR>";
}
print "</TABLE></CENTER>";

$nb = mysql_num_rows(mysql_query("SELECT * FROM topliste WHERE titre LIKE '%$motcles%' OR details LIKE '%$motcles%'"));
if($nb > 20){
$nb = $nb / 20;
$nb = ceil($nb);
$nb = $nb + 1;
echo "<CENTER>";
for($i=1; $i < $nb; $i++){
$d = $i;
if($i == 1){
$d = $i - 1;
}
$debut = $d.'0';
print "<A HREF=\"$PHP_SELF?debut=$debut\">$i</A>&nbsp;";
}
echo "</CENTER>";
}
}

function visiter($sid){
$sql = mysql_query("SELECT id,lien,entrees FROM topliste WHERE id='$sid'");
list($id,$lien,$entrees) = mysql_fetch_row($sql);
$ne = $entrees + 1;
@mysql_query("UPDATE topliste SET entrees='$ne' WHERE id='$sid'") or print "IMPOSSIBLE DE COMPTABILISER VOTRE VISITE !";
header("Location:$lien");
}

function voter($sid){
$sql = mysql_query("SELECT id,lien,votes FROM topliste WHERE id='$sid'");
list($id,$lien,$votes) = mysql_fetch_row($sql);
$ne = $votes + 1;
$auj = date("Y:m:d");
$nbip = mysql_num_rows(mysql_query("SELECT * FROM ip_topliste WHERE ip='$REMOTE_ADDR' AND vote='$sid' AND jour='$auj'"));
$nbip2 = mysql_num_rows(mysql_query("SELECT * FROM ip_topliste"));
if($nbip == "0"){
@mysql_query("UPDATE topliste SET votes='$ne' WHERE id='$sid'") or print "IMPOSSIBLE DE COMPTABILISER VOTRE VISITE !";
@mysql_query("INSERT INTO ip_topliste VALUES('$REMOTE_ADDR','$sid','$auj')") or print "IMPOSSIBLE d'AJOUTER IP !";
}
@mysql_query("DELETE FROM ip_visiteurs WHERE date!='$auj'");
index("00");
}

switch($op){

case "voter":
voter($sid);
break;

case "rechercher":
rechercher($motcles,$debut);
break;

case "visiter":
visiter($sid);
break;

default:
index($debut);
break;
}
?>

Conclusion :


Aucun bug connu :) !
MErci a moi, webmaster de http://www.spidsl.com !

A voir également

Ajouter un commentaire Commentaires
Messages postés
97
Date d'inscription
lundi 17 décembre 2001
Statut
Membre
Dernière intervention
7 août 2015

KarSess des commentaires comme le tiens ne servent a rien. Tu ferais bien de ne rien dire si c'est pour critiqué inutilement.
Si tu n'y vois pas d'intérêt passe ton chemin car d'autres trouverons surement l'utilité du script de spidsl.
Merci Spidsl pour ta participation, je ne suis que debutant en php et ton script va surement me servir.
Messages postés
17
Date d'inscription
mercredi 26 octobre 2005
Statut
Membre
Dernière intervention
30 mars 2007

complètement inutile a banir
Messages postés
33
Date d'inscription
mardi 3 octobre 2006
Statut
Membre
Dernière intervention
18 décembre 2006

Comment je vais me faire repérer dans ce script j'ai dèja enregistré le nom de domaine du top liste
Messages postés
1
Date d'inscription
mardi 16 mai 2006
Statut
Membre
Dernière intervention
30 juin 2006

Ton code est vraiment catastrophique, pour le comprendre, il faut mettre du temps. Il faut vraiment que tu apprennes a coder proprement. Mais bon, c'est vrai que ca marche bien.
Messages postés
4
Date d'inscription
samedi 3 juillet 2004
Statut
Membre
Dernière intervention
9 septembre 2010

et un script pour rentrer les sites a voter
Afficher les 6 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.