Disponibilités Suivant Les Jours et Les Heures

Résolu/Fermé
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 - 26 nov. 2017 à 20:19
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 - 11 mai 2018 à 22:58
Bonsoir, je cherche un moyen de mètre les disponibilités suivant les jours et heures que les utilisateurs ont donner.

Pour le moment j'ai un tableau avec :



J'aimerai simplement ajouter les heures de disponibilité par exemple a 18H il y a 20 personnes le Lundi, 3 le Vendredi....

Donc déjà pour afficher juste les pourcentage de personnes suivant les jour cela ma pris plus de 100 lignes donc afficher pour chaque heure suivant chaque jour cela risque d'être compliquer et surtout très répétitif.

Voici mon code actuel :

<?php 
session_start();
include_once "SQL/cobdd.php";
if(isset($_SESSION['statut'])){
    if($_SESSION['statut'] != 3){
        header("Location: index.php");
    }
}
if(isset($_SESSION['id_sondage'])){
    $sql_J_1 = "SELECT * FROM participation_user WHERE id_even = ? AND jour_1 = ?";
    $sql_J_2 = "SELECT * FROM participation_user WHERE id_even = ? AND jour_2 = ?";
    $sql_J_3 = "SELECT * FROM participation_user WHERE id_even = ? AND jour_3 = ?";
    //Lundi Jour 1
    $lundiJ1 = $bdd->prepare($sql_J_1);
    $lundiJ1->execute(array($_SESSION['id_sondage'], "Lundi"));
    $nbr_L1 = $lundiJ1->RowCount();
    //Lundi Jour 2
    $lundiJ2 = $bdd->prepare($sql_J_2);
    $lundiJ2->execute(array($_SESSION['id_sondage'], "Lundi"));
    $nbr_L2 = $lundiJ2->RowCount();
    //Lundi Jour 3
    $lundiJ3 = $bdd->prepare($sql_J_3);
    $lundiJ3->execute(array($_SESSION['id_sondage'], "Lundi"));
    $nbr_L3 = $lundiJ3->RowCount();
    
    //Mardi Jour 1
    $mardiJ1 = $bdd->prepare($sql_J_1);
    $mardiJ1->execute(array($_SESSION['id_sondage'], "Mardi"));
    $nbr_M1 = $mardiJ1->RowCount();
    //Mardi Jour 2
    $mardiJ2 = $bdd->prepare($sql_J_2);
    $mardiJ2->execute(array($_SESSION['id_sondage'], "Mardi"));
    $nbr_M2 = $mardiJ2->RowCount();
    //Mardi Jour 3
    $mardiJ3 = $bdd->prepare($sql_J_3);
    $mardiJ3->execute(array($_SESSION['id_sondage'], "Mardi"));
    $nbr_M3 = $mardiJ3->RowCount();

    //Mercredi Jour 1
    $mercrediJ1 = $bdd->prepare($sql_J_1);
    $mercrediJ1->execute(array($_SESSION['id_sondage'], "Mercredi"));
    $nbr_Mer1 = $mercrediJ1->RowCount();
    //Mercredi Jour 2
    $mercrediJ2 = $bdd->prepare($sql_J_2);
    $mercrediJ2->execute(array($_SESSION['id_sondage'], "Mercredi"));
    $nbr_Mer2 = $mercrediJ2->RowCount();
    //Mercredi Jour 3
    $mercrediJ3 = $bdd->prepare($sql_J_3);
    $mercrediJ3->execute(array($_SESSION['id_sondage'], "Mercredi"));
    $nbr_Mer3 = $mercrediJ3->RowCount();
    
    //Jeudi Jour 1
    $jeudiJ1 = $bdd->prepare($sql_J_1);
    $jeudiJ1->execute(array($_SESSION['id_sondage'], "Jeudi"));
    $nbr_J1 = $jeudiJ1->RowCount();
    //Jeudi Jour 2
    $jeudiJ2 = $bdd->prepare($sql_J_2);
    $jeudiJ2->execute(array($_SESSION['id_sondage'], "Jeudi"));
    $nbr_J2 = $jeudiJ2->RowCount();
    //Jeudi Jour 3
    $jeudiJ3 = $bdd->prepare($sql_J_3);
    $jeudiJ3->execute(array($_SESSION['id_sondage'], "Jeudi"));
    $nbr_J3 = $jeudiJ3->RowCount();
    
    //Vendredi Jour 1
    $vendrediJ1 = $bdd->prepare($sql_J_1);
    $vendrediJ1->execute(array($_SESSION['id_sondage'], "Vendredi"));
    $nbr_V1 = $vendrediJ1->RowCount();
    //Vendredi Jour 2
    $vendrediJ2 = $bdd->prepare($sql_J_2);
    $vendrediJ2->execute(array($_SESSION['id_sondage'], "Vendredi"));
    $nbr_V2 = $vendrediJ2->RowCount();
    //Vendredi Jour 3
    $vendrediJ3 = $bdd->prepare($sql_J_3);
    $vendrediJ3->execute(array($_SESSION['id_sondage'], "Vendredi"));
    $nbr_V3 = $vendrediJ3->RowCount();
    
    //Samedi Jour 1
    $samediJ1 = $bdd->prepare($sql_J_1);
    $samediJ1->execute(array($_SESSION['id_sondage'], "Samedi"));
    $nbr_S1= $samediJ1->RowCount();
    //Samedi Jour 2
    $samediJ2 = $bdd->prepare($sql_J_2);
    $samediJ2->execute(array($_SESSION['id_sondage'], "Samedi"));
    $nbr_S2= $samediJ2->RowCount();
    //Samedi Jour 3
    $samediJ3 = $bdd->prepare($sql_J_3);
    $samediJ3->execute(array($_SESSION['id_sondage'], "Samedi"));
    $nbr_S3= $samediJ3->RowCount();
    
    //Dimanche Jour 1
    $dimancheJ1 = $bdd->prepare($sql_J_1);
    $dimancheJ1->execute(array($_SESSION['id_sondage'], "Dimanche"));
    $nbr_D1 = $dimancheJ1->RowCount();
    //Dimanche Jour 2
    $dimancheJ2 = $bdd->prepare($sql_J_2);
    $dimancheJ2->execute(array($_SESSION['id_sondage'], "Dimanche"));
    $nbr_D2 = $dimancheJ2->RowCount();
    //Dimanche Jour 3
    $dimancheJ3 = $bdd->prepare($sql_J_3);
    $dimancheJ3->execute(array($_SESSION['id_sondage'], "Dimanche"));
    $nbr_D3 = $dimancheJ3->RowCount();
    
    
    $Total_J1 = $nbr_L1 + $nbr_M1 + $nbr_Mer1 + $nbr_J1 + $nbr_V1 + $nbr_S1 + $nbr_D1;
    $Total_J2 = $nbr_L2 + $nbr_M2 + $nbr_Mer2 + $nbr_J2 + $nbr_V2 + $nbr_S2 + $nbr_D2;
    $Total_J3 = $nbr_L3 + $nbr_M3 + $nbr_Mer3 + $nbr_J3 + $nbr_V3 + $nbr_S3 + $nbr_D3;
    $Total_J = $Total_J1 + $Total_J2 + $Total_J3;
    
    $nbr_L = $nbr_L1 + $nbr_L2 + $nbr_L3;
    $nbr_M = $nbr_M1 + $nbr_M2 + $nbr_M3;
    $nbr_Mer = $nbr_Mer1 + $nbr_Mer2 + $nbr_Mer3;
    $nbr_J = $nbr_J1 + $nbr_J2 + $nbr_J3;
    $nbr_V = $nbr_V1 + $nbr_V2 + $nbr_V3;
    $nbr_S = $nbr_S1 + $nbr_S2 + $nbr_S3;
    $nbr_D = $nbr_D1 + $nbr_D2 + $nbr_D3;
    
    $L_p = floor((100*$nbr_L)/$Total_J);
    $M_p = floor((100*$nbr_M)/$Total_J);
    $Mer_p = ceil((100*$nbr_Mer)/$Total_J);
    $J_p = floor((100*$nbr_J)/$Total_J);
    $V_p = ceil((100*$nbr_V)/$Total_J);
    $S_p = floor((100*$nbr_S)/$Total_J);
    $D_p = floor((100*$nbr_D)/$Total_J);
    //fin calcule proucentage par jour
    
    //début en fonction de chaque jour et chaque heur
}



include "lib/top.php";


?>

<table style="margin-top: 15%;">
    <?php if($L_p != 0){ ?>
    <tr>
        <th>Jour :</th>
        <th>Personnes :</th>
    </tr>
    <tr>
        <th>Lundi</th>
        <td>
            <center>
                <?= $L_p." %" ?>
            </center>
        </td>
        <td></td>
    </tr>
    <?php } ?>
    <?php if($M_p != 0){ ?>
    <tr>
        <th>Mardi</th>
        <td>
            <center>
                <?= $M_p." %" ?>
            </center>

        </td>
    </tr>
    <?php } ?>
    <?php if($Mer_p != 0){ ?>
    <tr>
        <th>Mercredi</th>
        <td>
            <center>
                <?= $Mer_p." %" ?>
            </center>
        </td>
    </tr>
    <?php } ?>
    <?php if($J_p != 0){ ?>
    <tr>
        <th>Jeudi</th>
        <td>
            <center>
                <?= $J_p." %" ?>
            </center>
        </td>
    </tr>
    <?php } ?>
    <?php if($V_p != 0){ ?>
    <tr>
        <th>Vendredi</th>
        <td>
            <center>
                <?= $V_p." %" ?>
            </center>
        </td>
    </tr>
    <?php } ?>
    <?php if($S_p != 0){ ?>
    <tr>
        <th>Samedi</th>
        <td>
            <center>
                <?= $S_p." %" ?>
            </center>
        </td>
    </tr>
    <?php } ?>
    <?php if($D_p != 0){ ?>
    <tr>
        <th>Dimanche</th>
        <td>
            <center>
                <?= $D_p." %" ?>
            </center>
        </td>
    </tr>
    <?php } ?>
</table>
<?php
include "lib/bot.php";
?>





Merci d'avance pour votre aide.

14 réponses

yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471
Modifié le 26 nov. 2017 à 21:45
bonsoir,
pourrais-tu expliquer ce que contient ta base de données? je vois 4 colonnes, id_even, jour_1, jour_2 et jour_3. que contiennent ces champs?
qu'essaies-tu d'obtenir?
montrer ton code n'est pas une bonne façon de nous faire comprendre ce que tu veux obtenir: ton code est peut-être incorrect, ou difficile à comprendre.
merci de nous expliquer pourquoi tu fais cela.

quand tu écris "j'ai un tableau avec", que veux-tu dire? c'est ce que tu obtiens, tu veux autre chose, c'est ce qu'il y a dans ta base, ?

en passant: il est inutile de faire plusieurs fois des prepare pour la même requête. fais plutôt:
$p_jour1 = $bdd->prepare($sql_J_1);
$p_jour2 = $bdd->prepare($sql_J_2);
$p_jour3 = $bdd->prepare($sql_J_3);

$p_jour1->execute(array($_SESSION['id_sondage'], "Lundi"));
$nbr_L1 = $p_jour1->RowCount();
$p_jour2->execute(array($_SESSION['id_sondage'], "Lundi")); 
$nbr_L2 = $p_jour2->RowCount();
$p_jour3->execute(array($_SESSION['id_sondage'], "Lundi"));
$nbr_L3 = $p_jour2->RowCount();

$p_jour1->execute(array($_SESSION['id_sondage'], "Mardi"));
$nbr_M1 = $p_jour1->RowCount();
$p_jour2->execute(array($_SESSION['id_sondage'], "Mardi")); 
$nbr_M2 = $p_jour2->RowCount();
$p_jour3->execute(array($_SESSION['id_sondage'], "Mardi"));
$nbr_M3 = $p_jour2->RowCount();
0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21
26 nov. 2017 à 21:35
Donc ma table est composer de cela :


--
-- Structure de la table `participation_user`
--

CREATE TABLE `participation_user` (
`id` int(11) NOT NULL,
`id_user` int(11) NOT NULL,
`id_even` int(11) NOT NULL,
`id_jeu` int(11) NOT NULL,
`reponse` varchar(50) NOT NULL,
`jour_1` varchar(100) DEFAULT NULL,
`jour_2` varchar(100) DEFAULT NULL,
`jour_3` varchar(100) DEFAULT NULL,
`heure_debut_1` time DEFAULT NULL,
`heure_fin_1` time DEFAULT NULL,
`heure_debut_2` time DEFAULT NULL,
`heure_fin_2` time DEFAULT NULL,
`heure_debut_3` time DEFAULT NULL,
`heure_fin_3` time DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;


Donc le but est d'afficher si cela est disponible, une colonne supplémentaire avec en titre de colonne par exemple 0H est en dessous de nombre de personne disponible a cette heure la, suivant les jours disponible.

Jour_1 Jour_2 Jour_3 il y a des jours de la semaines enregistrer dedans, car au départ j'ai un formulaire qui demande les disponibilité et on peu en entré jusqu'a 3, la réponse est est positif, sinon aucune disponibilité donc les champs son par défaut en NULL.

Et quand je dis j'ai un tableau, c'est que j'optaient et ce qui est afficher.


Voila pour cela je vais modifier mon code afin de le simplifier et économiser des lignes :).

Merci a vous.
0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649 > flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021
29 nov. 2017 à 22:27
Bonjour,

Oulalalala..... (c'est ce que je dis quand je vois une table comme celle la. )
Que se passe t-il si demain tu décides d'avoir non pas 3 mais 4 plages ? Et si ensuite tu en veux 7 ????
Tu vas ajouter à la main des colonnes supplémentaires ??? Oo

Tu devrais avoir une table à part qui serait pour stoker les différentes plages de l'utilisateur

plage_user
id INT
jour INT
heure_deb TIME
heure_fin TIME


et ainsi, faire une liaison avec ta précédente table participation_use qui ne contiendrait plus que :
 `id` int(11) NOT NULL,
`id_user` int(11) NOT NULL,
`id_even` int(11) NOT NULL,
`id_jeu` int(11) NOT NULL,
`reponse` varchar(50) NOT NULL,



Ta requête pourra ainsi facilement être groupée sur les JOURS et sur les HEURES....

Et comme ça... si demain tu veux finalement autoriser 50 plages... ben tu pourras sans rien avoir à toucher dans ta bdd !

Une BDD ... on en construit le modèle au départ... et on n'y touche plus par la suite. Tout doit pouvoir se faire automatiquement.....
0
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471
26 nov. 2017 à 21:47
je te propose de tester ceci:
session_start();
include_once "SQL/cobdd.php";
if(isset($_SESSION['statut'])){
    if($_SESSION['statut'] != 3){
        header("Location: index.php");
    }
}
if(isset($_SESSION['id_sondage'])){
    $sql_J = "SELECT count(*) as cjour, jour FROM 
	( 	SELECT id_even, jour_1 as jour FROM participation_user
		UNION ALL
		SELECT id_even, jour_2 FROM participation_user
		UNION ALL
		SELECT id_even, jour_3 FROM participation_user
	)
	WHERE id_even = ?
	GROUP by jour"

    // participants par jour
    $req_pjour = $bdd->prepare($sql_J);
    $req_pjour->execute(array($_SESSION['id_sondage']));
	$result_pjour=$req_pjour->fetchAll();
	foreach ($result_pjour as $unjour)
	{
		echo $unjour['cjour'] . " personne(s) le " . $unjour['jour'] . "<br>";
	}

   
}


 
0
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471
26 nov. 2017 à 21:55
tu voudrais un tableau pour un sondage donné, qui donne pour chaque heure de chaque jour, le nombre de personnes disponibles?
0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21
28 nov. 2017 à 21:41
Oui tous a fait cela afin d'organiser un élément suivant le nombre maximum de personnes par rapport a la tranche d'heure
0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21
28 nov. 2017 à 21:52
Voila donc j'ai essayer ce que vous m'avez mis, et donc je tombe sur ce message d'erreur :

Fatal error: Uncaught PDOException: SQLSTATE[42000]: Syntax error or access violation: 1248 Every derived table must have its own alias in /Applications/MAMP/htdocs/ProjetWWW/admin_event.php:22 Stack trace: #0 /Applications/MAMP/htdocs/ProjetWWW/admin_event.php(22): PDOStatement->execute(Array) #1 {main} thrown in /Applications/MAMP/htdocs/ProjetWWW/admin_event.php on line 22


Pourtant quand je relis votre code vous crée un alias même si je comprend pas le cjour dans la variable $sql_J.

Voila pour les nouvelles je vais regarder de mon coté pourquoi j'ai ce message d'erreur je trouverai surement :)
0
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471 > flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021
28 nov. 2017 à 22:01
peut-être ainsi?
SELECT count(*) as cjour, jour FROM 
	( 	SELECT id_even, jour_1 as jour FROM participation_user
		UNION ALL
		SELECT id_even, jour_2 FROM participation_user
		UNION ALL
		SELECT id_even, jour_3 FROM participation_user
	) as tout
	WHERE id_even = ?
	GROUP by jour
