PHPNET Assistance

Support et Entraide PHPNET => Forum de programmation => Discussion démarrée par: Jean-Marc le 21 avril 2003 à 15:10:40

Titre: Select Max()
Posté par: Jean-Marc le 21 avril 2003 à 15:10:40
J'ai une autre question (c'est vrai que je ne suis pas top en php). Je galère pour récuper la valeur maximun d'une colonne, voici le script :


mysql_select_db("$pif");  
$query = "select max(ma_date) as max_date from ma_table)";
$result = mysql_query($query);            
$num_results = mysql_num_rows($result);
if ($num_results > 0)
{
    $row = mysql_fetch_array($result);
    $maxi_date = $row["max_date"];
    echo "date ------ $maxi _date";
}         


Je rentre bien dans le "if" car il s'affiche     date -------  mais pas de valeur dans maxi_date.

Je ne comprends pas pourquoi $maxi_date est vide. :blink:

Jean-Marc.

 
Titre: Select Max()
Posté par: Sasayaki no karasu le 21 avril 2003 à 15:12:04
tu es sur pour le select max(ma_date) as max_date from ma_table)
Titre: Select Max()
Posté par: Bruno II le 21 avril 2003 à 16:34:18
Citer
$query = "select max(ma_date) as max_date from ma_table)";

Tu es sûr de la dernière parenthèse après "from ma_table" ???  ;)  
Titre: Select Max()
Posté par: Jean-Marc le 21 avril 2003 à 19:12:28
Non il n'y a pas de parenthèse dans mon script c'est une erreur de frappe dans le post.
 
Titre: Select Max()
Posté par: Sasayaki no karasu le 21 avril 2003 à 19:14:51
et le as max_date ?
Titre: Select Max()
Posté par: Jean-Marc le 21 avril 2003 à 19:18:46
Citer
et le as max_date ?
 Ca correspond au as max_date du select, je sûr de rien en fait mais je penses que c'est ok.
Titre: Select Max()
Posté par: Jean-Marc le 21 avril 2003 à 19:21:34
Citer
et le as max_date ?
Excuse moi je n'ai pas répondu à ta question.
le as rubrique j'ai vu ça dans un tutorial Mysql et dans un script php sur le site php.com.
Titre: Select Max()
Posté par: Bruno II le 21 avril 2003 à 19:28:59
mysql_select_db("$pif");
$query = "SELECT max(ma_date) as maximum FROM ma_table";
$result = mysql_query($query);   
$num_results = mysql_num_rows($result);
if ($num_results == 1)
{
$row = mysql_fetch_array($result);
$maxi_date = $;
print "date ------ " . $row[maximum] ;
}   
Titre: Select Max()
Posté par: Bruno II le 21 avril 2003 à 19:30:38
mysql_select_db("$pif");
$query = "SELECT max(ma_date) as maximum FROM ma_table";
$result = mysql_query($query);   
$num_results = mysql_num_rows($result);
if ($num_results == 1)
{
$row = mysql_fetch_array($result);
print "date ------ " . $row[maximum] ;
};

J'ai remanié un tit peu le code, essaie avec celui-ci ?  :unsure:  
Titre: Select Max()
Posté par: Zorf le 21 avril 2003 à 20:48:38
Citer
echo "date ------ $maxi _date";
Y a un espace entre $maxi et _date...
Si c'est une erreur dans le post, je vois pas d'où ça peut venir...

On peut raccourcir (et simplifier?) le code...
mysql_select_db($pif);
$query = "select max(ma_date) from ma_table";
$result = mysql_query($query);
if (mysql_num_rows($result) > 0)
{
  list($maxi) = mysql_fetch_row($result);
  echo "date ------ $maxi";
}
Titre: Select Max()
Posté par: BlueWhisper le 21 avril 2003 à 20:54:20
Ou encore:
list($max)=@mysql_fetch_row(mysql_query("select max(`ma_date`) from `ma_table`"));
if (isset($max)) echo "date ------ $max";
Titre: Select Max()
Posté par: Zorf le 21 avril 2003 à 20:59:35
Evidemment, mais après pour se relire :)
Titre: Select Max()
Posté par: Bruno II le 21 avril 2003 à 21:15:21
@ Zorf :

Wow, bien vu l'espace entre $maxi et _date !!!!  :blink:  
Titre: Select Max()
Posté par: BlueWhisper le 21 avril 2003 à 21:57:46
je vous rassure, c'était pour l'exemple, j'utilise pas trop cette méthode...

Par contre le:
list($vara,$varb,$varc)=mysql_fetch_row(mysql_query("...."));
C'est très utile, ça abrège le code si on sait que l'on a qu'un résultat...
Titre: Select Max()
Posté par: Jean-Marc le 21 avril 2003 à 22:07:00
Citer
mysql_select_db("$pif");
$query = "SELECT max(ma_date) as maximum FROM ma_table";
$result = mysql_query($query);   
$num_results = mysql_num_rows($result);
if ($num_results == 1)
{
$row = mysql_fetch_array($result);
print "date ------ " . $row[maximum] ;
};

J'ai remanié un tit peu le code, essaie avec celui-ci ?  :unsure:
OK ça fonctionne bien comme ça du coup je ne tenterai pas les autres scripts.
Merci bien à tous et à la communauté phpnet toujours sympa  :rolleyes:
@+
Jean-Marc
Titre: Select Max()
Posté par: BlueWhisper le 21 avril 2003 à 22:08:24
De rien, on est là pour ça...