PHP variabele x aantal afdrukken

Status
Niet open voor verdere reacties.

Jeroentjhuh

Gebruiker
Lid geworden
4 mei 2010
Berichten
23
Hallo,

Doel:
Gebruiker een toren van "*" laten maken.

PHP:
<?php
if (isset($_POST['verzenden'])) {

		$hoog = $_POST['hoog'];
		$breed = $_POST['breed'];
		
		if ($hoog == 4){
			echo $breed;
			echo '<br />';
			echo $breed; 
			echo '<br />';
			echo $breed; 
			echo '<br />';
			echo $breed; }
				
		if ($hoog == 3){
			echo $breed;
			echo '<br />';
			echo $breed; 
			echo '<br />';
			echo $breed; }
			
		if ($hoog == 2){
			echo $breed;
			echo '<br />';
			echo $breed; }
			
		if ($hoog == 1) {
			echo $breed;
			}
}
?>

Dit is de berekening. Wat ik zelf heel omslachtig vind. Stel je hebt 100 opties zou je
100 keer moeten echo'en.
Dit stuk moet volgens mij met een simpele code kunnen. Dat de variabele $breed zo vaak wordt afgedrukt als in hoog is opgegeven.
HTML:
<html>
<body>
<form method="post" action="opdracht3.php"> 
Geef aan hoe hoog de toren moet worden: <br />
<select name="hoog">
  <option value=1>1</option>
  <option value=2>2</option>
  <option value=3>3</option>
  <option value=4>4</option>
</select><br /><br />
Geef aan hoe breed de toren moet worden: <br />
<select name="breed">
  <option value="*">1</option>
  <option value="**">2</option>
  <option value="***">3</option>
  <option value="****">4</option>
</select>
<br />
<input name="verzenden" type=submit value="Maak" class="button"></td>
</form>
</body>
</html>
 
Huiswerk?

Het kan inderdaad makkelijker. Met een for-lus kan je een stuk code een bepaald aantal keer herhalen. Je zou zelf gebruik kunnen maken van een geneste for-lus (een for-lus binnen een for-lus), dan kan je met een stuk code een toren van elke willekeurige hoogte en breedte laten afdrukken.
 
Ik zou het zo aangepakt hebben:

PHP:
<?php
$hoeveelKeer = 5;
$hoeBreed = 5;
$sterrentjes = "";
for ($i = 0; $i < $hoeBreed; $i++) $sterrentjes .= "*";
for ($a = 1; $a <= $hoeveelKeer; $a++) echo $sterrentjes . "<br>";
?>

Resulteert in:

T7jMU.png


Succes ermee ;)
 
Zo zou ik het ook gedaan hebben, maar ik vind dit heel erg lijken op een schoolopdracht. Daarom wilde ik niet de volledige code posten.
 
Haha CaptainBri is nog al snel met posten en goed gelovig ;)

hi zou de tweede keer zijn van de week dat zijn goedheid misbruik gaat worden....... ;)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan