Hi,
ja, dies hast du mir ja oben geschrieben.
Nur die sache ist ich habe mit return noch fast nichts gemacht und ich bin grad dabei den Umgang zu üben aber ich weiß wirklick nicht wie ich es setzen soll. Wie würdest du das return dabei setzen ?
Hi,
ja, dies hast du mir ja oben geschrieben.
Nur die sache ist ich habe mit return noch fast nichts gemacht und ich bin grad dabei den Umgang zu üben aber ich weiß wirklick nicht wie ich es setzen soll. Wie würdest du das return dabei setzen ?
Hey,
ok. Schade das es nicht so viele gibt. Dann halte ich mal Ausschau.
BTW: zu dem & vor den parametern.
Habe dann noch ne funktion erstellt wo jedes kleine Wort groß gemacht wird und jedes große klein gemacht wird,
aber dies funktioniert auch nur mit & vor der var array. Warum denn
das?
<?php
function upper(&$array, $strlower = false)
{
for($e = 0; $e < sizeof($array); $e++ )
{
if($array[$e] <> 200 && !$strlower)
{
$new_string = strtoupper($array[$e]);
$array[$e] = $new_string;
}
if($array[$e] <> 200 && $strlower)
{
$new_string = strtolower($array[$e]);
$array[$e] = $new_string;
}
}
}
$texte = array("huhu" ,"zahnarzt" ,"huhu");
$texte1 = array ("HUHU","ZUZU","HUHUHUHUHUHU");
upper($texte);
foreach ($texte as $key )
{
print "<br> - ". $key;
}
upper($texte1, true);
foreach ($texte1 as $key )
{
print "<br> - ". $key;
}
?>
Alles anzeigen
Diese funktionen könnte man jetzt sozusagen überall anwenden ? Man brauch dann nur noch funktionsname mit variable schreiben wo die funktion erfolgen soll ?
Gruß,
Stef
Hey,
erstmals wirklich ein großes Dankeschön. Habe jetzt einiges mehr verstanden. Nehme mir aber noch ein paar Tage um alles zu testen. Habe mich dabei dann gleich versucht. Habe so ne Funktion zum sortieren nachgebaut.
Wenn ich das & vor der $arr weg lasse wird nix sortiert.
<?php
function array_sort(&$arr, $test = false) //starten der function array_sort
{
for($i = 0; $i < sizeof($arr); $i++) //zählt die Anzahl der Elemente
{
for($o = $i + 1; $o <sizeof($arr); $o++) //zählt die Anzahl der Elemente ab dem 2ten Element
// Mit diesen 2 for schleifen die Elemete der Arrays vergleichen und im if teil falls elemente größer oder kleiner sind richtig sortieren
{
if(!$test && $arr[$i] < $arr[$o] || $test && $arr[$i] > $arr[$o]) // sortiere nach Größe (groß/klein)
{
$sortiert = $arr[$i]; // var sortiert erhält wert von $arr[$i]
$arr[$i] = $arr[$o]; // $arr[$i] erhält wert von $arr[$o]
$arr[$o] = $sortiert; // $arr[$o] erhält wert von $sortiert
}
}
}
}
$zahlen = array(1,6,3,2,4,9,8,20,28,15,13);
$text = array("Hund","Katze","Algorhythmus","Fisch");
array_sort($zahlen);
foreach ($zahlen as $key ) //array $zahlen durchlaufen und als $key ausgeben
{
print $key . " - ";
}
echo "<br>";
array_sort($zahlen, true);
foreach ($zahlen as $key ) {
print $key . " - ";
}
echo "<br>";
array_sort($text);
foreach ($text as $key) //array $text durchlaufen und als $key ausgeben
{
print $key . " - ";
}
echo "<br>";
array_sort($text, true);
foreach ($text as $key) {
print $key . " - ";
}
?>
Alles anzeigen
Kennst du paar Seiten wo die Algorythmen in PHP ausführlich/leicht zu verstehen erklären ? Bin grad auf der suche aber finde fast nix.
stef
Ja ok.
Aber falls ich es so beibehalten würde, würden in der Zukunft Fehler auftreten. Und um dies zu verhindern, mach ich es jetzt so wie du es geschrieben hast, steht ja auch so in vielen tuts drin.
function sort_array(&$array, $desc = false)
{
for($i = 0; $i < sizeof($array); $i++)
{
for($j = $i + 1; $j < sizeof($array); $j++)
{
if
(
!$desc && $array[$i] > $array[$j] ||
$desc && $array[$i] < $array[$j]
)
{
$tmp = $array[$i];
$array[$i] = $array[$j];
$array[$j] = $tmp;
}
}
}
}
Alles anzeigen
Meine Fragen:
1. Warum steht vor $array ein & ?
2. Was hat $desc = false für ein Nutzen?
3. Warum hast du in einer for schleife noch eine for schleife ?
4. Mit $i/$j < sizeof($array) tust du ja alle daten im array sammeln ?
5. Bei der 2. for-schleife beim if-statement:
for($j = $i + 1; $j < sizeof($array); $j++)
{
if //wenn
(
!$desc && $array[$i] > $array[$j] || // $desc nicht vorhanden ist und $array[$i] größer als $array[$j] oder
$desc && $array[$i] < $array[$j] // $desc vorhanden ist und $array[$i] kleiner als $array[$j]
)
{
$tmp = $array[$i]; // $tmp ist $array [$i]
$array[$i] = $array[$j]; // hier wird ja dann der wert von $array [$i], $array [$j] zugeordnet
$array[$j] = $tmp; // und dann hier der gesamte wert aus $array [$i] und $array [$j] wieder dem tmp
}
}
Alles anzeigen
ist diese Beschreibung richtig so ?
6. Hast du 2 Arrays gemacht für klein zu groß und groß zu klein ?
Hey,
danke für den Hinweis. Habe ich garnicht gedacht das es so unterschiedlich ist, die ausgabe mit var dump.
Stef
Ok. Und dann mittels include ins html-dokument einbinden.
Ja ich mein den Sortierablauf. Dieser wirft paar fragen auf.
Danke
Hey,
danke für die 3 unterschiedlichen Veranschaulichungen. Man sieht direkt das funtcionen besser sind.
1. Weniger script.
2. übersichtlicher
3. Mann kann eine für mehrere Sachen nutzen
Könntest du mir bitte deine geschrieben function erklären ? Wäre echt gut.
Gruß,
Stef
Hey vielen Dank habe nun mein script angepasst, auch die arrayausgabe und es funktioniert alles
Hier nochmals das volle Script:
<?php
if(isset($_POST['abgesendet'])){
$ltw1 = "Rotkäppchen";
$ltw2 = "Mutter";
$ltw3 = "Weg";
$ltw4 = "Wolf";
$ltw5 = "Blumenstrauß";
$ltw6 = "Großmutter";
$ltw7 = "Großmutters";
$ltw8 = "Gestalt";
$ltw9 = "Jäger";
$ltw10 = "Steine";
if(isset($_POST['rotkaepchen'])){
$wort1 = $_POST['rotkaepchen'];
} else{
$wort1 = null;
}
if(isset($_POST['mutter'])){
$wort2 = $_POST['mutter'];
} else{
$wort2 = null;
}
if(isset($_POST['weg'])){
$wort3 = $_POST['weg'] ;
} else{
$wort3 = null;
}
if(isset($_POST['wolf'])){
$wort4 = $_POST['wolf'];
} else{
$wort4 = null;
}
if(isset($_POST['blumenstrauß'])){
$wort5 = $_POST['blumenstrauß'];
} else{
$wort5 = null;
}
if(isset($_POST['großmutter'])){
$wort6 = $_POST['großmutter'];
} else{
$wort6 = null;
}
if(isset($_POST['großmutters'])){
$wort7 = $_POST['großmutters'];
} else{
$wort7 = null;
}
if(isset($_POST['gestalt'])){
$wort8 = $_POST['gestalt'];
} else{
$wort8 = null;
}
if(isset($_POST['jaeger'])){
$wort9 = $_POST['jaeger'];
} else{
$wort9 = null;
}
if(isset($_POST['steine'])){
$wort10 = $_POST['steine'];
} else{
$wort10 = null;
}
if ($_POST['rotkaepchen'] === $ltw1 and
$_POST['mutter'] === $ltw2 and
$_POST['weg'] === $ltw3 and
$_POST['wolf'] === $ltw4 and
$_POST['blumenstrauß'] === $ltw5 and
$_POST['großmutter'] === $ltw6 and
$_POST['großmutters'] === $ltw7 and
$_POST['gestalt'] === $ltw8 and
$_POST['jaeger'] === $ltw9 and
$_POST['steine'] === $ltw10
) {
$ausgabe1 = "Sie haben den Lückentext richtig ausgefühlt, ohne Fehler.";
} else{
$ausgabe1 = null;
}
if ($_POST['rotkaepchen'] ==! $ltw1 ) {
$ausgabe2 = "Fehler im 1 Kasten";
} else{
$ausgabe2 = null;
}
if ($_POST['mutter'] ==! $ltw2) {
$ausgabe3 = "<br>Fehler im 2 Kasten";
} else{
$ausgabe3 = null;
}
if ($_POST['weg'] ==! $ltw3 ) {
$ausgabe4 = "<br>Fehler im 3 Kasten";
} else{
$ausgabe4 = null;
}
if ($_POST['wolf'] ==! $ltw4 ) {
$ausgabe5 = "<br>Fehler im 4 Kasten";
} else{
$ausgabe5 = null;
}
if ($_POST['blumenstrauß'] ==! $ltw5 ) {
$ausgabe6 = "<br>Fehler im 5 Kasten";
}else{
$ausgabe6 = null;
}
if ($_POST['großmutter'] ==! $ltw6 ) {
$ausgabe7 = "<br>Fehler im 6 Kasten";
}else{
$ausgabe7 = null;
}
if ($_POST['großmutters'] ==! $ltw7) {
$ausgabe8 = "<br>Fehler im 7 Kasten";
}else{
$ausgabe8 = null;
}
if ($_POST['gestalt'] ==! $ltw8 ){
$ausgabe9 = "<br>Fehler im 8 Kasten";
} else{
$ausgabe9 = null;
}
if ($_POST['jaeger'] ==! $ltw9) {
$ausgabe10 = "<br>Fehler im 9 Kasten";
}else{
$ausgabe10 = null;
}
if ($_POST['steine'] ==! $ltw10) {
$ausgabe11 = "<br>Fehler im 10 Kasten";
}else{
$ausgabe11 = null;
}
$arr = array ($ausgabe1,$ausgabe2,$ausgabe3,$ausgabe4,$ausgabe5,$ausgabe6,$ausgabe7,$ausgabe8,$ausgabe9,$ausgabe10,$ausgabe11);
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Lückentext</title>
<style type="text/css">
* {
margin: 0px;
padding: 0px;
font-family: Verdana,sans-serif;
}
h1{
margin-bottom: 10px;
}
main{
width: 1000px;
margin: 40px auto;
background-color: rgba(73, 149, 156, 0.78);
padding: 20px;
border: 2px solid black;
border-radius: 30px;
box-shadow: 2px 2px 4px black;
}
p{
line-height: 30px;
}
p.woerter{
margin-top: 15px;
border: 1px solid black;
padding: 2.5px;
background-color: yellow;
}
input[type="text"]{
padding: 2.5px;
}
input[type="submit"]{
padding: 20px;
margin-top: 15px;
transition: 1s;
border: none;
}
div#phpausgabe{
margin-top: 10px;
color: red;
}
input[type="submit"]:hover
{
background-color: gold;
cursor: pointer;
box-shadow: 0px 2px 5px black;
}
</style>
</head>
<body>
<main>
<h1>Lückentext</h1>
<form method="post">
<p>Ein kleines Mädchen, <input type="text" name="rotkaepchen" <?php if(isset($wort1)) print ($wort1 == $ltw1) ? 'value="'. $wort1 .'"' : ""; ?>>, dem seine Großmutter einst eine rote Kappe geschenkt hat, wird von der <input type="text" name="mutter" <?php if(isset($wort2)) print ($wort2 == $ltw2) ? 'value="'. $wort2 .'"' : ""; ?> > geschickt, der in einem Haus im Wald wohnenden, bettlägerig kranken Großmutter einen Korb mit Leckereien (Kuchen und Wein) zu bringen. Die Mutter warnt Rotkäppchen eindringlich, es solle nicht vom <input type="text" name="weg" <?php if(isset($wort3)) print ($wort3 == $ltw3) ? 'value="'. $wort3 .'"' : ""; ?>> abgehen. Im Wald lässt es sich auf ein Gespräch mit einem <input type="text" name="wolf" <?php if(isset($wort4)) print ($wort4 == $ltw4) ? 'value="'. $wort4 .'"' : ""; ?>> ein. Dieser horcht Rotkäppchen aus und macht es auf die schönen Blumen auf einer nahen Wiese aufmerksam, worauf Rotkäppchen beschließt, noch einen <input type="text" name="blumenstrauß"<?php if(isset($wort5)) print ($wort5 == $ltw5) ? 'value="'. $wort5 .'"' : ""; ?>> zu pflücken, der Warnung der Mutter zum Trotz. Der Wolf eilt geradewegs zur <input type="text" name="großmutter" <?php if(isset($wort6)) print ($wort6 == $ltw6) ? 'value="'. $wort6 .'"' : ""; ?>> und frisst sie. Er legt sich in deren Nachthemd in ihr Bett und wartet auf Rotkäppchen. Bald darauf erreicht Rotkäppchen das Haus, tritt ein, und begibt sich an <input type="text" name="großmutters" <?php if(isset($wort7)) print ($wort7 == $ltw7) ? 'value="'. $wort7 .'"' : ""; ?>> Bett. Dort wundert sich Rotkäppchen über die <input type="text" name="gestalt" <?php if(isset($wort8)) print ($wort8 == $ltw8) ? 'value="'. $wort8 .'"' : ""; ?>> ihrer Großmutter, erkennt aber nicht den Wolf, bevor es ebenfalls gefressen wird.Großmutter und Rotkäppchen werden aber von einem <input type="text" name="jaeger" <?php if(isset($wort9)) print ($wort9 == $ltw9) ? 'value="'. $wort9 .'"' : ""; ?>> aus dem Bauch des Wolfes befreit. Der Jäger füllt dem Wolf <input type="text" name="steine" <?php if(isset($wort10)) print ($wort10 == $ltw10) ? 'value="'. $wort10 .'"' : ""; ?>> in den Bauch. Wegen des Gewichts der Steine kann der Wolf nicht fliehen und stirbt.
</p>
<p class="woerter"> Fehlende Wörter : Rotkäppchen, Weg, Mutter, Blumenstrauß, Jäger, Großmutters, Gestalt, Wolf, Steine, Goßmutter</p>
<input type="submit" name="abgesendet" value="Lückentext absenden!">
</form>
<div id="phpausgabe">
<?php
if(isset($arr)){
foreach ($arr as $key ) {
echo $key;
}
}
?>
</div>
</main>
</body>
</html>
Alles anzeigen
Stef
Hey,
vielen Dank für die schnelle Antwort.
Es kommen jedoch Fehlermeldungen.
Hier ein Bild der Fehler : http://prntscr.com/c1gt8w
Und das geht mit jedem Feld, erst wenn ich die felder ausfülle dann gehen die fehlermeldungen weg.
Warum ist das so ? Habe doch jede Var definiert...
Und dann noch was. Ich habe jetzt ein array erstellt der alle ausgaben beinhaltet. nun möchte ich ihn aber erst im HTML-Teil ausgeben, und da kommt immer ein error und undefined variable arr, obwohl ich doch im php teil oberhalb des HTML-Teils $arr schon definiert habe.. Und wenn ich jetzt wie bei den anderen fehlermeldungen ein feld ausfülle dann gehen die fehler weg, und es werden die ausgaben ausgegebn.
Mein Script:
<?php
if(isset($_POST['abgesendet'])){
$ltw1 = "Rotkäppchen";
$ltw2 = "Mutter";
$ltw3 = "Weg";
$ltw4 = "Wolf";
$ltw5 = "Blumenstrauß";
$ltw6 = "Großmutter";
$ltw7 = "Großmutters";
$ltw8 = "Gestalt";
$ltw9 = "Jäger";
$ltw10 = "Steine";
if(isset($_POST['rotkaepchen'])){
$wort1 = $_POST['rotkaepchen'];
} else{
$wort1 = null;
}
if(isset($_POST['mutter'])){
$wort2 = $_POST['mutter'];
} else{
$wort2 = null;
}
if(isset($_POST['weg'])){
$wort3 = $_POST['weg'] ;
} else{
$wort3 = null;
}
if(isset($_POST['wolf'])){
$wort4 = $_POST['wolf'];
} else{
$wort4 = null;
}
if(isset($_POST['blumenstrauß'])){
$wort5 = $_POST['blumenstrauß'];
} else{
$wort5 = null;
}
if(isset($_POST['großmutter'])){
$wort6 = $_POST['großmutter'];
} else{
$wort6 = null;
}
if(isset($_POST['großmutters'])){
$wort7 = $_POST['großmutters'];
} else{
$wort7 = null;
}
if(isset($_POST['gestalt'])){
$wort8 = $_POST['gestalt'];
} else{
$wort8 = null;
}
if(isset($_POST['jaeger'])){
$wort9 = $_POST['jaeger'];
} else{
$wort9 = null;
}
if(isset($_POST['steine'])){
$wort10 = $_POST['steine'];
} else{
$wort10 = null;
}
if ($_POST['rotkaepchen'] === $ltw1 and
$_POST['mutter'] === $ltw2 and
$_POST['weg'] === $ltw3 and
$_POST['wolf'] === $ltw4 and
$_POST['blumenstrauß'] === $ltw5 and
$_POST['großmutter'] === $ltw6 and
$_POST['großmutters'] === $ltw7 and
$_POST['gestalt'] === $ltw8 and
$_POST['jaeger'] === $ltw9 and
$_POST['steine'] === $ltw10
) {
$ausgabe1 = "Sie haben den Lückentext richtig ausgefühlt, ohne Fehler.";
} else{
$ausgabe1 = null;
}
if ($_POST['rotkaepchen'] ==! $ltw1 ) {
$ausgabe2 = "Fehler im 1 Kasten";
} else{
$ausgabe2 = null;
}
if ($_POST['mutter'] ==! $ltw2) {
$ausgabe3 = "<br>Fehler im 2 Kasten";
} else{
$ausgabe3 = null;
}
if ($_POST['weg'] ==! $ltw3 ) {
$ausgabe4 = "<br>Fehler im 3 Kasten";
} else{
$ausgabe4 = null;
}
if ($_POST['wolf'] ==! $ltw4 ) {
$ausgabe5 = "<br>Fehler im 4 Kasten";
} else{
$ausgabe5 = null;
}
if ($_POST['blumenstrauß'] ==! $ltw5 ) {
$ausgabe6 = "<br>Fehler im 5 Kasten";
}else{
$ausgabe6 = null;
}
if ($_POST['großmutter'] ==! $ltw6 ) {
$ausgabe7 = "<br>Fehler im 6 Kasten";
}else{
$ausgabe7 = null;
}
if ($_POST['großmutters'] ==! $ltw7) {
$ausgabe8 = "<br>Fehler im 7 Kasten";
}else{
$ausgabe8 = null;
}
if ($_POST['gestalt'] ==! $ltw8 ){
$ausgabe9 = "<br>Fehler im 8 Kasten";
} else{
$ausgabe9 = null;
}
if ($_POST['jaeger'] ==! $ltw9) {
$ausgabe10 = "<br>Fehler im 9 Kasten";
}else{
$ausgabe10 = null;
}
if ($_POST['steine'] ==! $ltw10) {
$ausgabe11 = "<br>Fehler im 10 Kasten";
}else{
$ausgabe11 = null;
}
$arr = array ($ausgabe1,$ausgabe2,$ausgabe3,$ausgabe4,$ausgabe5,$ausgabe6,$ausgabe7,$ausgabe8,$ausgabe9,$ausgabe10,$ausgabe11);
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Lückentext</title>
<style type="text/css">
p{
line-height: 30px;
}
div#phpausgabe{
color: red;
}
</style>
</head>
<body>
<h1>Lückentext</h1>
<form method="post">
<p>Ein kleines Mädchen, <input type="text" name="rotkaepchen" <?php if ($wort1 === $ltw1){print 'value="'. $wort1 . '"';} ?>>, dem seine Großmutter einst eine rote Kappe geschenkt hat, wird von der <input type="text" name="mutter" <?php if ($wort2 === $ltw2){print 'value="'. $wort2 . '"';} ?> > geschickt, der in einem Haus im Wald wohnenden, bettlägerig kranken Großmutter einen Korb mit Leckereien (Kuchen und Wein) zu bringen. Die Mutter warnt Rotkäppchen eindringlich, es solle nicht vom <input type="text" name="weg" <?php if ($wort3 === $ltw3){print 'value="'. $wort3 . '"';} ?>> abgehen. Im Wald lässt es sich auf ein Gespräch mit einem <input type="text" name="wolf" <?php if ($wort4 === $ltw4){print 'value="'. $wort4 . '"';} ?>> ein. Dieser horcht Rotkäppchen aus und macht es auf die schönen Blumen auf einer nahen Wiese aufmerksam, worauf Rotkäppchen beschließt, noch einen <input type="text" name="blumenstrauß"<?php if ($wort5 === $ltw5){print 'value="'. $wort5 . '"';} ?>> zu pflücken, der Warnung der Mutter zum Trotz. Der Wolf eilt geradewegs zur <input type="text" name="großmutter" <?php if ($wort6 === $ltw6){print 'value="'. $wort6 . '"';} ?>> und frisst sie. Er legt sich in deren Nachthemd in ihr Bett und wartet auf Rotkäppchen. Bald darauf erreicht Rotkäppchen das Haus, tritt ein, und begibt sich an <input type="text" name="großmutters" <?php if ($wort7 === $ltw7){print 'value="'. $wort7 . '"';} ?>> Bett. Dort wundert sich Rotkäppchen über die <input type="text" name="gestalt" <?php if ($wort8 === $ltw8){print 'value="'. $wort8 . '"';} ?>> ihrer Großmutter, erkennt aber nicht den Wolf, bevor es ebenfalls gefressen wird.Großmutter und Rotkäppchen werden aber von einem <input type="text" name="jaeger" <?php if ($wort9 === $ltw9){print 'value="'. $wort9 . '"';} ?>> aus dem Bauch des Wolfes befreit. Der Jäger füllt dem Wolf <input type="text" name="steine" <?php if ($wort10 === $ltw10){print 'value="'. $wort10 . '"';} ?>> in den Bauch. Wegen des Gewichts der Steine kann der Wolf nicht fliehen und stirbt.
</p>
<p> Fehlende Wörter : Rotkäppchen, Weg, Mutter, Blumenstrauß, Jäger, Großmutters, Gestalt, Wolf, Steine, Goßmutter</p>
<input type="submit" name="abgesendet" value="Lückentext absenden!">
</form>
<div id="phpausgabe">
<?php
foreach ($arr as $key ) {
echo $key;
}
?>
</div>
</body>
</html>
Alles anzeigen
Gruß,
Stef
Hey,
unzwar ich habe mal ein Lückentext erstellt. Und ich möchte das wenn ein fehler drin ist die ganzen eingegebenen Wörter bleiben und die felder die falsch waren rot markiert werden.
Nun aber wenn ich mein Lückentext dann absende dann gehen alle Wörter verloren und dann wird ausgegeben: Sie haben ein Fehler gemacht....... Ich könnte theoretisch jetzt jedes feld abfragen ob das eingegeben Feld richtig oder falsch ist. Aber trotzdem gehen die Wörter verloren und wie bekommt man denn dann den roten rahmen im php dann um die fehlerhaften Felder ? Und wie bekommt man es dann hin die eingegeben wörter dann unten bei Fehlende wörter durchzu streichen also z.b. ich gebe jetzt Rotkäppchen ein und dann wird bei Fehlende Wörer Rotläppchen durchgestrichen : Rotkäpchen.
Mein Script:
<?php
if(isset($_POST['abgesendet'])){
$ltw1 = "Rotkäppchen";
$ltw2 = "Mutter";
$ltw3 = "Weg";
$ltw4 = "Wolf";
$ltw5 = "Blumenstrauß";
$ltw6 = "Großmutter";
$ltw7 = "Großmutters";
$ltw8 = "Gestalt";
$ltw9 = "Jäger";
$ltw10 = "Steine";
if(isset($_POST['rotkaepchen'])){
$wort1 = $_POST['rotkaepchen'];
} else{
$wort1 = null;
}
if(isset($_POST['mutter'])){
$wort2 = $_POST['mutter'];
} else{
$wort2 = null;
}
if(isset($_POST['weg'])){
$wort3 = $_POST['weg'] ;
} else{
$wort3 = null;
}
if(isset($_POST['wolf'])){
$wort4 = $_POST['wolf'];
} else{
$wort4 = null;
}
if(isset($_POST['blumenstrauß'])){
$wort5 = $_POST['blumenstrauß'];
} else{
$wort5 = null;
}
if(isset($_POST['großmutter'])){
$wort6 = $_POST['großmutter'];
} else{
$wort6 = null;
}
if(isset($_POST['großmutters'])){
$wort7 = $_POST['großmutters'];
} else{
$wort7 = null;
}
if(isset($_POST['gestalt'])){
$wort8 = $_POST['gestalt'];
} else{
$wort8 = null;
}
if(isset($_POST['jaeger'])){
$wort9 = $_POST['jaeger'];
} else{
$wort9 = null;
}
if(isset($_POST['steine'])){
$wort10 = $_POST['steine'];
} else{
$wort10 = null;
}
if( $_POST['rotkaepchen'] === $ltw1 and
$_POST['mutter'] === $ltw2 and
$_POST['weg'] === $ltw3 and
$_POST['wolf'] === $ltw4 and
$_POST['blumenstrauß'] === $ltw5 and
$_POST['großmutter'] === $ltw6 and
$_POST['großmutters'] === $ltw7 and
$_POST['gestalt'] === $ltw8 and
$_POST['jaeger'] === $ltw9 and
$_POST['steine'] === $ltw10
){
$ausgabe = "Sie haben den Lückentext richtig ausgefühlt, ohne Fehler.";
} else {
$fehler = "Es sind noch ein paar Fehler im Lückentext drin, bitte beseitigen sie diese. <br><a href='#'>Hier ist die Lösung</a>";
}
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Lückentext</title>
<style type="text/css">
p{
line-height: 30px;
}
</style>
</head>
<body>
<h1>Lückentext</h1>
<form method="post">
<p>Ein kleines Mädchen, <input type="text" name="rotkaepchen">, dem seine Großmutter einst eine rote Kappe geschenkt hat, wird von der <input type="text" name="mutter"> geschickt, der in einem Haus im Wald wohnenden, bettlägerig kranken Großmutter einen Korb mit Leckereien (Kuchen und Wein) zu bringen. Die Mutter warnt Rotkäppchen eindringlich, es solle nicht vom <input type="text" name="weg"> abgehen. Im Wald lässt es sich auf ein Gespräch mit einem <input type="text" name="wolf"> ein. Dieser horcht Rotkäppchen aus und macht es auf die schönen Blumen auf einer nahen Wiese aufmerksam, worauf Rotkäppchen beschließt, noch einen <input type="text" name="blumenstrauß"> zu pflücken, der Warnung der Mutter zum Trotz. Der Wolf eilt geradewegs zur <input type="text" name="großmutter"> und frisst sie. Er legt sich in deren Nachthemd in ihr Bett und wartet auf Rotkäppchen. Bald darauf erreicht Rotkäppchen das Haus, tritt ein, und begibt sich an <input type="text" name="großmutters"> Bett. Dort wundert sich Rotkäppchen über die <input type="text" name="gestalt"> ihrer Großmutter, erkennt aber nicht den Wolf, bevor es ebenfalls gefressen wird.
Großmutter und Rotkäppchen werden aber von einem <input type="text" name="jaeger"> aus dem Bauch des Wolfes befreit. Der Jäger füllt dem Wolf <input type="text" name="steine"> in den Bauch. Wegen des Gewichts der Steine kann der Wolf nicht fliehen und stirbt.
</p>
<p> Fehlende Wörter : Rotkäppchen, Weg, Mutter, Blumenstrauß, Jäger, Großmutters, Gestalt, Wolf, Steine, Goßmutter</p>
<input type="submit" name="abgesendet" value="Lückentext absenden!">
</form>
<?php
if(isset($ausgabe) and !empty($ausgabe)){
echo $ausgabe;
}
if(isset($fehler) and !empty($fehler)){
echo $fehler;
}
?>
</body>
</html>
Alles anzeigen
Freue mich auf eure Hilfe.
Gruß,
Stef
Hey,
vielen Dank für die ausführliche Erklärung habe es nun besser verstanden.
Nun nochmals ne frage zu dem return.
Wenn man in der funktion nichts ausgeben möchte. Dann kann man ja diese Strings returnen um außerhalb der function auf diese zugreifen zu können ?
___
Man könnte ja diese funktion ohne function auch einfach so machen :
<?php
$zahl1 = 20;
$zahl2 = 3.33;
if ($zahl2 === 3.33)
{
echo 'Es ist ein Fehler aufgetreten. Sie können die Zahl nicht mit 3.33 teilen!';
} else{
echo 'Das dividierte Ergebnis aus '. $zahl1 .' und '. $zahl2 .' lautet '. round($zahl1/$zahl2);
}
?>
Alles anzeigen
Wofür sind dann die Funktionen gedacht ? Da kommt doch immer das selbe raus.
Gruß,
Stef
Hey,
ich bin auf der suche nach einem Editor, für HTML / CSS / JS /PHP mit Autovervollständigung, Syntax Highlightning, Error reporting (also anzeigen falls ein error/fehler da ist, z.b. fehlendes schließen
einer function oder so). Möglichst kostenlos. Aber falls notwendig bezahl ich auch was dafür
Ich habe bis jetzt keine gefunden die wirklich meinen Vorgaben entsprechen.
Gruß,
Stef
Hey,
Dein Code ist nicht so übersichtlich gestaltet aber nagut. Erstmals die Fehler korrigieren:
- siehe "" bei <a href="">...</a>
-im css die } ganz zum schluss
Warum beendest du das div der navi erst am ende nach main ? Gehört die navi zu main dazu oder wie hast du es geplant?
Hier habe ich mal ein Dropdownmenu (nicht anhand deiner seite):
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Dropdown Menu</title>
<link href="style.css" rel="stylesheet">
</head>
<body>
<div id="navi">
<nav>
<ul class="over">
<li><a href="#">Menüpunkt1</a></li>
<li class="mp2"><a href="name.php">Menüpunkt2</a>
<ul class="under">
<li><a href="#">Unterpunkt1</a></li> <li><a href="#">Unterpunkt2</a></li> <li><a href="#">Unterpunkt3</a></li>
</ul>
</li>
</ul>
</nav>
</div>
</body>
</html>
Alles anzeigen
*{
margin: 0px; padding: 0px; font-family: Verdana, sans-serif;
}
div#navi{
text-align: center;
}
ul.over li{
width: 300px;
height: 30px;
background-color: blue;
display: inline-block;
float:left;
padding: 20px;
}
ul.over li a{
color:white;
text-decoration: none;
padding: 30px 120px;
position: relative;
left:-20px;
}
ul.under{
margin-top: 21px;
position: relative;
top: 10px;
left: -20px;
}
ul.under li{
padding: 20px;
background-color: black;
display:none;
}
ul.under li a{
padding-top: 20px;
position: relative;
top: 0px;
left: -20px;
}
ul.under li a:hover{
background-color: aqua;
color: black;
}
ul.over li a:hover{
background-color: yellow;
color: black;
}
ul.over li:hover ul.under li
{
display: block;
}
Alles anzeigen
Habe mal so wie ich es machen würde deine seite nachgestellt , mit dropdown usw.. :
<html>
<head>
<meta charset="UTF-8">
<title>Dropdown</title>
<link href="style.css" rel="stylesheet">
</head>
<body>
<div id="navi">
<nav>
<ul class="over">
<li><a href="#" class="active">Menüpunkt1</a></li>
<li class="mp2"><a href="#">Menüpunkt2</a>
<ul class="under">
<li><a href="#">Unterpunkt1</a></li>
<li><a href="#">Unterpunkt2</a></li>
<li><a href="#">Unterpunkt3</a></li>
</ul>
</li>
<li><a href="#">Menüpunkt3</a></li>
</ul>
</nav>
</div>
<!-- zum clearen der float -->
<div class="clear"></div>
<div id="main">
<section>
<h1>Überschrift</h1>
<img src="img/bild.jpg" alt="Text" class="flow-img">
<p>TEXT TEXT TEXT</p>
<a href="tel:Nummer" class="tel">Nummer</a> <p>TEXT TEXT</p>
</section>
<section>
<h2>Überschrift</h2>
<img src="img/bild.jpg" alt="TEXT">
<ul>
<li>TEXT</li>
<li>TEXT</li>
<li>TEXT</li>
<li>TEXT</li>
<li>TEXT</li>
</ul>
<p>
<strong>TEXT</strong>
<br>
TEXT TEXT TEXT</p>
</section>
<aside>
<h3>Überschrift</h3>
<p>TEXT TEXT TEXT</p>
<img src="img/signature.jpg" alt="Unterschrift">
<small><?php echo $city; ?>, 14.08.2006</small>
</aside>
<div class="clear"></div>
</div>
</body>
</html>
Alles anzeigen
*{
margin: 0px;
padding: 0px;
font-family: Verdana, sans-serif;
}
div#navi{
text-align: center;
width: 100%;
height: 70px;
background-color: blue;
}
ul.over li{
width: 300px;
height: 30px;
background-color: blue;
display: inline-block;
float:left;
padding: 20px;
}
ul.over li a{
color:white;
text-decoration: none;
padding: 30px 120px;
position: relative;
left:-20px;
}
ul.under{
margin-top: 21px;
position: relative;
top: 10px;
left: -20px;
}
ul.under li{
padding: 20px;
background-color: black;
display:none;
}
ul.under li a{
padding-top: 20px;
padding-bottom: 31px;
position: relative;
top: 0px;
left: -20px;
}
ul.over li a:hover{
background-color: yellow;
color: black;
}
ul.under li a:hover{
background-color: aqua;
color: blue;
}
ul.over li:hover ul.under li
{
display: block;
}
div.clear {
float:none;
clear:both;
}
div#main{
padding-top: 30px;
height: 100%;
}
#main h1,h2,h3{
color: blue;
margin-bottom: 10px;
}
#main img{
float:left;
width: 200px;
height: 120px;
padding-right: 10px;
padding-top: 10px;
}
#main section
{
margin-bottom: 100px;
margin-left: 10px;
}
#main a{
color: gold;;
text-decoration: none;
padding: 10px;
margin: 5px;
background-color: black;
float:right;
border-radius: 10px;
font-weight: bold;
}
#main li{
list-style-type: none;
}
#main aside
{
margin-top: -70px;
margin-left: 10px;
}
#main small
{
position: relative;
top: 140px;
left: -100px;
}
#main a:hover
{
background-color: aqua;
color:black;
}
Alles anzeigen
Bei Fragen einfach fragen
Gruß,
Stef
Hey,
aso ok. Habe ich mir gedacht. Wenn ich jetzt schon der function zahlen mitgebe vor dem funktionsstart damm braucht man doch nicht zahlen in der function zu schreiben ? Oder?
Und wenn ich jetzt z.b. keine zahlen vordefiniere, dann zählen die Zahlen in der function.?
Ok und wie macht man dass ? Tut man 2 gleichen variablen andere werte geben und dann abfragen ob wie du erwähnt hast es ein int oder string ist? Oder wie meinst dus jetzt ?
Die 2.te frage hat sich erledigt.
Gruß,
Stef
Hey,
ich habe mal paar fragen zu meinem script hier:
<?php
$zahls = 20;
$zahld = 3.33;
function zahlen ($zahl1 = 1,$zahl2= 0)
{
$ergebnis = null;
if ($zahl2 == 3.33)
{
echo "Es ist ein Fehler aufgetreten. Sie können die Zahl nicht mit 3.33 teilen!";
} else {
$ergebnis = bcdiv($zahl1,$zahl2, 2);
}
return($ergebnis);
}
$ergebnis = zahlen ($zahls , $zahld);
echo"<br>Das dividierte Ergebnis aus $zahls und $zahld lautet $ergebnis";
echo"<br>";
?>
Alles anzeigen
Ich habe ja erstmal 2 zahlen in variablen erstellt. Dann habe ich die funktion gestartet und habe dieser variablen mitgegeben mit den werten 1 und 0.
Nun kappier ich irgendwie nicht warum die function erst den error ausgibt wenn die var zahld = 3,33 ist , wenn $zahl2 = 0 ist.
Villt täusche ich mich jetzt, aber kann es sein das die werte aus den beiden ersten vars :
$zahls = 20;
$zahld = 3.33;
Die werte der variablen in der function überschreiben ?
Und dann nochwas. Wenn ich jetzt in der funktion in der if else anweisung nun alles was er ausgeben soll reinschreibe un d nix auserhalb der funktion und ich dann die funktion mittels echo ausgeben möchte bleibt der leere Bildschirm warum denn ?
Gruß,
Stef
Guten Abend zusammen.
ich habe jetzt ein Bestellformular erstellt und möchte nun wenn jemand auf eine checkbox klickt das ein preis angezeigt wird und wenn man weitere checkboxen drückt der preis immer weiter dazugerechnet wird.
Ich habe im Internet gesucht, aber nicht so viel gefunden was mir es alles verständlich rüberbringt.
Hier mein HTML & CSS:
<div id="bestellformular">
<div id="bestellformular-mover-in">
<p id="uberschrift">Was möchten sie bestellen?</p>
<form name="bestellform">
<label for="angebot1" >Bilder</label>
<input type="checkbox" id="angebot1" />
<br>
<label for="angebot2" >Videos</label>
<input type="checkbox" id="angebot2" />
<br>
<label for="angebot3">E-Book</label>
<input type="checkbox" id="angebot3" />
<br>
<label for="angebot4" >Buch</label>
<input type="checkbox" id="angebot4"/>
<button id="bestellbutton">Bestellen!</button>
</form>
<p>Es kostet:<span id="preis"></span></p>
</div>
<p>B<br>E<br>S<br>T<br>E<br>L<br>L<br>F
<br>O<br>R<br>M<br>U<br>L<br>A<br>R<br></p>
</div>
Alles anzeigen
/*Bestellformular*/
div#bestellformular
{
width: 50px;
height: 400px;
background-color: brown;
border: 2px solid cyan;
border-right: none;
float: right;
border-top-left-radius: 30px;
border-bottom-left-radius: 30px;
clear: both;
}
div#bestellformular p
{
position: absolute;
right: 10px;
top: 160px;
font-weight: 900;
color: black;
}
#bestellformular div#bestellformular-mover-in
{
width: 200px;
height: 430px;
background-color: yellow;
position: relative;
right: 150px;
top: -5px;
border-top-left-radius: 30px;
border-bottom-left-radius: 30px;
z-index: 1;
}
div#bestellformular-mover-in p#uberschrift
{
position: absolute;
top: 10px;
left: 10px;
}
div#bestellformular-mover-in p
{
position: absolute;
top: 230px;
left: 10px;
}
div#bestellformular-mover-in p span
{
width: 100px;
height: 50px;
border: 2px solid black;
margin-left: 5px;
padding: 3px 4px 3px 4px;
}
div#bestellformular-mover-in label
{
position: relative;
top: 80px;
left: 40px;
display: block;
}
div#bestellformular-mover-in [type="checkbox"]
{
position: relative;
top: 65px;
left: 25px;
}
div#bestellformular-mover-in button
{
position: absolute;
top: 300px;
left: 20px;
padding: 10px;
border: 3px solid cyan;
}
/*Zeigen dieses Bereiches + hover-effekte*/
div#bestellformular-mover-in button:hover
{
background-color: rgba(0, 234, 255, 0.3);
cursor: pointer;
}
#bestellformular div#bestellformular-mover-in
{
display: none;
}
div#bestellformular:hover #bestellformular-mover-in
{
display: block;
}
Alles anzeigen
Hoffe ihr könnt mir dabei Helfen. Und falls ihr einen javascript-code bringt. Könnt ihr ihn bitte erklären.
Vielen Dank.
Gruß,
Stef
Hey Rocket,
dies musst du mit Media Queries machen.
hier ein link wo dir weiterhelfen kann : http://www.html-seminar.de/med…ies-responsive-design.htm
Stef
HTML-Seminar.de - mit Videos zum schnellen Lernen, wie man eine Website selbst erstellt.