Form met afhankelijk aantal waardes doorcopieren.

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Wouter

Wouter

26/10/2006 12:19:00
Quote Anchor link
Hallo,

Ik ben bezig met het maken van een roosterprogramma in php. Momenteel wil ik het volgende:

- Op basis van de tijden waarin iemand deze week werkt lichte aanpassingen kunnen doen en die data dan copieren naar volgende week.

Vrij vertaald komt het neer op 'een select query waar week(datum) = deze week'. De output van de query komt in een form. In deze form kunnen lichte aanpassingen worden gedaan. Als men vervolgens op 'submit' drukt dan worden de gegevens gecopieerd naar de tabel waarbij de datum +7 dagen wordt gedaan.

De code voor de 1e pagina ziet er als volgt uit (let erop dat alle code nog niet perfect is).


<code>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
//Select query
//Huidig weeknummer

$huidigweeknummer = Strftime("%U",time());

//Gegevens van de huidige week worden opgehaald:

$huidigeweekquery = mysql_query("SELECT VerdelingID, dayname(Datum) as Dag, Datum, Beschikbaarheid, Bes_over, ProcesID, Proces_uren, RolID FROM verdeling WHERE Init = '$init' AND week(Datum) = '$huidigweeknummer'");
if (!$huidigeweekquery) {
exit('<p>query mislukt</p>');
}


while ($huidigeweekresultaat = mysql_fetch_array($huidigeweekquery)) {
$Verdeling[] = $huidigeweekresultaat['VerdelingID'];
$Dag[] = $huidigeweekresultaat['Dag'];
$Datum[] = $huidigeweekresultaat['Datum'];
$Beschikbaarheid[] = $huidigeweekresultaat['Beschikbaarheid'];
$Besover[] = $huidigeweekresultaat['Bes_over'];
$ProcesID[] = $huidigeweekresultaat['ProcesID'];
$Procesuren[] = $huidigeweekresultaat['Proces_uren'];
$RolID[] = $huidigeweekresultaat['RolID'];
}


?>

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?php
//output in tabel

    [code]<?php for ($i = 0, $n = count($Verdeling); $i < $n; $i++) {
    echo "<tr class='shade'>

    <td><font size='2'>$Verdeling[$i]</font></td>
    <td><font size='2'>$Dag[$i]</font></td>
    <td><font size='2'>$Datum[$i]</font></td>
    <td><font size='2'>$Beschikbaarheid[$i]</font></td>
    <td><font size='2'>$Besover[$i]</font></td>
    <td><font size='2'><input type='text' name=$ProcesID[$i] value=$ProcesID[$i] </font></td>
    <td><font size='2'><input type='text' name=$Procesuren[$i] value=$Procesuren[$i] </font></td>
    <td><font size='2'><input type='text' name=$RolID[$i] value=$RolID[$i] </font></td>
    
    </tr>"
;
}
    
    <
/table>

?>

</code>

Het probleem zit em voorlopig in de namen van de invoervelden 'ProcesID', 'Procesuren' en 'rollen'. Omdat de waardes van deze namen doorgenomen moeten worden naar een volgende pagina, moet elke waarde een unieke waarde zijn. Hiervoor heb ik een for loop bedacht waardoor de naam van een textfield altijd uniek is. De reden dat ik daar geen vaste waardes voor kan nemen is omdat een medewerker per week bijvoorbeeld 8 keer voor kan komen omdat hij op 1 dag bij 2 processen moet werken.

Het probleem is echter dat als ik op de volgende pagina een 'extract($_REQUEST);' doe dat die waardes dan niet meegenomen worden.

Mijn vraag is of mijn idee van naamgeving eigenlijk een goed idee was, en zo ja/nee wat een goede oplossing kan zijn.

Een plaatje van de situatie is te vinden op [url]http://home.wanadoo.nl/wjnijhof/temp/1.jpg[/url]
Gewijzigd op 01/01/1970 01:00:00 door Wouter
 
Er zijn nog geen reacties op dit bericht.



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.