PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr (https://www.php-resource.de/forum/)
-   PHP Developer Forum (https://www.php-resource.de/forum/php-developer-forum/)
-   -   HTML zeigt PHP Code nach dem Pfeiloperator als Text an (https://www.php-resource.de/forum/php-developer-forum/105275-html-zeigt-php-code-nach-dem-pfeiloperator-als-text-an.html)

MeinByte 30-09-2015 07:49

HTML zeigt PHP Code nach dem Pfeiloperator als Text an
 
Hallo,
ich bin langsam am verzweifeln :{
Ich schreibe gerade an eine Webseite mit html5 und php (keine Ahnung welche Version ;) ) Jetzt habe ich das Problem, dass ich einen PHP Code in die Webseite eingebaut habe (wie sicher der ist, ist jetzt irrelevant ;) ). In diesem PHP Code kommt der Pfeiloperator vor. Nur habe ich das Problem, dass wenn ich die Webseite teste (auf meinem Raspberry Pi MIT PHP und dem ganzen anderen Zeug installiert) wird mit nur ein bestimmter Teil vom Code angezeigt. Kann mir einer Helfen, bzw alternativen sagen, bei denen ich nicht ganz so viel abändern muss?

Der Code der angezeigt wird:
Code:

isUserLoggedIn() === TRUE) { echo "You are already logged in! - Logout"; }else { if(isset($_POST['einloggen'])) { $mail = $_POST['email']; $passwort = sha1($_POST['passwort']); if($database->login($mail, $passwort) === TRUE) { echo "Login successful"; break; }else { echo "Login NOT successful!"; } } ?>
Code, der in der HTML steht:
PHP-Code:

<?php
session_start
();
    require_once 
'mysql.php';
    
$database = new DB();
    if(isset(
$_GET["section"])){
        
$section $_GET["section"];
    }else{
        
$section "";
    }
            if(
$database->isUserLoggedIn() === TRUE) {
                echo 
"You are already logged in! - <a href='logout.php' alt='Logout'>Logout</a>";
            }else {
            if(isset(
$_POST['einloggen'])) {
                
$mail $_POST['email'];
                
$passwort sha1($_POST['passwort']);
                if(
$database->login($mail$passwort) === TRUE) {
                    echo 
"Login successful";
                    break;
                }else {
                    echo 
"Login NOT successful!";
                }
            }
            }
        
?>


wahsaga 30-09-2015 07:57

Das ist ein absolut sicheres Zeichen, dass deine Datei überhaupt nicht als PHP geparst wird – sondern der PHP-Code direkt an den Browser gesandt wird, der dann alles innerhalb von < und > als „HTML-Tags“ ansieht, und den Rest dazwischen darstellt.

Hast du die Datei als .php abgespeichert?
Testest du das ganze über einen Webserver, auf dem PHP läuft?

MeinByte 30-09-2015 08:56

Und warum funktionieren dann andere PHP Scripte in dieser index.html? Außerdem zeigt der mir ja den Anfang von diesem Code nicht an

wahsaga 30-09-2015 19:03

Zitat:

Zitat von MeinByte (Beitrag 671671)
Und warum funktionieren dann andere PHP Scripte in dieser index.html?

Tun sie vermutlich nicht …

In Dateien, die auf .html enden, wird normalerweise kein PHP geparst. Hast du probiert, sie in index.php umzubenennen …?

Zitat:

Außerdem zeigt der mir ja den Anfang von diesem Code nicht an
Warum, habe ich doch schon erklärt – der Browser hält alles, was zwischen < und > steht, für „Tags“ – und wenn du in HTML bspw. <h1> verwenden würdest, würdest du doch auch nicht erwarten, dass „h1“ als Text auf der Seite erscheint.


Alle Zeitangaben in WEZ +2. Es ist jetzt 19:42 Uhr.

Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0
[c] ebiz-consult GmbH & Co. KG