| Voir le sujet précédent :: Voir le sujet suivant |
| Auteur |
Message |
PHIL
Inscrit le: 27 Juil 2006 Messages: 7
|
Posté le: Lun 07 Aoû 2006, 10:48 Sujet du message: -> Joueurs dans Ordre Alphabétique et Age |
|
|
2 sollicitations pour les Pros du codage...
Bonjour à tous,
Utilisateur du MOD permettant de mettre d'afficher les joueurs dans la configuration suivante :
Saint-Etienne
Nom Prénom Naissance Poste
SABLÉ Julien 11/09/1980 Défenseur
HOGNON Vincent 16/08/1974 Défenseur
ILUNGA Herita 25/02/1982 Défenseur
1] Je souhaiterai, si cela est possible, afficher les joueurs classés dans l'ordre alphabétique de leur NOM, comme suis :
Saint-Etienne
Nom Prénom Naissance Poste
HOGNON Vincent 16/08/1974 Défenseur
ILUNGA Herita 25/02/1982 Défenseur
SABLÉ Julien 11/09/1980 Défenseur
2] Je souhaiterai, si cela est possible toujours, rajouter une colonne pour afficher comme dans les fiches de joueurs l'age de ces derniers, ce qui donnerait un affichage de l'ensemble comme suis :
Saint-Etienne
Nom Prénom Naissance Age Poste
HOGNON Vincent 16/08/1974 32ans Défenseur
ILUNGA Herita 25/02/1982 24ans Défenseur
SABLÉ Julien 11/09/1980 26ans Défenseur
Merci d'avance pour l'intérêt que vous porterez à mes questions et des réponses que vous pourrez me proposer...
PHIL |
|
| Revenir en haut |
|
 |
Mike
Inscrit le: 19 Juin 2006 Messages: 132
|
Posté le: Lun 07 Aoû 2006, 11:29 Sujet du message: |
|
|
Ce qui serait bien c'est de nous fournir le code source de la page en question pour qu'on puisse te dire quoi modifier  |
|
| Revenir en haut |
|
 |
ghost
Inscrit le: 23 Juil 2004 Messages: 335
|
Posté le: Lun 07 Aoû 2006, 12:17 Sujet du message: |
|
|
moi ce que j'aimerais savoir c est ce possible de creer une page qui nous donnera tous les joueurs qui sont deja passé dans le clubs, ?
merci _________________ http://www.fcbayern-fr.com |
|
| Revenir en haut |
|
 |
