Top liste en php + mysql

Soyez le premier à donner votre avis sur cette source.

Snippet vu 6 427 fois - Téléchargée 30 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

cs_fabrice88
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.
KarSess
Messages postés
17
Date d'inscription
mercredi 26 octobre 2005
Statut
Membre
Dernière intervention
30 mars 2007
-
complètement inutile a banir
daweb
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
bazouil
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.
BOB34MAL66
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

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.