par
FAbrice » 09 mai 2005, 08:17
bonjour tout le monde
Je suis entrain de faire une page de statistiques avec 3 zones texte.
dans les 2 premieres, la date de début et de fin qui me servent de limite.
dans la 3ème, un seuil de points.
mon but est d'afficher tous les enregistrements compris entre les deux dates et dont la somme des points est < au contenu de la zonetexte n°3.
g donc le code suivant (obtenu avec dream (je c ce que vont dire les habitués!!! cf Cyrano

))
<?php require_once('../../Connections/ateliermeca.php'); ?>
<?php
$currentPage = $_SERVER["PHP_SELF"];
$maxRows_stataffichage = 10;
$pageNum_stataffichage = 0;
if (isset($_GET['pageNum_stataffichage'])) {
$pageNum_stataffichage = $_GET['pageNum_stataffichage'];
}
$startRow_stataffichage = $pageNum_stataffichage * $maxRows_stataffichage;
$colname3_stataffichage = "1";
if (isset($_GET['valeur'])) {
$colname3_stataffichage = (get_magic_quotes_gpc()) ? $_GET['valeur'] : addslashes($_GET['valeur']);
}
$colname1_stataffichage = "1";
if (isset($_GET['datemin'])) {
$colname1_stataffichage = (get_magic_quotes_gpc()) ? $_GET['datemin'] : addslashes($_GET['datemin']);
}
$colname2_stataffichage = "1";
if (isset($_GET['datemax'])) {
$colname2_stataffichage = (get_magic_quotes_gpc()) ? $_GET['datemax'] : addslashes($_GET['datemax']);
}
mysql_select_db($database_ateliermeca, $ateliermeca);
$query_stataffichage = sprintf("SELECT registre.NumDossier, registre.NumOT, registre.NumPompe, registre.Marques, registre.Models, registre.Secteur, registre.Urgence, registre.Datedebut, registre.Cloture, SUM(points.Points) FROM registre, points WHERE (registre.ID=points.Numdossier) and Datedebut > '%s' and Datedebut < '%s' and %s<SUM(points.Points) GROUP BY registre.Numdossier ORDER BY registre.Datedebut", $colname1_stataffichage,$colname2_stataffichage,$colname3_stataffichage);
$query_limit_stataffichage = sprintf("%s LIMIT %d, %d", $query_stataffichage, $startRow_stataffichage, $maxRows_stataffichage);
$stataffichage = mysql_query($query_limit_stataffichage, $ateliermeca) or die(mysql_error());
$row_stataffichage = mysql_fetch_assoc($stataffichage);
if (isset($_GET['totalRows_stataffichage'])) {
$totalRows_stataffichage = $_GET['totalRows_stataffichage'];
} else {
$all_stataffichage = mysql_query($query_stataffichage);
$totalRows_stataffichage = mysql_num_rows($all_stataffichage);
}
$totalPages_stataffichage = ceil($totalRows_stataffichage/$maxRows_stataffichage)-1;
$queryString_stataffichage = "";
if (!empty($_SERVER['QUERY_STRING'])) {
$params = explode("&", $_SERVER['QUERY_STRING']);
$newParams = array();
foreach ($params as $param) {
if (stristr($param, "pageNum_stataffichage") == false &&
stristr($param, "totalRows_stataffichage") == false) {
array_push($newParams, $param);
}
}
if (count($newParams) != 0) {
$queryString_stataffichage = "&" . htmlentities(implode("&", $newParams));
}
}
$queryString_stataffichage = sprintf("&totalRows_stataffichage=%d%s", $totalRows_stataffichage, $queryString_stataffichage);
?>
est ce que quelqu'un voit pourquoi j'obtiens le message suivant qd j'affiche ma page:
Invalid use of group function
merci de votre aide,
FAb
bonjour tout le monde
Je suis entrain de faire une page de statistiques avec 3 zones texte.
dans les 2 premieres, la date de début et de fin qui me servent de limite.
dans la 3ème, un seuil de points.
mon but est d'afficher tous les enregistrements compris entre les deux dates et dont la somme des points est < au contenu de la zonetexte n°3.
g donc le code suivant (obtenu avec dream (je c ce que vont dire les habitués!!! cf Cyrano :) ))
[php]<?php require_once('../../Connections/ateliermeca.php'); ?>
<?php
$currentPage = $_SERVER["PHP_SELF"];
$maxRows_stataffichage = 10;
$pageNum_stataffichage = 0;
if (isset($_GET['pageNum_stataffichage'])) {
$pageNum_stataffichage = $_GET['pageNum_stataffichage'];
}
$startRow_stataffichage = $pageNum_stataffichage * $maxRows_stataffichage;
$colname3_stataffichage = "1";
if (isset($_GET['valeur'])) {
$colname3_stataffichage = (get_magic_quotes_gpc()) ? $_GET['valeur'] : addslashes($_GET['valeur']);
}
$colname1_stataffichage = "1";
if (isset($_GET['datemin'])) {
$colname1_stataffichage = (get_magic_quotes_gpc()) ? $_GET['datemin'] : addslashes($_GET['datemin']);
}
$colname2_stataffichage = "1";
if (isset($_GET['datemax'])) {
$colname2_stataffichage = (get_magic_quotes_gpc()) ? $_GET['datemax'] : addslashes($_GET['datemax']);
}
mysql_select_db($database_ateliermeca, $ateliermeca);
$query_stataffichage = sprintf("SELECT registre.NumDossier, registre.NumOT, registre.NumPompe, registre.Marques, registre.Models, registre.Secteur, registre.Urgence, registre.Datedebut, registre.Cloture, SUM(points.Points) FROM registre, points WHERE (registre.ID=points.Numdossier) and Datedebut > '%s' and Datedebut < '%s' and %s<SUM(points.Points) GROUP BY registre.Numdossier ORDER BY registre.Datedebut", $colname1_stataffichage,$colname2_stataffichage,$colname3_stataffichage);
$query_limit_stataffichage = sprintf("%s LIMIT %d, %d", $query_stataffichage, $startRow_stataffichage, $maxRows_stataffichage);
$stataffichage = mysql_query($query_limit_stataffichage, $ateliermeca) or die(mysql_error());
$row_stataffichage = mysql_fetch_assoc($stataffichage);
if (isset($_GET['totalRows_stataffichage'])) {
$totalRows_stataffichage = $_GET['totalRows_stataffichage'];
} else {
$all_stataffichage = mysql_query($query_stataffichage);
$totalRows_stataffichage = mysql_num_rows($all_stataffichage);
}
$totalPages_stataffichage = ceil($totalRows_stataffichage/$maxRows_stataffichage)-1;
$queryString_stataffichage = "";
if (!empty($_SERVER['QUERY_STRING'])) {
$params = explode("&", $_SERVER['QUERY_STRING']);
$newParams = array();
foreach ($params as $param) {
if (stristr($param, "pageNum_stataffichage") == false &&
stristr($param, "totalRows_stataffichage") == false) {
array_push($newParams, $param);
}
}
if (count($newParams) != 0) {
$queryString_stataffichage = "&" . htmlentities(implode("&", $newParams));
}
}
$queryString_stataffichage = sprintf("&totalRows_stataffichage=%d%s", $totalRows_stataffichage, $queryString_stataffichage);
?>[/php]
est ce que quelqu'un voit pourquoi j'obtiens le message suivant qd j'affiche ma page:
[quote]Invalid use of group function[/quote]
merci de votre aide,
FAb