login  Naam:   Wachtwoord: 
Registreer je!
 Forum

functie maken

Offline skillat2 - 05/08/2006 10:34 (laatste wijziging 05/08/2006 12:26)
Avatar van skillat2HTML beginner Ik heb nu veel if-else statements maar zou ik dit bijv. kunnen vervangen door een functie met een lus?

Kan iemand me a.u.b. een beetje op weg helpen.

  1. <?php
  2. if($obj->country == "au")
  3. {
  4. $country = "Austria";
  5. }
  6. else
  7. {
  8. if($obj->country == "be")
  9. {
  10. $country = "Belgium";
  11. }
  12. }
  13. ?>


  1. <?php
  2. function countrycheck()
  3. {
  4. # wat zou ik hier neer moeten zetten?
  5. }
  6. ?>

11 antwoorden

Gesponsorde links
Offline Jim - 05/08/2006 10:39 (laatste wijziging 05/08/2006 10:40)
Avatar van Jim Lid
  1. <?php
  2.  
  3. function countrycheck($land){
  4.  
  5. if($land == "au")
  6. {
  7. $country = "Austria";
  8. }
  9.  
  10. if($land == "be")
  11. {
  12. $country = "Belgium";
  13. }
  14.  
  15. }
  16.  
  17. ?>


en dan gebruik je hem zo:

  1. <?php
  2.  
  3. countrycheck($obj->country);
  4.  
  5. #of als je het niet snapt op deze manier dan doe je het zo:
  6.  
  7. $land = $obj->country;
  8.  
  9. countrycheck($land);
  10.  
  11. ?>


Offline Button - 05/08/2006 10:49 (laatste wijziging 05/08/2006 10:51)
Avatar van Button PHP ver gevorderde
  1. <?php
  2. function countrycheck($land){
  3. $countryarray=array("au"=>"Austria","be"=>"Belgium");// als je alle landen wilt gebruik dan deze array -> http://www.sitemasters.be/?pagina=scripts/scripts&cat=20&id=1093
  4. while (list ($key, $value) = each ($land)) {
  5.  
  6. if($key == $land)
  7. {
  8. $country=$value;
  9. return $country;
  10. break;
  11. }
  12.  
  13. }
  14. }


en gebruik:
  1. <?php $country=countrycheck($obj->country);//nog geëdit! ?>
Offline skillat2 - 05/08/2006 10:58 (laatste wijziging 05/08/2006 12:35)
Avatar van skillat2 HTML beginner bedankt begin nu wat meer van functies te begrijpen

edit: werkt niet ButtonMan

De pagina word wel weergegeven + dit plaatje maar alt= werkt niet:

  1. <?php
  2. <img class="flag" src="images/flags/'.$obj->country.'.gif" width="16" alt="'.$country.'" title="'.$country.'"">
  3. ';
  4. ?>
Offline Rik - 05/08/2006 12:35 (laatste wijziging 05/08/2006 12:35)
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
Logisch er staat nergens een echo bij... 
  1. <?php $country=countrycheck($obj->country);//nog geëdit! ?>

=>
  1. <?php
  2. $country=countrycheck($obj->country);//nog geëdit!
  3. echo $country;
  4. ?>

Offline GTW - 05/08/2006 12:36
Avatar van GTW Gouden medaille

PHP gevorderde
dat moet dan denk ik ook $obj->country worden ipv $country
Offline skillat2 - 05/08/2006 12:36 (laatste wijziging 05/08/2006 12:39)
Avatar van skillat2 HTML beginner Mijn pagina:

  1. <?php
  2. include('functions.php');
  3.  
  4. # hier staan nog sql commands
  5. # maar dat werkt gewoon want $obj->country word gewoon afgedrukt
  6.  
  7. $country=countrycheck($obj->country);//nog geëdit!
  8.  
  9. <img class="flag" src="images/flags/'.$obj->country.'.gif" width="16" alt="'.$country.'" title="'.$country.'"">
  10. ';
  11. ?>
Offline Rik - 05/08/2006 12:37 (laatste wijziging 05/08/2006 12:39)
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
@GTW
$obj->country is toch 'au' en $country is toch 'Austria'?
Offline skillat2 - 05/08/2006 12:38
Avatar van skillat2 HTML beginner Nee $country is leeg, maar zou wel 'Austia' moeten zijn.
Offline Rik - 05/08/2006 12:41 (laatste wijziging 05/08/2006 12:42)
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
Er zit een klein foutje in de functie van ButtonMan, dit moet werken:
  1. <?php
  2. function countrycheck($land){
  3. $countryarray=array("au"=>"Austria","be"=>"Belgium");// als je alle landen wilt gebruik dan deze array -> http://www.sitemasters.be/?pagina=scripts/scripts&cat=20&id=1093
  4. while (list ($key, $value) = each ($countryarray)) {
  5.  
  6. if($key == $land)
  7. {
  8. $country=$value;
  9. return $country;
  10. break;
  11. }
  12.  
  13. }
  14. }
  15. ?>
each ($land) moest zijn each ($countryarray)

Edit:
Bij mij gaf ie ook deze fout:
Warning: Variable passed to each() is not an array or object
Offline skillat2 - 05/08/2006 12:43 (laatste wijziging 05/08/2006 12:44)
Avatar van skillat2 HTML beginner Boukefalos het werkt ! je bent een held haha

[opgelost] :>

edit: bij mij gaf ie geen fout..
Offline Maarten - 05/08/2006 12:46
Avatar van Maarten Erelid Waarom moet dat met een each()?
  1. <?php
  2. function countrycheck($land){
  3. $aCountries = array('au' => 'Austria',
  4. 'be' => 'Belgium');
  5.  
  6. return (isset($aCountries[$land]) ? $aCountries[$land] : false);
  7. }
  8. ?>
echo countrycheck('be'); geeft dan 'Belgium'.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.289s