Andere Lösung für switch mit Case Hilfe gesucht
Hallo,
Danke für alle antwortenden!!!
Ich möchte gern wissen, ob es für nachfolgendes Stück Code eine einfachere Variante gibt???
Da ich erst einsteiger bin fällt mir keine bessere Variante ein.
Ich möchte gern 4 Checkboxen zur Auswahl anbieten und je nachdem welche angeklickt werden verschiedene Aktionen machen. Es ist für mich nur wichtig ob man diese Geschichte auch kürzer realisieren kann, da ich das ganze auch noch mit 10 Checkboxen machen will und dann die ganze Geschichte 2 hoch 10 Case varianten hat.
Hier nun der Code:
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<form action="checkbox2.php">
<input type="hidden" name="sent" value="yes">
<table width="750" border="0" align="center">
<tr>
<td colspan="9">
<div align="center">Auswahltabelle</div>
</td>
</tr>
<tr>
<td>
<input type="checkbox" name="ausstattung[]" value="1">
</td>
<td>Auswahl1</td>
<td>
<input type="checkbox" name="ausstattung[]" value="2">
</td>
<td>Auswahl2</td>
<td>
<input type="checkbox" name="ausstattung[]" value="4">
</td>
<td>Auswahl3</td>
<td>
<input type="checkbox" name="ausstattung[]" value="8">
</td>
<td>Auswahl4</td>
<td>
<input type="submit">
</td>
</tr>
</table>
</form>
<?php
$sent = $_GET['sent']; //Weichensteller
$auto = $_GET['auto']; //Autoname
$ausstattung = $_GET['ausstattung']; //Inhalt der Checkboxen
if ($sent == 'yes') {
$ausstattung_text = implode('_',$ausstattung);
$anzahl_gewaehlt = count($ausstattung);
for($i=0; $i < $anzahl_gewaehlt; $i++) {
$schreiben = $schreiben+$ausstattung[$i];
}
echo '<p>gezaehlt:<br><br>'.$anzahl_gewaehlt.'</p>';
echo '<p>addiert:<br><br>'.$schreiben.'</p>';
}
switch ($schreiben) {
case 0:
echo "\$schreiben ist gleich 0";
break;
case 1:
echo "\$schreiben ist gleich 1";
break;
case 2:
echo "\$schreiben ist gleich 2";
break;
case 3:
echo "\$schreiben ist gleich 3";
break;
case 4:
echo "\$schreiben ist gleich 4";
break;
case 5:
echo "\$schreiben ist gleich 5";
break;
case 6:
echo "\$schreiben ist gleich 6";
break;
case 7:
echo "\$schreiben ist gleich 7";
break;
case 8:
echo "\$schreiben ist gleich 8";
break;
case 9:
echo "\$schreiben ist gleich 9";
break;
case 10:
echo "\$schreiben ist gleich 10";
break;
case 11:
echo "\$schreiben ist gleich 11";
break;
case 12:
echo "\$schreiben ist gleich 12";
break;
case 13:
echo "\$schreiben ist gleich 13";
break;
case 14:
echo "\$schreiben ist gleich 14";
break;
case 14:
echo "\$schreiben ist gleich 15";
break;
}
?>
</body>
</html>
Hallo,
Danke für alle antwortenden!!!
Ich möchte gern wissen, ob es für nachfolgendes Stück Code eine einfachere Variante gibt???
Da ich erst einsteiger bin fällt mir keine bessere Variante ein.
Ich möchte gern 4 Checkboxen zur Auswahl anbieten und je nachdem welche angeklickt werden verschiedene Aktionen machen. Es ist für mich nur wichtig ob man diese Geschichte auch kürzer realisieren kann, da ich das ganze auch noch mit 10 Checkboxen machen will und dann die ganze Geschichte 2 hoch 10 Case varianten hat.
Hier nun der Code:
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<form action="checkbox2.php">
<input type="hidden" name="sent" value="yes">
<table width="750" border="0" align="center">
<tr>
<td colspan="9">
<div align="center">Auswahltabelle</div>
</td>
</tr>
<tr>
<td>
<input type="checkbox" name="ausstattung[]" value="1">
</td>
<td>Auswahl1</td>
<td>
<input type="checkbox" name="ausstattung[]" value="2">
</td>
<td>Auswahl2</td>
<td>
<input type="checkbox" name="ausstattung[]" value="4">
</td>
<td>Auswahl3</td>
<td>
<input type="checkbox" name="ausstattung[]" value="8">
</td>
<td>Auswahl4</td>
<td>
<input type="submit">
</td>
</tr>
</table>
</form>
<?php
$sent = $_GET['sent']; //Weichensteller
$auto = $_GET['auto']; //Autoname
$ausstattung = $_GET['ausstattung']; //Inhalt der Checkboxen
if ($sent == 'yes') {
$ausstattung_text = implode('_',$ausstattung);
$anzahl_gewaehlt = count($ausstattung);
for($i=0; $i < $anzahl_gewaehlt; $i++) {
$schreiben = $schreiben+$ausstattung[$i];
}
echo '<p>gezaehlt:<br><br>'.$anzahl_gewaehlt.'</p>';
echo '<p>addiert:<br><br>'.$schreiben.'</p>';
}
switch ($schreiben) {
case 0:
echo "\$schreiben ist gleich 0";
break;
case 1:
echo "\$schreiben ist gleich 1";
break;
case 2:
echo "\$schreiben ist gleich 2";
break;
case 3:
echo "\$schreiben ist gleich 3";
break;
case 4:
echo "\$schreiben ist gleich 4";
break;
case 5:
echo "\$schreiben ist gleich 5";
break;
case 6:
echo "\$schreiben ist gleich 6";
break;
case 7:
echo "\$schreiben ist gleich 7";
break;
case 8:
echo "\$schreiben ist gleich 8";
break;
case 9:
echo "\$schreiben ist gleich 9";
break;
case 10:
echo "\$schreiben ist gleich 10";
break;
case 11:
echo "\$schreiben ist gleich 11";
break;
case 12:
echo "\$schreiben ist gleich 12";
break;
case 13:
echo "\$schreiben ist gleich 13";
break;
case 14:
echo "\$schreiben ist gleich 14";
break;
case 14:
echo "\$schreiben ist gleich 15";
break;
}
?>
</body>
</html>
Kommentar