Wieso kann ich diesen einfachen PHP Code nicht in Html einbetten?

3 Antworten

Zunächst einmal: Ist dir bewusst, dass du hier einen veralteten Standard (HTML4) nutzt? <!DOCTYPE html> reicht aus.

Bild zum Beitrag

Dann das hier. Du solltest deine Datei in UTF-8 speichern und auch das charset im Head auf UTF-8 setzen. Dann musst du auch nicht mehr diese Entity-Codes nutzen.

Bild zum Beitrag

Im Head fügst du Folgendes ein:

<meta charset="utf-8">

Nun zu deinem Problem. Zunächst einmal sollte deine Datei mit .php enden, damit sie vom Webserver auch als solche erkannt wird und dann auch ausgeführt wird. PHP-technisch sollte das aber funktionieren.

Woher ich das weiß:Berufserfahrung – Informatiker Applikationsentwicklung
 - (Computer, Technik, Technologie)  - (Computer, Technik, Technologie)

regex9  07.12.2021, 16:23

Wenn er den Doctype so ändert, wie du es empfiehlst, macht er sein Dokument postwendend invalid. Das bgcolor-Attribut gehört nicht zum HTML5-Standard.

2
Lezurex  07.12.2021, 16:24
@regex9

Stimmt, das sollte dann auch noch ausgebessert werden, habe ich übersehen.

0
Phfragen 
Fragesteller
 07.12.2021, 16:23

Danke für die Tipps. Ich brauche ja eine HTML-Datei um sie im Webbrowser einzugeben. Die Speicher ich dann als Pflanzenart.html in htdocs ab. Dann brauche ich eine selbe Datei (?) mit .php Format. Hab ich das richtig verstanden, dass man das so macht?

0
Lezurex  07.12.2021, 16:25
@Phfragen

HTML kannst du auch direkt in PHP-Dateien schreiben. Solange du keinen "PHP-Bereich" markierst (mit <?php), ist es eine reine Textdatei und führt nichts aus.

0
regex9  07.12.2021, 16:27
@Phfragen

Du brauchst nur eine einzige Datei. Benenne die Pflanzenart.html in Pflanzenart.php um. PHP-Code wird vom Webserver nur bei Dateitypen interpretiert, bei denen er weiß, dass er sie interpretieren soll. Typischerweise gehören php-Dateien dazu.

Bei Auswertung einer PHP-Datei generiert der Webserver das komplette HTML-Dokument und schickt es an den Client.

2
Phfragen 
Fragesteller
 07.12.2021, 16:30

Danke Leute, ich hab jetzt gleich mehrere Sachen umgeändert und es geht jetzt! Vielleicht waren es nur die Backticks oder eine Kombination aber wie dem auch sei jetzt kann ich weiterarbeiten (:

0

Wie wäre es mit Pflanzenarten.php?

Woher ich das weiß:Studium / Ausbildung – Informatikstudent

Phfragen 
Fragesteller
 07.12.2021, 16:11

Wenn ich das in die Suchleiste eingebe (http://localhost/Pflanzenart.php) kommt die Meldung: Parse error: syntax error, unexpected 'World' (T_STRING), expecting ';' or ',' in C:\xampp\htdocs\Pflanzenart-html.php on line 19

0
whgoffline  07.12.2021, 16:16
@DodgeRT

Das hat er wohl schon gemacht, da ja php sich mit

 Parse error: syntax error

meldet.

2
Phfragen 
Fragesteller
 07.12.2021, 16:16
@whgoffline

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<title>Pflanzenart</title>

</head>

<body>

<body bgcolor="#7FFFD4">

<h1>Bitte w&auml;hle deine Pflanze aus:</h1>

<?php

echo ’Hello World!’;

?>

</body>

</html>

0
whgoffline  07.12.2021, 16:23
@Phfragen

Deine Anführungsstriche um Hello World! herum waren falsch.

Das muss so heißen

echo "Hello World!"; // oder 'Hello World'
1
Phfragen 
Fragesteller
 07.12.2021, 16:25
@whgoffline

Tatsächlich dachte ich mir das auch schon, aber soweit ich weis kann man beide Varianten verwenden. Aufjedenfall wird es auf beide Arten nicht angezeigt.

1
whgoffline  07.12.2021, 16:27
@Phfragen

Einfach und doppelte gehen. Aber es gehen keine Backticks wie in deinem Code ’

2
Phfragen 
Fragesteller
 07.12.2021, 16:32
@whgoffline

Ich glaube das war der Fehler, Danke! Es geht jetzt

1
showgirl1  07.12.2021, 21:57
@Phfragen

Noch ein Hinweis: In deinem Code ist 2x ein öffnendes Body Tag - das ist nicht valide.

1
Phfragen 
Fragesteller
 09.12.2021, 14:40
@showgirl1

Das zweite Body gehört zu BG colour. Das andere öffnet den Body Teil.

0
NackterGerd  26.09.2022, 09:05
@whgoffline

Wieso sollen die Anführungszeichen falsch sein.

' wird verwendet wenn reiner Text kommt.

" wird verwendet wenn innerhalb des Texts auch Variablen kommen dann erspart man sich den komplizierten Konstrukt mit 'Text1'.$variable.'Text2'

Hier wäre es egal mit " ist es halt nur langsamer als mit '

0
NackterGerd  26.09.2022, 09:09
@Phfragen

2 mal Body ist definitiv falsch.

Du brauchst auch kein 2. Um Farben zu setzen.

Es gibt nur einen Body.

Übrigens:

Wenn du deinen Code online stellst kannst du ihn mit HTML Validierung prüfen lassen

0

Heißt die Datei denn auch .php ?

Sonst kann es nicht funktionieren wenn die Datei .HTML heißt!