0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21
28 nov. 2017 à 22:21
Et j'aimerai savoir sur cette partie la :
SELECT id_even, jour_1 as jour FROM 
Pourquoi avez vous mis un alias et pas aux autre plus bas ?
SELECT id_even, jour_2 FROM participation_user
0
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471 > flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021
28 nov. 2017 à 22:24
parce que dans une UNION, c'est le premier select qui détermine les noms des champs retournés.
0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21
28 nov. 2017 à 22:19
Super merci ça marche regardez, je trouve le résultat étrange non ?

0
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471
28 nov. 2017 à 22:31
et ainsi?
SELECT count(*) as cjour, jour FROM 
	( 	SELECT id_even, jour_1 as jour FROM participation_user WHERE jour_1 IS NOT NULL
		UNION ALL
		SELECT id_even, jour_2 FROM participation_user WHERE jour_2 IS NOT NULL
		UNION ALL
		SELECT id_even, jour_3 FROM participation_user WHERE jour_3 IS NOT NULL
	) as tout
	WHERE id_even = ?
	GROUP by jour
        ORDER by jour
0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21
28 nov. 2017 à 22:52
Magnifique, donc sais dans le même type de développement que je dois ajouter mes heures par rapport aux jours ?
0
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471 > flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021
Modifié le 29 nov. 2017 à 00:36
je propose ceci pour ajouter les heures:
- d'abord tu crées une table, appelée periodes qui a deux champs de type time. les champs sont appelés heure_deb et heure_fin. tu enregistres dans cette table une ligne par période que tu veux voir dans le rapport. par exemple, une ligne avec heure_deb = 9h et heure_fin= 10h
- tu essaies ceci:
session_start();
include_once "SQL/cobdd.php";
if(isset($_SESSION['statut'])){
    if($_SESSION['statut'] != 3){
        header("Location: index.php");
    }
}
if(isset($_SESSION['id_sondage'])){
    $sql = "SELECT count(*) as cjour, jour, heure_deb, heure_fin FROM 
 (  SELECT id_even, jour_1 as jour, heure_deb, heure_fin FROM participation_user, periodes
   WHERE jour_1 IS NOT NULL AND heure_debut_1 <= heure_deb AND heure_fin_1 >= heure_fin
  UNION ALL
  SELECT id_even, jour_2, heure_deb, heure_fin FROM participation_user, periodes
   WHERE jour_2 IS NOT NULL AND heure_debut_2 <= heure_deb AND heure_fin_2 >= heure_fin
  UNION ALL
  SELECT id_even, jour_3, heure_deb, heure_fin FROM participation_user, periodes
   WHERE jour_3 IS NOT NULL AND heure_debut_3 <= heure_deb AND heure_fin_3 >= heure_fin
 ) as tout
 WHERE id_even = ?
 GROUP by jour, heure_deb, heure_fin
        ORDER by jour, heure_deb, heure_fin"

    // participants par jour
    $requete = $bdd->prepare($sql);
    $requete->execute(array($_SESSION['id_sondage']));
 $result=$requete->fetchAll();
 foreach ($result as $uneperiode)
 {
  echo $uneperiode['cjour'] . " personne(s) le " . $uneperiode['jour'] . " entre " . $uneperiode['heure_deb'] . " et " . $uneperiode['heure_fin ']  . "<br>";
 }
}
0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21 > yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024
28 nov. 2017 à 23:56
L'idée parait très bien mais comment cela peu fonctionner si je met pas par exemple un ID jour ou ou autre afin de savoir de quel heur on parle par rapport au jour ?
0
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471 > flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021
29 nov. 2017 à 00:34
tu poses la question pour la table periodes? dans cette table, tu ne t'occupes pas des jours, uniquement des heures. cette table sert uniquement à découper les journées en périodes. cela va aider à trouver les personnes disponibles pendant toute la durée de chaque période.
0

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

Posez votre question
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21
Modifié le 29 nov. 2017 à 23:25
CREATE TABLE `plage_user` (
  `id` int(11) NOT NULL,
  `jour` int(11) NOT NULL,
  `heure_deb` time NOT NULL,
  `heure_fin` time NOT NULL


Voila qui est fait après je teste votre code :)

Haha vu que j'ai tous modifier dans ma base de données je peu pu me servir de heure_debut_1, ....

Je fait faire la modification demain, je reviendrai :)
Merci bonne soirée.
0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21
3 déc. 2017 à 20:01
Bonsoir, je viens de faire planté MySQL en voulant ajouter des plages horaires manuellement.... :/

La sélection courante ne contient pas de colonne unique. Les grilles d'édition, les cases à cocher ainsi que les liens Éditer, Copier et Supprimer ne sont pas disponibles.


Comment corriger cela ?

Bon moi je vais redémarrer le serveur peu être que cela peu marcher....
0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21
3 déc. 2017 à 21:09
Re donc j'ai crée un table plage_user, mais il serai peu être plus judicieux de faire comme cela :


a AUTO_INCREMENT
id INT
jour VARCHAR
heure_deb TIME
heure_fin TIME


Donc maintenant je doit modifier la structure du code SQL vu que j'ai pu de jour_1, jour_2, jour_3.....

Je vais déjà modifier ma page qui enregistre ces données vu que j'ai modifier ou le jour et la date doivent s'enregistrer.

Puis je m'attaque au SQL....
0
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471
3 déc. 2017 à 21:37
suggestion:
if(isset($_SESSION['id_sondage'])){
    $sql = "SELECT count(*) as cpers, jour, periode_deb, periode_fin 
	FROM participation_user as u, plage_user as p, periodes as h
   WHERE p.id = u.id_user 
      AND p.heure_deb <= h.periode_deb AND p.heure_fin >= h.periode_fin
      AND u.id_even = ?
 GROUP by jour, periode_deb, periode_fin
 ORDER by jour, periode_deb, periode_fin"

    // participants par jour et par période
    $requete = $bdd->prepare($sql);
    $requete->execute(array($_SESSION['id_sondage']));
 $result=$requete->fetchAll();
 foreach ($result as $uneperiode)
 {
echo $uneperiode['cpers'] . " personne(s) le " . $uneperiode['jour'] . " entre " . $uneperiode['periode_deb'] . " et " . $uneperiode['periode_fin']  . "<br>";
 }
}
0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21
3 déc. 2017 à 22:05
Super mais, on dirai que la table périodes, je l'est pas.

Je travail seulement sur la table participation_user et plage_user ( 'id' => qui correspond a l'ID de participation_user comme cela chaque participation relève d'une seule tranche horaire par événement et par utilisateur / jour => ou il y a le jour en toute lettres / 'heure_deb' => qui stocke horaire de début / 'heure_fin' => qui stocke l'horaire de fin ).

Voilà pour ce complément d'information de mon coté de vais tester de faire comme vous voir si j'arrive a quelque chose :)


Un grand merci a vous.
0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21 > flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021
3 déc. 2017 à 22:10
if(isset($_SESSION['id_sondage'])){
    $sql = "SELECT count(*) as cpers, jour, heure_deb, heure_fin 
	FROM participation_user as u, plage_user as p
   WHERE p.id = u.id 
      AND p.heure_deb AND p.heure_fin
      AND u.id_even = ?
 GROUP by jour, heure_deb, heure_fin 
 ORDER by jour, heure_deb, heure_fin";

    // participants par jour et par période
    $requete = $bdd->prepare($sql);
    $requete->execute(array($_SESSION['id_sondage']));
 $result=$requete->fetchAll();
 foreach ($result as $uneperiode)
 {
echo $uneperiode['cpers'] . " personne(s) le " . $uneperiode['jour'] . " entre " . $uneperiode['heure_deb'] . " et " . $uneperiode['heure_fin']  . "<br>";
 }
}


on dirai que ça marche ;)
0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21
3 déc. 2017 à 22:22
Mais comment mètre sous forme de tableau pour facilité la lecture style par exemple savoir que a entre 20h et 21h par exemple il y a 40 personnes est c'est le pique le plus haut de la journée. Donc style changer de couleur la case.

Voici le résultat que j'aimerai avoir, car juste des simples ligne avec le nombres de personnes ça parle pas vraiment.

Alors que avec ce type de tableau c'est plus simple.

0
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471
4 déc. 2017 à 00:00
echo "<table>";
 foreach ($result as $uneperiode)
 {
echo "<tr>"
. "<td>" . $uneperiode['jour'] . "</td>" 
. "<td>" . $uneperiode['heure_deb'] ."</td>"
. "<td>" . $uneperiode['heure_fin']  ."</td>"
. "<td>" . $uneperiode['cpers'] . "</td>"
 . "</tr>";
 }
echo "</table>";
0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21
4 déc. 2017 à 09:47
Bonjour, merci pour cette suggestion, donc au résultat j'ai cela :


Sauf que dans ma base de données j'ai Samedi 00:00:00 à 03:00:00 et Samedi 13:00:00 à 20:00:00 donc j'ai un problème niveau SQL déjà.

De plus peu t'on faire une boucle pour avoir le tableau 0h a 23h puis faire une autre boucle pour les données ou je devrai calculer le nombre de personne entre 0h et 1h puis 1h et 2h ect..... jusqu'a 23h a 0h.

Le jour données en sur la gauche du tableau, a coté le nombre de personnes suivant le créneau horaires puis déterminer les deux valeurs maximum par ligne de tableau.

Voila voila, donc je vais essayer de modifier la partie SQL et je vous tiens au courant. Bonne journée a vous et merci encore.
0
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471
4 déc. 2017 à 13:13
je suggère de créer une table périodes, cela te permettra de calculer calculer le nombre de personne entre 0h et 1h puis 1h et 2h ect..... jusqu'a 23h a 0h.
dans cette table, tu aurais 23 enregistrements, correspondant aux périodes sur lesquelles tu veux faire le rapport.
0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21
4 déc. 2017 à 19:52
Dis voir sur la table donc période, a chaque fois d'un utilisateur rentre une données par exemple : Samedi de 8h a 14h => dans ma table période j'ai:
 id => $id_reponse_user;
p1 => 0 // 0 à 1
p2 => 0 // 1 à 2
p3 => 0 // 2 à 3
p4 => 0 // 3 à 4
p5 => 0 // 4 à 5
p6 => 0 // 5 à 6
p7 => 0 // 6 à 7
p8 => 0 //7 à 8
p9 => 1 //8 à 9
p10 => 1 //9 à 10
p11 => 1 //10 à 11
p12 => 1 //11 à 12
p13 => 1 //12 à 13
p14 => 1 //13 à 14
p15 => 0 //14 à 15
p16 => 0 //15 à 16
p17 => 0 //16 à 17
p18 => 0 //17 à 18
p19 => 0 //18 à 19
p20 => 0 //19 à 20
p21 => 0 //20 à 21
p22 => 0 //21 à 22
p23 => 0 //22 à 23
p24=> 0 //23 à 0



C'est ça votre idée ?

Bon après j'ai un traitement php pour pouvoir ajouter cela a ma base de donnée.
Mais la j'ai aucune idée pour pouvoir savoir comment dire a php attention l'heure commence a 8h et fini a 14h donc voila les colonnes qui doivent être remplie.....
0
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471 > flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021
4 déc. 2017 à 20:30
mon idée c'est d'avoir une table périodes qui servira uniquement à indiquer quelles sont les périodes de la journée pour lesquelles tu veux connaitre le nombre de personnes disponibles.
si, par exemple, tu veux savoir combien de personnes sont disponibles de 9h à 12h ou de 14h à 16h, tu mettrais deux enregistrements dans la table periodes:
9h  12h
14h 16h

si, par contre, tu veux savoir combien de personnes sont disponibles pendant chacune des 24 heures de la journée, tu mettrais 24 enregistrements dans la table periodes:
0h   1h
1h   2h
2h   3h
...
23h 23h59m59s

cette table ne changerait donc jamais, elle sert uniquement à déterminer les périodes que tu veux voir dans les rapports.
la requête SQL que je t'ai proposée utilisera cette table pour déterminer pour quelles périodes tu veux connaitre le nombre de participants.
0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21
5 déc. 2017 à 22:28
Bas la deuxième solution mais le seule problème comment déterminer cela, par exemple, je met dans mon formulaire Dimanche de 08H à 18H. Comment remplir ma table période en fonctionne du nombre de créneaux a remplir car dans cette exemple je doit faire :

$sql = "INSERT INTO periodes(id_plage_user, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19, p20, p21, p22, p23, p24)VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
$insert_periode = $bdd->prepare($sql);
$insert_periode->executie(array($id, $p1, $p2, $p3, $p4, $p5, $p6, $p7, $p8, $p9, $p10, $p11, $p12, $p13, $p14, $p15, $p16, $p17, $p18, $p19, $p20, $p21, $p22, $p23, $p24));


Bon après faut que je trouve un moyen de déterminer les variables suivant ce que l'utilisateur rentre..... Et je sais vraiment pas comment faire. Car je peu déterminé la variable de début donc 8H qui correspond a la variable $p9 ( car de 8H à 9H ) et donc ma variable de fin $p18 ( car de 17H à 18H ). Donc après je dois trouver comment placer les autres variable en dehors du créneau de 08H à 18H et les définir comme égale a 0. Puis mètre chacune des variables du créneau horaire a 1 donc $p9, $p10, $p11, $p12, $p13, $p14, $p15, $p16, $p17, $p18.
0
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471 > flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021
5 déc. 2017 à 22:39
je pense avoir déjà écrit cinq fois que la table periodes n'a que deux champs.
relis les #14, 16, 18, 34 et 36. lis-tu ce que j'écris? si tu n'es pas d"accord, dis-le.
si tu fais le second choix propose en #36, la table périodes comprend un total de 24 enregistrements, simplement pour découper une journée en 24 heures.
0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649
4 déc. 2017 à 10:03
Bonjour,

Avant toutes choses .... il serait bien de définir clairement la structure de ta bdd .
Pour cela, nous fournir le MCD et/ou un DUMP de ta bdd serait un minimum.

Ensuite, ça ne sert à rien de faire des tests dans le code PHP tant que tu n'es pas sûr de tes requêtes en SQL !

En plus, je ne sais pas comment tu stockes les infos... mais en ce qui concerne cette ligne
 GROUP by jour, heure_deb, heure_fin 

mais si ton champ heure_deb est format time ( h:i:s) j'aurais plus vu
 GROUP by jour, Hour(heure_deb)






0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21
4 déc. 2017 à 12:54
Bonjour, merci de ta réponse: voila DUMP de ma table:

--
-- Base de données : `projetweb`
--

-- --------------------------------------------------------

--
-- Structure de la table `infos_users`
--

CREATE TABLE `infos_users` (
`id` int(11) NOT NULL,
`id_user` int(11) NOT NULL,
`nom` varchar(50) DEFAULT NULL,
`prenom` varchar(50) DEFAULT NULL,
`sexe` int(11) DEFAULT NULL,
`date_naissance` text,
`profession` varchar(100) DEFAULT NULL,
`jeux` text
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- --------------------------------------------------------

--
-- Structure de la table `jeux`
--

CREATE TABLE `jeux` (
`id` int(11) NOT NULL,
`nom` varchar(100) NOT NULL,
`lien_image` text NOT NULL,
`type` text NOT NULL,
`info` text NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- --------------------------------------------------------

--
-- Structure de la table `participation_user`
--

CREATE TABLE `participation_user` (
`id` int(11) NOT NULL,
`id_user` int(11) NOT NULL,
`id_even` int(11) NOT NULL,
`id_jeu` int(11) NOT NULL,
`reponse` varchar(50) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- --------------------------------------------------------

--
-- Structure de la table `plage_user`
--

CREATE TABLE `plage_user` (
`a` int(11) NOT NULL,
`id` int(11) NOT NULL,
`jour` varchar(11) NOT NULL,
`heure_deb` time NOT NULL,
`heure_fin` time NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- --------------------------------------------------------

--
-- Structure de la table `sondage`
--

CREATE TABLE `sondage` (
`id` int(11) NOT NULL,
`id_jeu_1` int(11) NOT NULL,
`id_jeu_2` int(11) NOT NULL,
`jour_J` datetime NOT NULL,
`details` text NOT NULL,
`temps_sondage` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- --------------------------------------------------------

--
-- Structure de la table `users`
--

CREATE TABLE `users` (
`id` int(11) NOT NULL,
`pseudo` text NOT NULL,
`id_discord` text NOT NULL,
`mdp` text NOT NULL,
`mail` text NOT NULL,
`date_inscription` datetime NOT NULL,
`statut` int(11) NOT NULL DEFAULT '1'
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

--
-- Index pour les tables déchargées
--

--
-- Index pour la table `infos_users`
--
ALTER TABLE `infos_users`
ADD PRIMARY KEY (`id`);

--
-- Index pour la table `jeux`
--
ALTER TABLE `jeux`
ADD PRIMARY KEY (`id`);

--
-- Index pour la table `participation_user`
--
ALTER TABLE `participation_user`
ADD PRIMARY KEY (`id`);

--
-- Index pour la table `plage_user`
--
ALTER TABLE `plage_user`
ADD PRIMARY KEY (`a`);

--
-- Index pour la table `sondage`
--
ALTER TABLE `sondage`
ADD PRIMARY KEY (`id`);

--
-- Index pour la table `users`
--
ALTER TABLE `users`
ADD PRIMARY KEY (`id`);

--
-- AUTO_INCREMENT pour les tables déchargées
--

--
-- AUTO_INCREMENT pour la table `infos_users`
--
ALTER TABLE `infos_users`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=5;
--
-- AUTO_INCREMENT pour la table `jeux`
--
ALTER TABLE `jeux`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=5;
--
-- AUTO_INCREMENT pour la table `participation_user`
--
ALTER TABLE `participation_user`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=15;
--
-- AUTO_INCREMENT pour la table `plage_user`
--
ALTER TABLE `plage_user`
MODIFY `a` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=14;
--
-- AUTO_INCREMENT pour la table `sondage`
--
ALTER TABLE `sondage`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=4;
--
-- AUTO_INCREMENT pour la table `users`
--
ALTER TABLE `users`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=9;


Donc je doit travailler sur le SQL.
Merci pour vos conseils, il est vrai que crée une table pour stocker les jours et le temps est vraiment plus pratique.
0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21
4 déc. 2017 à 12:55
J'ai fait un aperçu de ce que j'aimerai comme tableau en html :




Voila voila :)
0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649
5 déc. 2017 à 22:46
Re bonjour,


Tu ne pars pas sur de bonnes bases.....
Déjà... le MCD de ta bdd devrait ressembler à ça :




De là... il sera facile de faire les requêtes qui te donneront satisfaction...

Par exemple... le nombre de commandes pour le LUNDI aux différentes plages horaires
  • lundi = 1 , mardi = 2 , mercredi = 3 etc...


ça donnerait un truc du genre :
SELECT H.id as ID_PLAGE, 
       concat(H.heure_deb,'-' , H.heure_fin) as PLAGE,
       COUNT(C.id) as NB_COMMANDE 
FROM plages_horaires H
LEFT JOIN commande C ON H.id = C.id_plage
WHERE jour = 1
GROUP BY C.id


Avec ça .. facile de générer ta liste déroulante des plages horaires disponibles....

0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649
5 déc. 2017 à 22:49
Dans ce MCD .. comprend que
Pour un USER il peut y avoir 1 ou plusieurs commandes
Que pour chaque commande il faut y avoir 1 ou plusieurs produits
Que pour une commande il y a 1 plage horaire sélectionnée pour un jour donné

Il te faudra remplir (manuellement) la table plages_horaire toi même en définissant les différentes plages souhaitées.
Le reste étant géré via des requête INSERT / UPDATE dans ton programme.
0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21
5 déc. 2017 à 22:56
Euh ok, mais avec ce que j'ai déjà ça peu pas marcher pour arrivé au résultat que je veux avoir ?

Car j'ai une table plage_horaire comme tu donne dans ton exemple, j'ai la table participation_user qui ressemble ta table commande.

Sais vrai je stocke des jours dans mon champs jour, vous d'après ce que je vois ce son des chiffres de 1 à 7 donc.

J'arrive pas a comprendre pourquoi je n'arrive pas a obtenir mon résultat, bon si je pourrai faire 24 requêtes SQL pour obtenir les 24 résultats de chaque jours.

Vous me dirai cela n'est pas très optimiser,....
0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649 > flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021
5 déc. 2017 à 23:18
Si tu penses que ton modèle actuel est proche de celui que je te propose... tu ne devrais pas avoir de mal à adapter la requête que je viens de te donner
Si tu l'essayes.. tu verras qu'il n'est pas nécessaire d'en faire 24 ....
0
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471 > flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021
6 déc. 2017 à 00:52
en fait, c'est la table période (avec 24 enregistrements) que je propose depuis le #14 qui va te permettre de tout faire en une requête plutôt qu'en 24.
0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21 > yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024
7 déc. 2017 à 21:27
Vous me parlez donc de la table période qui a deux champs de type time (heure_deb / heure_fin ) ?
Mais après pour remplir mon tableau je fait comment ?
0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21
6 mai 2018 à 01:17
Bonsoir, donc a mon avis je vais stocker cela dans un tableau associatif puis afficher le résultat.

Je vous tient au courant.
0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21
11 mai 2018 à 22:02
Donc voila:

Dans phpmyadmin ça fonctionne bien :
UPDATE `date` SET `0` = 1 WHERE `id` = 1


En php :

 for ($i = $heurD_1; $i <= $heurF_1; $i++){
                $sql = "UPDATE date SET $i = :H  WHERE id = :id_t";
                $up_1 = $bdd->prepare($sql);
                $up_1->execute(array('H' => '1',
                                    'id_t' => $id_1));
                }


Donc j'ai un message d'erreur :
Fatal error: Uncaught PDOException: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '5 = '1' WHERE id = '3'' at line 1 in /Applications/MAMP/htdocs/exemple/index.php:48 Stack trace: #0 /Applications/MAMP/htdocs/exemple/index.php(48): PDOStatement->execute(Array) #1 {main} thrown in /Applications/MAMP/htdocs/exemple/index.php on line 48
0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649
11 mai 2018 à 22:28
Ecoute.... ça fait des mois que tu nous demandes des conseils....
Qu'on t'explique comment faire... comment structurer tes tables....
et malgré ça... on en revient toujours au point de départ.
Tu n'écoutes aucun de nos conseils.
ça devient lassant.
.. je n'ai pas pour habitude de travailler sur un projet qui est mal structuré et que l'auteur refuse de faire évoluer dans le bon sens.
Tu veux continuer avec tes idées saugrenues et à travailler en mode brouillon sans reflechir... c'est toi qui voit. ...Perso... je laisse tomber.
Bon courage pour la suite.
0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21
11 mai 2018 à 22:41
ok très bien bonne journée.

Je reviendrai plus ici donc.... je vais faire ça seule et voila.... le site porte bien sont nom sauf que ça marche pas... mais bon je fini tous ça
0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649 > flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021
11 mai 2018 à 22:46
le site porte bien sont nom sauf que ça marche pas.

ça marche très bien.... à condition de prendre note des remarques/conseils/consignes qu'on te donne.
Si tu es réfractaire à tout changement.... là ... en effet...ça marchera moins bien.


mais bon je fini tous ça

Courage.. tu n'es plus à 3 mois près visiblement....
A force de bidouiller ton code dans tous les sens.. tu finiras bien à le faire fonctionner.... en espérant pour toi que tu n’aies pas, par la suite, besoin de le faire évoluer.
A ce moment là... tu prendras peut-être le temps de reprendre les différentes réponses qui t'ont été données...
Bonne soirée.
0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21 > jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024
11 mai 2018 à 22:53
J'ai fait les changements que vous m'avez dit mais comment modifier quelque chose que l'on comprend pas ?
Alors après afin d'avancer oui j'ai changer le problème afin de simplifier mon problème, mais j'ai quand même un message d'erreur.

Donc mais vous avez raison on ne peu contredire un grand maître, mais merci de m'avoir aider.

Je vais tous reprendre a zéro.

Bonne soirée a vous.
0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649
11 mai 2018 à 22:58
grand maitre.. je ne sais pas;... mais expérimenté (voir .. très expérimenté...) ça oui.


Je vais tous reprendre a zéro.

Voila.. ça c'est la bonne attitude.
Donc... maintenant que nous sommes d'accord sur ce que tu dois faire... commence par poser, sur papier, le cahier des charges...(voir même le découpage fonctionnel) de ton programme... ainsi que le MCD de ta bdd qui en découle.
A partir de là seulement tu pourras songer à coder.
0