Hallo liebe Community,
ich bin gerade dabei mir etwas PHP beizubringen und stehe vor einem Problem welches ich nicht lösen kann.
Hier einmal mein Code:
Der Code an sich läuft, Auswahl wird getroffen und value wird übergeben, switch case erhält diese und geht in den entsprechenden Case.
Soweit so gut, da ich vorhabe in Zukunft mehr Items zu erstellen wollte ich den Inhalt in eine Funktion auslagern. (siehe "testComp()").
Die Funktion sollte eigentlich anhand der übergebenen / erhaltenen Value erkennen Welches Item ausgewählt ist und dann die Ausgabe anpassen.
Beispiel: Ich füge das Item Löffel hinzu: Nun sollte die Funktion erkennen -> okay es wurde Löffel ausgewählt nun passe ich die Ausgabe an.
Ich habe mich schon an einigen Sachen probiert, Foren durchwühlt, aber leider kein Erfolg verbuchen können.
Ich bin für jeden Ratschlag, Idee oder anderes offen.
Bereits vielen Dank!
ich bin gerade dabei mir etwas PHP beizubringen und stehe vor einem Problem welches ich nicht lösen kann.
Hier einmal mein Code:
PHP:
<?php
// Hier erhalte ich meine Daten von der Datenbank
$testItems = $db->getAllItems();
// $loeffel = $db->getLoeffelItems();
// Kleine Auswahl welche die Value übergibt
echo "<h1>".'Choose betweeen different items'."</h1>";
echo "<form action='index.php?section=home'method='post'>";
echo "<label>".'Components: ';
echo "<select name='component'>";
echo "<option selected value='default'>".'Please select'."</option>";
echo "<optgroup label='Test-Components'>";
echo "<option value='test_item'>" . 'TEST ITEM' ."</option>";
echo "</optgroup>";
echo "</select>";
echo "</label>";
echo "<input type='submit' name='' value='Show'>";
echo "</form>";
// hier ist das eigentliche Problem
function testComp(&$testItems) {
$Inhalt = $_POST["component"];
if($Inhalt == $testItems) // Hier komme ich nicht weiter. Ich weiß nicht wie ich diesen Vergleich anstoßen kann.
foreach($$Inhalt as $singlee) {
echo "<div'>";
echo "<article>";
echo "<h1>". $singlee['titel']. "</h1>";
echo "<p>". $singlee['beschreibung']. "</p>";
echo "</article>";
echo "</div>";
echo $singlee;
}
}
// Erhält die Value und wertet aus
switch ($_POST['component']) {
case "test_item":
echo "<h1>".'Test Item:'."</h1>";
foreach($testItems as $testItem) {
echo "<div>";
echo "<article>";
echo "<h1>". $testItem['titel']. "</h1>";
echo "<p>". $testItem['beschreibung']. "</p>";
echo "</article>";
echo "</div>";
}
break;
case "default":
echo "<p>".'Please select something!'."</p>";
break;
}
?>
Der Code an sich läuft, Auswahl wird getroffen und value wird übergeben, switch case erhält diese und geht in den entsprechenden Case.
Soweit so gut, da ich vorhabe in Zukunft mehr Items zu erstellen wollte ich den Inhalt in eine Funktion auslagern. (siehe "testComp()").
Die Funktion sollte eigentlich anhand der übergebenen / erhaltenen Value erkennen Welches Item ausgewählt ist und dann die Ausgabe anpassen.
Beispiel: Ich füge das Item Löffel hinzu: Nun sollte die Funktion erkennen -> okay es wurde Löffel ausgewählt nun passe ich die Ausgabe an.
Ich habe mich schon an einigen Sachen probiert, Foren durchwühlt, aber leider kein Erfolg verbuchen können.
Ich bin für jeden Ratschlag, Idee oder anderes offen.
Bereits vielen Dank!