Hallo allen ik heb even jullie hulp nodig. het is nogal ingewikkeld dus doe mijn uiterste best om het jullie goed uit te leggen!!
Het gaat om het volgende:
Ik ben iets aan het maken waar men fouten in kan voeren. Uiteraard is het ook mogelijk om ze weer op te lossen.
Nu is het zo dat het hoofd van elke afdeling kan doorvoeren of de oplossing van de melding correct of incorrect is. Wanneer hij correct is wordt hij netjes weggeschreven en kan men hem daarna weer bekijken maar niets meer aan wijzigen.
Op het moment dat het hoofd van een afdeling de oplossing afkeurd moet er een rede van afkeur aan worden meegegeven, en de melding moet weer bij onopgelost komen te staan. Dit lukt ook allemaal nog.
Het is nu zo dat een melding dus vaker dan 1 keer kan worden afgekeurd. En nu krijg ik het niet voor elkaar om de juiste rede van afkeur onder de juiste opgegeven oplossing te krijgen.
hieronder ziet u een plaatje van wat het probleem is.
www.violanzzj.nl/tbp/afkeur.jpg
Jullie zien dat er 3 keer een oplossing is toegevoegd en 2x een rede van afkeur. Nu worden die dus bij alle 3 de oplossingen weergegeven.
indeling tabellen in mysql (Denk dat de indeling niet logisch is en dat hier wat aan moet veranderen om het goede resultaat te kunnen krijgen, en wil hier julile advies over hebben)
<?php
smt_probleem smt_oplossing smt_afkeur
*id* 1--------| *prob_id* 1-----| *id_afk*
probleem |----->oo id |---->1 prob_id
opgelost oplossing afkeur_rede
afkeur (ja / nee) geb_nr
datum
?>
En hieronder de query die ik gebruik om het eruit proberen te halen:
<?
$query = "
SELECT smt_oplossing.afkeur AS a, id_afk, smt_afkeur.afkeur AS afk, nr, prob_id
FROM smt_afkeur, smt_oplossing
WHERE smt_oplossing.prob_id = smt_afkeur.nr";
$sql = mysql_query("$query");
while ($fill = mysql_fetch_array($sql))
{
$a = $fill['a'];
$afkeuring = $fill['afk'];
$probleem_id = $fill['prob_id'];
$nummer = $fill['nr'];
if ($a == 1)
{
echo '<tr><td><h2>'.$afk.' '.$prob_id.'</h2></td></tr>';
}
else
{
echo "afkeuring = 0 <BR><BR>";
}
}
?>
1.197 views