php arrays

Status
Niet open voor verdere reacties.

pum

Gebruiker
Lid geworden
18 dec 2009
Berichten
193
ik heb het volgende probleempje waar ik tegenaan loop. Ik ben bezig om een soort van simpele routeplanner te maken maar kom er even niet meer uit.

mijn bedoeling: je hebt 6 vertrekpunten, en je hebt 20 aankomstpunten.

Nu is de bedoeling dat wanneer ik bijv: Hoofdingang naar B doe er een afbeelding gekoppeld word aan die route. Idem met bijvoorbeeld Nachtingang naar C en dan bijbehorende afbeelding. weet iemand hoe ik dit simpel kan maken? dit is wat ik heb, maar dit kan ongetwijfeld simpeler.
PHP:
<?php

class controller{

   function check($loc_a, $loc_b){
      if(isset($_POST['route'])){
         $this->get_map($loc_a, $loc_b);
      }else{
         echo "niet geklikt";
      }
   }
   
   function get_map($loc_a, $loc_b){
      // arrays
      $ingang = array('Hoofdingang', 'Dialyse', 'Spoedeisendehulp', 'Nachtingang', 'Dokterswacht', 'PoliOCL');
      $afd = array('A', 'B', 'C', 'D', 'E', 'F', 'G', 'J', 'K', 'L', 'M', 'O', 'P', 'R', 'S', 'T', 'U', 'X', 'Y', 'Z');
      
      if($loc_a == $ingang[0] && $loc_b == $afd[0]){
         echo "van " . $loc_a . "naar " . $loc_b;
      }
      else if($loc_a == $ingang[0] && $loc_b == $afd[1]){
         echo "van " . $loc_a . "naar " . $loc_b;
      }
   }
}

$control = new controller();
$control->check($_POST["vertrek"], $_POST["aankomst"]);

?>
 
Laatst bewerkt door een moderator:
Je zou voor elke combinatie een plaatje moeten hebben. Dat wordt dan aangeroepen door het script. Dit is natuurlijk een beetje omslachtig dus je zou een plaatje kunnen laten genereren. Dit kost alleen wel erg veel geheugen en als je toch maar een vast aantal routes heb zou ik dus voor de eerste optie kiezen.
 
Als je het on the fly wil laten genereren dan ben je nog wel even bezig... dan heb je een pathing algoritme nodig wat de tekening kan lezen, of je moet een plattegrond van het gebouw omzetten is een soort van data structuur.

Denk dat alle mogelijke plaatjes tekenen minder werk is in dit geval...
 
Hangt een beetje van de interpretatie van het openingsbericht af. Zoals ik het lees is het ook de bedoeling om 120 plaatjes toe te voegen en is de topicstarter op zoek naar een manier om te voorkomen dat hij 121 if/else constructies moet maken (regels 18 tot 23).

Als dit inderdaad zo is: je hebt alle mogelijkheden al in arrays staan, dus die arrays kun je mooi gebruiken om te controleren of de invoer van de gebruiker juist is. Wat je verder doet om de afbeelding weer te geven hangt af van de bestandsnamen van de 120 plaatjes. Als de bestandsnamen overeenkomen met de vertrek/aankomst data, kun je simpelweg een locatie opgeven. Een voorbeeld:

PHP:
	if (in_array($_POST['vertrek'],$ingang) && in_array($_POST['aankomst'],$afd)) {
	echo "<img src='".$_POST['vertrek']."_".$_POST['aankomst'].".jpg' alt='route van ".$_POST['vertrek']." naar ".$_POST['aankomst']."' />";
}
 
idd dit is een slimme oplossing ik ga hem z.s.m proberen
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan