login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Profiel (Opgelost)

Offline arneman - 07/07/2009 21:31
Avatar van arnemanNieuw lid Ik zou mijn gebruiker graag de kans geven om zijn profiel aan te passen, het probleem dat ik tegenkom is het volgende. Ik wil dat er net zoals hier op sitemasters bepaalde stukken uit de MySQL database ingeladen worden in comboboxen en dat de data uit de database automatisch geselecteerd is.

Voor het geslacht heb ik iets geprobeerd met IF'jes, maar voor de datum is dit eigenlijk te veel code.

Heeft iemand suggesties?

Dit is mijn code tot nu toe Plaatscode: 137085

4 antwoorden

Gesponsorde links
Offline Martijn - 07/07/2009 21:44 (laatste wijziging 07/07/2009 21:49)
Avatar van Martijn Crew PHP
  1. if ($gender == 1) { echo '<option value="0">-</option>
  2. <option value="1" selected="selected">Male</option>
  3. <option value="2">Female</option>';
  4. }
  5. else {
  6. if ($gender == 2) {
  7. echo '<option value="0">-</option>
  8. <option value="1">Male</option>
  9. <option value="2" selected="selected">Female</option>';
  10. }
  11. else {
  12. echo '<option value="0" selected="selected">-</option>
  13. <option value="1">Male</option>
  14. <option value="2">Female</option>';
  15. }
  16. }

Dit kan ook en is een stuk korter:

  1. <option value="0" '.($gender==0 ? 'selected="selected"' : NULL).'>-</option>
  2. <option value="1" '.($gender==1 ? 'selected="selected"' : NULL).'>Male</option>
  3. <option value="2" '.($gender==2 ? 'selected="selected"' : NULL).'>Female</option>';


Dit:
($gender==0 ? 'selected="selected"' : NULL)
is de korte variant van if/else
($gender==0 ? 'selected="selected"' : NULL)
(voorwaarde ? echo als waar : echo als false)
oftewel
  1. if($gender==0){ echo 'selected="selected"' ;}
  2. else{ echo NULL;}


Ook heb je in je else weer een if en else, dit kan ook:
if(voorwaarde){ ...}
elseif(vorowaarde2){...}
else{...}
Zoals je ziet, ook overzichtelijker. Met deze info moet je je code al een stul beter kluunen krijgen 
Offline arneman - 07/07/2009 21:49
Avatar van arneman Nieuw lid Alle kleine beetjes helpen, bedankt!

Enig idee hoe het met de datum kan?
Offline Martijn - 07/07/2009 21:56 (laatste wijziging 07/07/2009 21:57)
Avatar van Martijn Crew PHP weer gewoon de short elseif
  1. for( $i = 1997; $i >= 1940; $i --){
  2. echo '<option value="'.$i.'" '.($i==$databaseWaarde ? 'selected="selected"' : NULL).'>'.$i.'</option> ';
  3. }


Ik raad je aan even goed te kijken naar wat ik doe en hoe het werkt, dan weet ik zeker dat je het bij de rest kan toepassen 
Offline arneman - 07/07/2009 21:59
Avatar van arneman Nieuw lid Heel erg bedankt ;)
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.338s