Tester si une table est vide

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Tester si une table est vide

Re: Tester si une table est vide

par Laifen » 24 nov. 2009, 16:08

Ok Dr@ke mais c'est bon ça fonctionne, j'ai retravaillé la fonction de Calimero est tout est rentré dans l'ordre :)

Merci

Re: Tester si une table est vide

par Dr@ke » 24 nov. 2009, 16:04

Oui sauf que:
Ici je vérifie une donnée en particulier qui est $donnee.
(c'est basé sur un bout de code d'un script que j'avais fais)
Donc faut l'adapter, mais c'est en gros le principe.

Re: Tester si une table est vide

par Laifen » 24 nov. 2009, 16:00

Calimero : oui j'ai testé cette fonction mais sans résultat, j'ai du mal l'utiliser.

Dr@ke : Merci je vais tester et je te dis ça.

Merci à tous les deux.

Re: Tester si une table est vide

par Dr@ke » 24 nov. 2009, 15:55

Pas évident sans les informations de table, nom, champs, exemple de requête SELECT...
Petit bout de script de départ que tu as testé...

Il existe surement plusieurs méthode, en voici une avec un exemple:
	 $query = 'SELECT * FROM `' . $table . '` WHERE `champ` = ' . "'" . mysql_real_escape_string($donnee) . "'";
	 $query = mysql_query($query);
         $Nb = mysql_num_rows($query);
         if (isset($Nb) && $Nb !== 0) {
             echo 'La table n\'est pas vide';
         }
         else {
             echo 'La table est vide';
         } 
($table = le nom de ta table et champ le nom d'un champ)

Re: Tester si une table est vide

par Calimero » 24 nov. 2009, 15:55

Bonjour Laifen,

Cette fonction devrait répondre à tes besoins : http://fr.php.net/mysql_num_rows

++

Re: Tester si une table est vide

par Laifen » 24 nov. 2009, 15:47

Voici mon code PHP si ça peut vous aider
<?php
      $serverBDD="*";
	  $nomUtil="*";
	  $password="*";
	  $BDD="*";
	  
	  @mysql_connect($serverBDD, $nomUtil, $password) or die ('Impossible de se connecter à la base de données');
	  @mysql_select_db($BDD) or die ('Cette base de données n\'existe pas');
	  
	  $req=mysql_query('SELECT update_date, type, title FROM job_offers') or die ('Erreur de requête');
	  
	  if ($req. 'IS NULL')
	  {
	     echo ('Pas d\'offres disponibles actuellement.');
	  }
	  else
	  {
		echo '<table border="1" class="table_rh">';
		echo '<caption>Offres d\'emploi</caption>';
	    echo '<tr>';
        echo '<th>Date</th>';
		echo '<th>Type</th>';
		echo '<th>Titre de l\'offre</th>';
		echo '</tr>	';
		echo '<tr>';
	  
	     while($data = mysql_fetch_assoc($req)) 
	     {
	      echo '<td>'.$data['update_date'].'</td>';
	      echo '<td>'.$data['type'].'</td>';
	      echo '<td>'.$data['title'].'</td>';
	     }
	  }
	  
	 mysql_close(); 
  ?>
  
Merci

Tester si une table est vide

par Laifen » 24 nov. 2009, 15:43

Bonjour, j'ai une table avec des informations que j'affiche dans un tableau.
L'affichage fonctionne bien, mais ce que je voudais faire c'est une petite condition, je m'explique.

Si ma table est vide
-Afficher un message disant qu'elle est vide.
Sinon
-Afficher la requête de ma table dans son tableau.

C'est la condition du if que je ne trouve pas.

Merci de votre aide.