PHIL
Inscrit le: 27 Juil 2006 Messages: 7
|
Posté le: Lun 07 Aoû 2006, 12:27 Sujet du message: |
|
|
| Mike a écrit: | Ce qui serait bien c'est de nous fournir le code source de la page en question pour qu'on puisse te dire quoi modifier  |
En fait le code source correspond au code ci-après, disponible dans le sujet "Mod effectif v0.82", à cette adresse.
http://phpleague.univert.org/forum/ftopic578.php
Merci d'avance.
PHIL
| Code: |
<?php
//***********************************************************************/
// Phpleague : gestionnaire de championnat */
// ============================================ */
// */
// Version : 0.82 */
// http://phpleague.univert.org */
// */
// This program is free software. You can redistribute it and/or modify */
// it under the terms of the GNU General Public License as published by */
// the Free Software Foundation; either version 2 of the License. */
// */
//***********************************************************************/
// Support technique : http://phpleague.univert.org/forum */
// */
//***********************************************************************/
$postes = "gardien,défenseur,milieu,attaquant";
include ("avant.php");
require ("../config.php") ;
require ("../consult/fonctions.php");
ouverture ();
ENTETE2 ();
//Choix du championnat
if (!isset($_REQUEST['champ']))
{
demande_champ ();
}
// Choix du club
elseif (!isset($_REQUEST['id_clubs']))
{
$champ = $_REQUEST['champ'];
$query="SELECT phpl_clubs.id, phpl_clubs.nom, id_champ, id_club
FROM phpl_clubs, phpl_equipes
WHERE phpl_equipes.id_champ='$champ' and phpl_equipes.id_club=phpl_clubs.id
ORDER BY nom";
$result=mysql_query($query);
echo "<div align=\"center\"><font color=\"#000000\" size=\"2\"><u>".DETAILEQ_TITRE."</u></font>";
echo "<form action=\"\" method=\"get\">";
echo DETAILEQ_1;
echo "<select name=\"id_clubs\">";
echo "<option value=\"0\"> </option>";
while($row = mysql_fetch_array($result))
{
$row[1] = stripslashes($row[1]);
$a=$row[1]+1;
echo (" <option value=\"$row[0]\">$row[1]");
echo ("</option>\n");
}
echo "</select>";
$button=ENVOI;
echo "<input type=\"submit\" value=\"$button\">";
echo "<input type=\"hidden\" name=\"champ\" value=\"$champ\">";
echo "</form></div>";
}
// Le choix du club étant fait on affiche la fiche du club
else
{
$id_clubs = $_REQUEST['id_clubs'];
$champ = $_REQUEST['champ'];
$query="SELECT id, url_logo FROM phpl_clubs WHERE id='$id_clubs'";
$result = mysql_query($query);
$row = mysql_fetch_array($result);
echo "<div align=\"center\"><img src=\"$row[1]\" alt=\"\"></div><br /><br /><br /><br />";
$query="SELECT phpl_classe.nom, phpl_classe.id FROM phpl_classe order by rang";
$result=mysql_query ($query);
while($row = mysql_fetch_array($result))
{
echo "<table class=\"tablephpl2\" cellspacing=\"0\" align=\"center\" width=\"90%\">";
echo "<tr class=\"trphpl3\"><td align=\"center\"><b>$row[0]</b></td></tr>";
$id_classe=$row[1];
echo "<tr><td><table cellspacing=\"0\"><tr class=\"trphpl\"><td>";
$aff_rens=aff_rens ($id_classe, $id_clubs);
echo "$aff_rens";
echo "</td></tr></table></td></tr></table>\n";
echo "<br /><br /><br /><br />\n";
}
echo "<table class=\"tablephpl2\" cellspacing=\"0\" align=\"center\" width=\"90%\"><tr class=\"trphpl3\"><td align=\"center\"><b>Effectif</b></td></tr><tr><td>";
$query="SELECT phpl_equipes.id FROM phpl_equipes, phpl_clubs
WHERE phpl_clubs.id='$id_clubs' AND id_champ='$champ' AND phpl_clubs.id=phpl_equipes.id_club";
$result = mysql_query($query);
$row = mysql_fetch_array($result);
$equipe=$row[0];
echo "<table class=\"tablephpl2\" align=\"center\" cellspacing=\"0\" width=\"100%\">";
echo "<tr class=trphpl3><td width=\"40%\">Nom/Prénom</td><td width=\"20%\">Naissance</td><td width=\"20%\">Poste</td></tr>";
$poste = explode(",", $postes);
$nombre = count($poste);
$i=0;
while ($i<$nombre)
{
$requete = "SELECT phpl_joueurs.id, nom, prenom, DATE_FORMAT(date_naissance, '%d/%m/%Y') as datefr, position_terrain
FROM phpl_joueurs, phpl_effectif
WHERE phpl_joueurs.id=phpl_effectif.id_joueur
AND phpl_effectif.id_equipe='$equipe'
AND position_terrain='$poste[$i]'";
$result = mysql_query($requete);
echo "<table style=\"BORDER-BOTTOM: #000000 1px solid\" cellspacing=\"0\" align=center width=\"100%\">\n";
while($row = mysql_fetch_array($result))
{
echo "<tr><td width=\"40%\">";
echo "<a href=\"#\" onclick=\"window.open('joueurs.php?id_joueur=$row[id]','Fichejoueur',
'toolbar=0,location=0,directories=0,status=0,scrollbars=1, resizable=0,copyhistory=0,menuBar=0,width=560,height=320');
return false;\">".$row["nom"]." ".$row["prenom"]."</a>";
echo "</td><td width=\"20%\">".$row["datefr"]."</td><td width=\"20%\">".$row["position_terrain"]."</td></tr>";
}
echo "</table>";
$i++;
}
echo"</td></tr></table><br /><br /><br />";
echo "<table class=\"tablephpl2\" cellspacing=\"0\" align=\"center\" width=\"90%\"><tr class=\"trphpl3\"><td align=\"center\"><b>".CONSULT_CLUB_4."</b></td></tr>";
echo "<tr><td><center><img src=\"graph.php?equipe=$equipe\" alt=\"\"></center></td></tr>";
echo"</table><br /><br /><br />";
echo "<table class=\"tablephpl2\" cellspacing=\"0\" align=\"center\" width=\"90%\"><tr class=\"trphpl3\" align=\"center\"><td><b>".CONSULT_CLUB_3."</b></td></tr>";
$query="SELECT annee, phpl_divisions.nom, phpl_championnats.id, phpl_equipes.id
FROM phpl_saisons, phpl_championnats, phpl_divisions, phpl_clubs, phpl_equipes
WHERE phpl_equipes.id_champ=phpl_championnats.id
AND id_division=phpl_divisions.id
AND phpl_clubs.id=id_club
AND phpl_equipes.id_club='$id_clubs'
AND phpl_saisons.id=phpl_championnats.id_saison order by annee desc";
$result = mysql_query($query);
while($row = mysql_fetch_array($result))
{
echo "<tr><td></td></tr>";
echo "<tr class=\"trphpl2\"><td align=\"center\">$row[0]/". ($row[0]+1)." ($row[1])</td></tr>";
echo "<tr><td align=\"center\"><a href=\"classement.php?champ=$row[2]&type=G%E9n%E9ral\">".CONSULT_CLUB_1."</a> - <a href=\"detaileq.php?champ=$row[2]&id_equipe=$row[3]\">".CONSULT_CLUB_2."</a> - <a href=\"#\" onclick=\"window.open('graph.php?equipe=$row[3]', 'Stats','toolbar=0,location=0,directories=0,status=0,scrollbars=0,resizable=0,copyhistory=0,menuBar=0,width=560,height=320');return false;\">".CONSULT_CLUB_4."</a><br /><br /></td></tr>\n";
}
echo"</table><br /><br />";
$query="SELECT phpl_clubs.id, phpl_clubs.nom, id_champ, id_club
FROM phpl_clubs, phpl_equipes
WHERE phpl_equipes.id_champ='$champ' and phpl_equipes.id_club=phpl_clubs.id
ORDER BY nom";
$result=mysql_query($query);
echo "<div align=\"center\"><form action=\"\" method=\"get\" onsubmit=\"\">";
echo " ";
echo " ";
//echo ADMIN_EQUIPE_2;
echo "<select name=\"id_clubs\">";
echo "<option value=\"0\"> </option>";
while($row = mysql_fetch_array($result))
{
$row[1] = stripslashes($row[1]);
$a=$row[1]+1;
echo (" <option value=\"$row[0]\">$row[1]");
echo ("</option>\n");
}
echo "</select>";
$button=ENVOI;
echo "<input type=\"submit\" value=\"$button\">";
echo "<input type=\"hidden\" name=\"champ\" value=\"$champ\">";
echo "</form>";
echo "<a href=\"";
if (isset($_SERVER['HTTP_REFERER'])) {print $_SERVER['HTTP_REFERER'];}
else {echo "club.php";}
echo "\"><b>".RETOUR."</b></a></div>";
}
?>
<br />
<p align="right"><font face="Verdana" size="1">Powered by <a href="http://phpleague.univert.org" target="_blank">PhpLeague</a></font></p>
<?php
include ("apres.php");
?>
|
|
|
| Revenir en haut |
|
 |
Mike
Inscrit le: 19 Juin 2006 Messages: 132
|
Posté le: Lun 07 Aoû 2006, 12:56 Sujet du message: |
|
|
Remplace ça :
| Code: | echo "<tr class=trphpl3><td width=\"40%\">Nom/Prénom</td><td width=\"20%\">Naissance</td><td width=\"20%\">Poste</td></tr>";
$poste = explode(",", $postes);
$nombre = count($poste);
$i=0;
while ($i<$nombre)
{
$requete = "SELECT phpl_joueurs.id, nom, prenom, DATE_FORMAT(date_naissance, '%d/%m/%Y') as datefr, position_terrain
FROM phpl_joueurs, phpl_effectif
WHERE phpl_joueurs.id=phpl_effectif.id_joueur
AND phpl_effectif.id_equipe='$equipe'
AND position_terrain='$poste[$i]'";
$result = mysql_query($requete);
echo "<table style=\"BORDER-BOTTOM: #000000 1px solid\" cellspacing=\"0\" align=center width=\"100%\">\n";
while($row = mysql_fetch_array($result))
{
echo "<tr><td width=\"40%\">";
echo "<a href=\"#\" onclick=\"window.open('joueurs.php?id_joueur=$row[id]','Fichejoueur',
'toolbar=0,location=0,directories=0,status=0,scrollbars=1, resizable=0,copyhistory=0,menuBar=0,width=560,height=400');
return false;\">".stripslashes($row["nom"])." ".stripslashes($row["prenom"])."</a>";
echo "</td><td width=\"20%\">".$row["datefr"]."</td><td width=\"20%\">".$row["position_terrain"]."</td></font></tr>";
}
echo "</table>";
$i++;
} |
par :
| Code: | echo "<tr class=trphpl3><td width=\"40%\">Nom/Prénom</td><td width=\"15%\">Naissance</td><td width=\"10%\">Âge</td><td width=\"15%\">Poste</td></tr>";
$poste = explode(",", $postes);
$nombre = count($poste);
$i=0;
while ($i<$nombre)
{
$requete = "SELECT phpl_joueurs.id, nom, prenom, DATE_FORMAT(date_naissance, '%d/%m/%Y') as datefr, position_terrain
FROM phpl_joueurs, phpl_effectif
WHERE phpl_joueurs.id=phpl_effectif.id_joueur
AND phpl_effectif.id_equipe='$equipe'
AND position_terrain='$poste[$i]'
ORDER BY nom ASC";
$result = mysql_query($requete);
echo "<table style=\"BORDER-BOTTOM: #000000 1px solid\" cellspacing=\"0\" align=center width=\"100%\">\n";
while($row = mysql_fetch_array($result))
{
$date_de_naissance = $row['datefr'];
$chiffre = explode('/',$date_de_naissance);
$time_naissance = mktime(0,0,0,$chiffre[1],$chiffre[0],$chiffre[2]);
$seconde_vecu = time() - $time_naissance;
$seconde_par_an = (1461*24*60*60)/4;
$age = floor(($seconde_vecu / $seconde_par_an));
echo "<tr><td width=\"40%\">";
echo "<a href=\"#\" onclick=\"window.open('joueurs.php?id_joueur=$row[id]','Fichejoueur',
'toolbar=0,location=0,directories=0,status=0,scrollbars=1, resizable=0,copyhistory=0,menuBar=0,width=560,height=400');
return false;\">".stripslashes($row["nom"])." ".stripslashes($row["prenom"])."</a>";
echo "</td><td width=\"15%\">".$row["datefr"]."</td><td width=\"10%\">".$age." ans</td><td width=\"15%\">".$row["position_terrain"]."</td></font></tr>";
}
echo "</table>";
$i++;
} |
|
|
| Revenir en haut |
|
 |
PHIL
Inscrit le: 27 Juil 2006 Messages: 7
|
Posté le: Lun 07 Aoû 2006, 15:34 Sujet du message: |
|
|
Vraiment un grand MERCI !
Merci pour la promptitude de ta réponse, et merci pour ton efficacité Mike.
Ton code fonctionne à merveille et il répond exactement à mes deux souhaits...
Merci encore et longue vie à phpleague... |
|
| Revenir en haut |
|
 |
Mike
Inscrit le: 19 Juin 2006 Messages: 132
|
Posté le: Lun 07 Aoû 2006, 16:14 Sujet du message: |
|
|
Y a pas de quoi
Profitez, il ne me reste que 10 jours d'arrêt maladie, après je devrais retourner au boulot  |
|
| Revenir en haut |
|
 |
PHIL
Inscrit le: 27 Juil 2006 Messages: 7
|
Posté le: Lun 07 Aoû 2006, 17:58 Sujet du message: |
|
|
| Mike a écrit: | Y a pas de quoi
Profitez, il ne me reste que 10 jours d'arrêt maladie, après je devrais retourner au boulot  |
"Malheureusement" , il vaut mieux te savoir en bonne santé....donc au détriment de personnes comme moi qui ai besoin d'aide...prompt rétablissement Mike...  |
|
| Revenir en haut |
|
 |
ghost
Inscrit le: 23 Juil 2004 Messages: 335
|
|
| Revenir en haut |
|
 |
Fred
Inscrit le: 13 Sep 2004 Messages: 19
|
Posté le: Mar 22 Aoû 2006, 22:25 Sujet du message: |
|
|
| Il y a un pb avec les joueurs qui sont âgés de + de 35 ans comme dans la fiche joueur. Dans la fiche joueur, le pb a été résolu mais pas dans le fichier effectif.php |
|
| Revenir en haut |
|
 |
