count ceci mais sans cela

Eléphant du PHP | 333 Messages

17 nov. 2005, 05:20

Voici ma ligne de commande pour demander de compter les champs d'une table, mais je voudrais exclure 3 adresse ip du comptage, donc voici ce que j'ai actuellement
$retour1 = mysql_query("SELECT COUNT(*) AS stat FROM logs WHERE page='/tutorat/firefox/quebec.php' ");
Et voici les 3 adresse
201.234.223.234
32.332.112.234
55.355.234.123

Je ne peux quand même pas faire un
$retour1 = mysql_query("SELECT COUNT(*) AS stat FROM logs WHERE page='/tutorat/firefox/quebec.php' AND ip=PAS'123.123.123.123' ");
Ce n'est pas toujours facile d'essayer, mais c'est toujours vallorisant lorsqu'on y arrive !!!

Apprenez, ne le faite pas faire par les autres.

Mammouth du PHP | 19672 Messages

17 nov. 2005, 09:30

Pourquoi pas ? COnstruis la requête dynamiquement avec un tableau contenant les ip à exclure de la recherche. Proposition:
<?php
$exclure = array("201.234.223.234",
"32.332.112.234",
"55.355.234.123");


$sql = "SELECT COUNT(*) AS stat ".
       "FROM logs ".
       "WHERE page='/tutorat/firefox/quebec.php' ";
foreach($exclure as $ip)
{
    $sql .= "AND ip <> '". $ip ."' ";
}
$retour1 = mysql_query($sql);
?>
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

17 nov. 2005, 14:05

Encore mieux, avec implode, il construit la liste automatiquement à partir du tableau
<?php
$exclure = array("201.234.223.234",
"32.332.112.234",
"55.355.234.123");

$str_exclure = implode(", ", $exclure);


$sql = "SELECT COUNT(*) AS stat ".
       "FROM logs ".
       "WHERE page='/tutorat/firefox/quebec.php'
           AND ip NOT IN ('.$str_exclure.')";
$retour1 = mysql_query($sql);
?>
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Mammouth du PHP | 768 Messages

17 nov. 2005, 19:58

Encore mieux, avec implode, il construit la liste automatiquement à partir du tableau
=D> je me note ça quelque part :D
M A R I O
Si une patte de lapin porte bonheur, qu'a-t-il bien pu arriver au lapin ?

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

17 nov. 2005, 20:07

Modération :
Ah la la... Deux modérateurs répondent à ce sujet
et pas un ne s'aperçoit qu'il n'est pas dans le bon forum !

Allez, hop :arrow: Bases de données !

Vous baissez, les gars. Vous baissez... :lol: