Mysql -- vérification existance

Résolu/Fermé
LelLex Messages postés 1628 Date d'inscription mercredi 18 février 2009 Statut Membre Dernière intervention 5 septembre 2012 - 22 févr. 2010 à 17:37
LelLex Messages postés 1628 Date d'inscription mercredi 18 février 2009 Statut Membre Dernière intervention 5 septembre 2012 - 23 févr. 2010 à 19:11
Bonjour à tous,

J'aimerais pourvoir vérifier si une ligne venant de la table MySQL existe.
Je sais pas si je suis explicite. ( je ne sais trop comment expliquer mon problème ! )

Par exemple, j'ai une page : page.php?accord=5
- 5 étant l'id.

Ma table commence par l'id 5 et non pas 0 ( j'ai quand même l'auto incrémentation ! )

Donc j'aimerais afficher un message d'erreur si quelque trifouille, et met 2 à la place de 5 dans :
page.php?accord=5 --> page.php?accord=2

En fait, il faudrait en amont demander à MySQL de vérifier s'il y a une ligne d'id 2.
Si oui le traitement se fait.
Autrement, il y a un message d'erreur.

Merci d'avance.
Cordialement.
LelLex.
A voir également:

5 réponses

avion-f16 Messages postés 19246 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 4 497
22 févr. 2010 à 17:49
Il suffit de faire un simple COUNT() :
<?php
require 'connect.php';

$sql = 'SELECT COUNT(*) AS `nb` FROM `table` WHERE `id` = '.intval($_GET['accord']);
$req = mysql_query($sql);
$data = mysql_fetch_assoc($req);
$nb = $data['nb'];

if($nb > 0) {
    // ...
} else {
    echo 'Entrée inexistante.';
}
mysql_close();
?>
0
LelLex Messages postés 1628 Date d'inscription mercredi 18 février 2009 Statut Membre Dernière intervention 5 septembre 2012 112
22 févr. 2010 à 22:52
nb c'est ?

Merci F16, tu es réactif. ;)
0
avion-f16 Messages postés 19246 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 4 497
23 févr. 2010 à 16:57
C'est le nombre d'entrées que retourne la requête.
0
bloodchecker Messages postés 339 Date d'inscription mercredi 2 juillet 2008 Statut Membre Dernière intervention 29 février 2012 35
23 févr. 2010 à 17:05
tu peux aussi traiter au moment de la "vrai" requete, avant de faire un mysql_fetch_array($query) (ou equivalent) tu fait un mysql_count($query) et si tu as 0 c'est que la table n'a aucune entrée.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
LelLex Messages postés 1628 Date d'inscription mercredi 18 février 2009 Statut Membre Dernière intervention 5 septembre 2012 112
23 févr. 2010 à 19:11
Merci de vos réponses.

En fait j'ai utilisé mysql_num_rows(); puisque mysql_count(); n'existe pas.
Et quand ca me retourne la valeur 0, je met un message d'erreur.

A+
0