Fred
Inscrit le: 13 Sep 2004 Messages: 19
|
Posté le: Jeu 31 Aoû 2006, 22:02 Sujet du message: |
|
|
Je n'arrive pas à modifier le fichier effectif.php pour calculer les joueur qui sont âgés de + de 35 ans comme dans le fichier joueurs.php, même avec l'aide du code de Manuc
Repérer :
| Code: | $sql = "SELECT
phpl_joueurs.nom as nom_joueur,
phpl_clubs.nom as nom_club,
phpl_joueurs.prenom,
DATE_FORMAT(date_naissance, '%d/%m/%Y') as datefr,
phpl_joueurs.photo, position_terrain
FROM phpl_joueurs, phpl_clubs, phpl_effectif, phpl_equipes
WHERE phpl_effectif.id_equipe=phpl_equipes.id
AND phpl_effectif.id_joueur=phpl_joueurs.id
AND phpl_equipes.id_club=phpl_clubs.id
AND phpl_joueurs.id='$id_joueur'"; |
Remplacer :
| Code: | DATE_FORMAT(date_naissance, '%d/%m/%Y') as datefr,
Par
phpl_joueurs.date_naissance, |
Repérer :
| Code: | // calcul de l'age à partir de la date de naissance
$date_de_naissance = $data['datefr'];
$chiffre = explode('/', $date_de_naissance);
$time_naissance = mktime(0, 0, 0, $chiffre[1], $chiffre[0], $chiffre[2]);
$seconde_vecu = time() - $time_naissance;
$seconde_par_an = (1461*24*60*60)/4;
$age = floor(($seconde_vecu / $seconde_par_an)); |
Supprimer tout et mettre à la place :
| Code: | // Calcul de l'âge à partir de la date de naissance
$NAIS_ANNEE = substr($data['date_naissance'], 0, 4);
$NAIS_MOIS = substr($data['date_naissance'], 5, 2);
$NAIS_JOURS = substr($data['date_naissance'], 8, 2);
$NAIS_DATE = $NAIS_JOURS.'/'.$NAIS_MOIS.'/'.$NAIS_ANNEE;
$ANNEE = date('Y');
$MOIS = date('m');
$JOUR = date('d');
if (($MOIS<$NAIS_MOIS) || (($MOIS == $NAIS_MOIS) && ($JOUR<$NAIS_JOURS)))
{
$AJUSTE = -1;
}
else { $AJUSTE = 0; }
$AGE = $ANNEE - $NAIS_ANNEE + $AJUSTE; |
Repérer :
| Code: |
echo '<tr><td><b>'.FICHE_AGE.' :</b> '.$age.' ans</td></tr>';
echo '<tr><td><b>'.FICHE_DATE.' :</b> '.$date_de_naissance.'</td></tr>'; |
Remplacer par :
| Code: | echo '<tr><td><b>'.FICHE_AGE.' :</b> '.$AGE.' ans</td></tr>';
echo '<tr><td><b>'.FICHE_DATE.' :</b> '.$NAIS_DATE.'</td></tr>'; |
Merci d'avance |
|
| Revenir en haut |
|
 |
Mike
Inscrit le: 19 Juin 2006 Messages: 132
|
Posté le: Ven 01 Sep 2006, 16:34 Sujet du message: |
|
|
Tu es certains que les joueurs de + de 35 ans ont leur age calculé quelquepart sur ton site ?
Moi je parie que tous les joueurs nés avant le 1er janvier 1970 posent problème  |
|
| Revenir en haut |
|
 |
Fred
Inscrit le: 13 Sep 2004 Messages: 19
|
Posté le: Sam 02 Sep 2006, 09:24 Sujet du message: |
|
|
| Tu as gagné ton pari, c'est tous les joueurs qui ont + de 36 ans et qui sont nés avant le 1er janvier 1970 posent bien problème |
|
| Revenir en haut |
|
 |
Mike
Inscrit le: 19 Juin 2006 Messages: 132
|
Posté le: Sam 02 Sep 2006, 12:03 Sujet du message: |
|
|
Et vous voulez la raison ?
Le timestamp (cette petite fonction qui sert à calculer les dates en php) représente le nombre de secondes écoulées depuis le 1er janvier 1970 à minuit.
Et comme le timestamp ne peut être négatif, aucune date ne peut être calculée en php avant le 1er janvier 1970.
Et pour le moment on ne peut pas aller plus loin que 2037 avec le timestamp |
|
| Revenir en haut |
|
 |
Fred
Inscrit le: 13 Sep 2004 Messages: 19
|
Posté le: Dim 03 Sep 2006, 09:59 Sujet du message: |
|
|
| Alors quelle est la solution, parceque cela fonctionne dans les fiches joueurs avec le code de Manuc |
|
| Revenir en haut |
|
 |
|
|