datum terughalen uit database

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Marc rc is as

Marc rc is as

12/07/2010 22:15:23
Quote Anchor link
Hallo,

Ben bezig met een php scriptje, één van mijn eerste.

Ik heb een script gemaakt waarmee de datum kan worden gekoezen middels 3 dropdown velden. Hetzelfde die worden gebruikt voor de geboortedatum bij het inschrijven van dit forum. Ik heb echter ipv cijfers voor de maanden de nederlandse woorden in een array gezet. Hieronder de code:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<select name="datum_maand" id="datum_maand">
<?php
$maanden
= array '','Januari','Februari','Maart','April','Mei','Juni','Juli','Augustus','September','Oktober','November','December');
for($i_m=1;$i_m <= 12;$i_m++)
echo '<option value="'.($i_m).'">'.$maanden[$i_m].'</option>';
?>

</select>


Nu ben ik met een tweede script bezig om dezelfde gegevens te kunnen wijzigen. Dat krijg ik echter niet voor elkaar.


Zover ben ik, maar daar klopt volgens mij niets van:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
$maanden
= array('','Januari','Februari','Maart','April','Mei','Juni','Juli','Augustus','September','Oktober','November','December');
                for($i_m=1;$i_m <=12;$i_m++)
                if($i_m == $rij['Agenda_Datummaand']) {
                    echo '<option value="' . $i_m . '" selected>' . $maanden['Agenda_Datummaand'] . '</option>';
                }
else{
                    echo '<option value="' . $i_m . '">'. $maanden [$_m] .'</option>';
            }

                
                 ?>

Agenda_Datummaand is vanzelfsprekend het veld in de database.

Kan iemand me helpen?
Gewijzigd op 12/07/2010 22:16:18 door Marc rc is as
 
PHP hulp

PHP hulp

26/12/2024 12:42:24
 
Erik Rijk

Erik Rijk

12/07/2010 22:18:06
Quote Anchor link
Deze tutorial van onze Jan kan ik me nog herinneren...
http://www.phphulp.nl/php/tutorial/data-verwerking/selectief-geheugen/404/

Steek je zeker wat van op! :)
 
Marc rc is as

Marc rc is as

15/07/2010 20:06:24
Quote Anchor link
Dit is inderdaad een hele goede tutorial.

Echter dit is wijzigen kort nadat het is ingevukd.
In mijn geval heb ik 3 php bestanden.
1. toevoegen
2. tonen met de keuze knoppen "wijzigen" en "wissen"
3. wijzigen.

1. is alleen het toevoegen van data.
in 2. worden alle data getoond met daarachter een knop met "wijzigen".
Zodra je wijzigen klikt. wordt 3. geopend en verschijnd de data uit de database in een formuliertje via een filter url.

De data die dan in de databse staat moet getoont worden.

Ik begrijp dat ik dat met deze tut ook moet kunnen klaren, maar ik zie niet hoe?

Iemand enig idee?
Gewijzigd op 15/07/2010 20:08:44 door Marc rc is as
 
Marc rc is as

Marc rc is as

15/07/2010 22:25:55
Quote Anchor link
Ik ben nu zo ver dat ik zie welke maand uit de database komt en er staat weer een rijtje maanden om te selecteren. De in de database opgeslagen maand is echter onzichtbaar (zie afbeelding). Dit is tot nu de code: (waarschijnlijk veel overbodig, maar het werkt tot dusver) Wie weet hoe ik nu ook nog de opgeslagen maand kan tonen?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<select name="datum_maand" id="datum_maand">
        <?php
        for($i_m=1;$i_m <=12;$i_m++)
                if($i_m == $rij['Agenda_Datummaand']) {$maanden[$i_m] = array('','Januari','Februari','Maart','April','Mei','Juni','Juli','Augustus','September','Oktober','November','December');
                                    echo '<option value="' . $maanden[$i_m] . '" selected>' . $maanden[$i_m . 'Agenda_Datummaand'] . '</option>';
                }
else{$maanden = array('','Januari','Februari','Maart','April','Mei','Juni','Juli','Augustus','September','Oktober','November','December');
                    echo '<option value="' . $i_m . '">'. $maanden[$i_m] .'</option>';
            }
                
                ?>

        </select>
Afbeelding
 
- Mark -

- Mark -

16/07/2010 00:05:34
Quote Anchor link
Als je uit onderstaande regel . 'Agenda_Datummaand' sloopt, selected veranderd naar selected="selected" en [$im] achter je array met maanden haalt dan werkt hij. al heb je genoeg aan 1 enkele array boven de loop.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php

    echo '<option value="' . $maanden[$i_m] . '" selected>' . $maanden[$i_m . 'Agenda_Datummaand'] . '</option>';

?>


Maar probeer het volgende eens.

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
<select name="datum_maand" id="datum_maand">
<?php

    #| Settings | Set locale op Nederlands.
    
        setlocale(LC_ALL, 'nl_NL');
        

    #| Alle 12 de maanden aflopen.
    
        for($maand = 1; $maand <= 12; $maand++){
        
        #| Hier kijken we of de huidige maand als de geselecteerde maand moet worden weergeven.
        
            $selected = ($maand == $rij['Agenda_Datummaand']) ? ' selected="selected"' : '' ;


        #| Optie weergeven.

            echo '<option value="'.$maand.'"'.$selected.'>'.strftime("%B", mktime(0, 0, 0, $maand, 1, 0)).'</option>';

        }
              

?>

</select>


Het settings gedeelte hoort daar eigenlijk niet maar hogerop in een settings of config file die je vast en zeker wel hebt op je website.
Gewijzigd op 16/07/2010 00:07:27 door - Mark -
 
Marc rc is as

Marc rc is as

16/07/2010 18:55:57
Quote Anchor link
Beste Mark,

De bovenste optie die je vermeldt werkt, maar de onderste is inderdaad wel een beetje fraaier! Geweldig bedankt!!
Gewijzigd op 17/07/2010 20:00:11 door Marc rc is as
 



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.