La clé est la requête SQL, que vous configurerez sous forme de chaîne :
$sqlquery = "SELECT field1, field2 FROM table WHERE NOT columnA = 'x' AND NOT columbB = 'y'";
Notez qu'il existe de nombreuses façons de spécifier NOT. Un autre qui fonctionne tout aussi bien est :
$sqlquery = "SELECT field1, field2 FROM table WHERE columnA != 'x' AND columbB != 'y'";
Voici un exemple complet d'utilisation :
$link = mysql_connect($dbHost,$dbUser,$dbPass) or die("Unable to connect to database");
mysql_select_db("$dbName") or die("Unable to select database $dbName");
$sqlquery = "SELECT field1, field2 FROM table WHERE NOT columnA = 'x' AND NOT columbB = 'y'";
$result=mysql_query($sqlquery);
while ($row = mysql_fetch_assoc($result) {
//do stuff
}
Vous pouvez faire ce que vous voulez dans la boucle while ci-dessus. Accéder à chaque champ de la table en tant qu'élément du $row array
ce qui signifie que $row['field1']
vous donnera la valeur de field1
sur la ligne courante, et $row['field2']
vous donnera la valeur de field2
.
Notez que si la ou les colonnes peuvent avoir NULL
valeurs, celles-ci ne seront pas trouvées en utilisant l'une des syntaxes ci-dessus. Vous devrez ajouter des clauses pour inclure NULL
valeurs :
$sqlquery = "SELECT field1, field2 FROM table WHERE (NOT columnA = 'x' OR columnA IS NULL) AND (NOT columbB = 'y' OR columnB IS NULL)";