Posté : 21 juil. 2006 22:01
Pi Fuck
^^
[L'Aspirine Du Web ! Assistance dans tous les domaines informatiques...]
http://s299426922.onlinehome.fr/forum/
Pareil !kadaz a écrit :Moi je vosi 3 rectangle blancs, je suis sur mozilla firefox.
Code : Tout sélectionner
$page = (is_int($_GET['page'])) ? $_GET['page'] : 1;real34 a écrit :Pareil !kadaz a écrit :Moi je vosi 3 rectangle blancs, je suis sur mozilla firefox.
Sinon, pour la sécurité, fais gaffe aux variables qui sont passées en GET ...
http://dasx4.free.fr/jeux/index.php?cat=jeux&page=' => Pas glop ! Pour les fans de SQL Injection je pense que cela doit être un régal
Il te suffit juste de faire unEt le tour est jouéCode : Tout sélectionner
$page = (is_int($_GET['page'])) ? $_GET['page'] : 1;
Sinon, je ne sais pas si tu utilises un logiciel genre NVU, FrontPage ou Dreamveawer pour ton site, mais si c'est le cas, lâche tout de suite !!!
Rien ne vaut le bloc-note pour avoir un code propre (maximum 15 balises à connaitre) et une page beaucoup plus légère en terme de poids, tout en ayant une page conforme aux normes !
Sachant qu'en plus, si tu fais du vrai xHTML/CSS normalement tu n'as aucun problème pour modifier le style de tes pages. Mais ca demande une bonne rigueur
Pour te motiver, fais un tour ici : http://www.csszengarden.com/
A droite tu as pleins de styles radicalements différents. Pourtant, le code HTML est exactement le même, seule la feuille de style CSS change
Sinon, ton compteur n'est pas un compteur de visite, mais un compteur de pages vues ... nuance
Bye !
Code : Tout sélectionner
$page = intval($_GET['page']);
if ($page < 1) $page = 1;Code : Tout sélectionner
class SQL
{
var $connexion;
var $debug;
var $nombre_requetes = 0;
function connecter($serveur, $base, $utilisateur, $motDePasse)
{
$this->connexion = @mysql_connect($serveur, $utilisateur, $motDePasse);
if (!$this->connexion)
$this->_erreur('La connexion à mysql à échoué', true);
if (!@mysql_select_db($base, $this->connexion))
$this->_erreur('Impossible de séléctionner la base de données', true);
}
function requete($requete)
{
$nombre_arguments = func_num_args();
if ($nombre_arguments > 1)
{
$arguments = func_get_args();
array_shift($arguments);
$arguments = array_map('mysql_real_escape_string', $arguments);
$requete = vsprintf($requete, $arguments);
}
$this->nombre_requetes++;
if ($this->debug)
echo '<p><strong>Requète SQL</strong> : ' . htmlspecialchars($requete) . ' -> ';
$resultat = @mysql_query($requete);
if (!$resultat)
{
if ($this->debug)
echo '<span style="color: red; font-weight: bold;">ERREUR</span></p>';
$this->_erreur('La requète à échouée', false);
}
elseif ($this->debug)
echo '<span style="color: green; font-weight: bold;">OK</span></p>';
return $resultat;
}
function enreg_suivant($resultat)
{
return mysql_fetch_assoc($resultat);
}
function _erreur($message, $fatale=null)
{
echo "<p><strong>Erreur SQL</strong> : ";
echo htmlspecialchars($message);
if ($this->debug)
echo ' (' . htmlspecialchars(mysql_error()) . ')';
echo '</p>';
if ($fatale)
exit;
}
}
Code : Tout sélectionner
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
<title>Test SQL</title>
</head>
<body>
<?php
$bdd = new SQL();
$bdd->debug = isset($_GET['debug']);
$bdd->connecter("localhost", "bdd1", "McStealer", "12345");
$req = $bdd->requete("SELECT * FROM `membres` WHERE ville = '%s'", $_GET['ville']);
?>
<table style="border: 1px solid black;">
<caption style="color: green; font-size: 15pt;">Membres :</caption>
<tr><th style="border: 1px solid black;">ID du membre</th><th style="border: 1px solid black;">Nom d'utilisateur</th><th style="border: 1px solid black;">Ville</th></tr>
<?php
$i = 0;
while ($enreg = $bdd->enreg_suivant($req))
{
echo '<tr><td style="border: 1px solid black;">' . $enreg['id'] . '</td><td style="border: 1px solid black;">' . htmlspecialchars($enreg['utilisateur']) . '</td><td style="border: 1px solid black;">' . htmlspecialchars($enreg['ville']) . '</td></tr>';
$i++;
}
if ($i == 0)
echo '<tr><th style="border: 1px solid black;" colspan="3">Aucun membre trouvé</th></tr>';
?>
</table>
<?php echo '<p>Nombre de requètes : ' . $bdd->nombre_requetes . '</p>'; ?>
<p>
<a href="http://validator.w3.org/check?uri=referer"><img
src="http://www.w3.org/Icons/valid-xhtml10"
alt="Valid XHTML 1.0 Strict" height="31" width="88" /></a>
</p>
</body>
</html>Code : Tout sélectionner
$ip = $_SERVER['REMOTE_ADDR'];
$req = $bdd->requete("SELECT COUNT(*) AS nbr FROM `visiteurs` WHERE ip = '%s';", $ip);
$enreg = $bdd->enreg_suivant($req);
if ($enreg['nbr'] == 0)
{
$bdd->requete("INSERT INTO `visiteurs` (ip) VALUES ('%s');", $ip);
}
$req = $bdd->requete("SELECT COUNT(ip) AS nombre_visiteurs FROM `visiteurs`;");
$enreg = $bdd->enreg_suivant($req);
echo "<p>Nombre de visiteurs : <strong>$enreg[nombre_visiteurs]</strong></p>";Depuis quand tu utilise VARCHAR pour des nombres ?McStealer a écrit :CREATE TABLE `visiteurs` (
`nombre_visiteurs` VARCHAR( 1 ) NOT NULL ,
`timestamp` TIMESTAMP NOT NULL ,
PRIMARY KEY ( `nombre_visiteurs` )
) TYPE = MYISAM ;
Code : Tout sélectionner
CREATE TABLE `visiteurs` (
`ip` VARCHAR(15) NOT NULL
) ENGINE = InnoDB ;J'en connais un qui va se taper 2 tutos pour le prix d'unMcStealer a écrit :Je comprend pas tout ...
Je sais, je sais ...real34 a écrit :Et puis un include($page); ce n'est pas ce qu'il fait !