Beiträge von siolein
-
-
Blöde Frage: Wie generierst Du den eigentlichen Inhalt? Übergibst Du $seite o.ä. ungefiltert an irgendeine include/require Funktion?
Ja ich denke so wird es gemacht:
PHP
Alles anzeigen<?php $seite=$_GET['s']; if (isset($seite)) $seite=$seite; else $seite = "start"; require("titel.php"); require("head.php"); ?> <div style="position:absolute; top:5px; left:5px; width:900px; height:115px; background-image:url(oben.png); border-bottom:1px solid #000000; border-right:1px solid #000000; border-left:1px solid #000000; border-top:1px solid #000000;"> </div> <div style="position:absolute; top:115px; left:5px; width:900px; height:37px; border-bottom:1px solid #000000; border-right:1px solid #000000; border-left:1px solid #000000; border-top:1px solid #000000;"> <?php require("menu_oben.php"); ?> </div> <div style="position:absolute; top:146px; left:5px; width:900px; height:37px; border-bottom:1px solid #000000; border-right:1px solid #000000; border-left:1px solid #000000; border-top:1px solid #000000;"> <?php require("menu_oben2.php"); ?> </div> <div style="position:absolute; top:179px; left:5px; width:900px; ; border-bottom:1px solid #000000; border-right:1px solid #000000; border-left:1px solid #000000; border-top:1px solid #000000;"> <?php require("$seite.php"); ?> </div>
und die jeweils anzuzeigende Sete wird durch parameter s übergeben: https://chemnitz-wetter.de/index.php?s=start
so zumindest habe ich das verstanden?!
-
Vielen Dank an alle für die schnelle Hilfe, meine Website ist nun wieder korrekt online
Viele Grüße und schönen Abend!
siolein
-
Wenn man mal in den HTML-Code der Seite (https://chemnitz-wetter.de/test/index.php?s=start) schaut, sieht man, dass dort noch PHP-Tags drin sind. Die haben da natürlich nichts drin zu suchen, sondern sollten Serverseitig ausgewertet werden.
Du benutzt wie weiter oben geschrieben noch Short-PHP-Tags <? ; das ist bei den meisten Anbietern standardmäßig nicht möglich und muss entweder Aktiviert werden (php-Setting short-open-tag) oder du musst alle Vorkommen von <? (ohne was danach) durch <?php ersetzen.
scheinbar lag es wirklich daran, dass short-tags verwendet wurden. Zusätzlich habe ich die inlcude durch require ersetz. Ich habe alles angepasst und nun funktoniert auch wieder alles. Vielen herzlichen Dank!
-
gute Frage, hab param durch $seite ersetzt udn nun kommt auch die Fehlermeldugn nicht mehr: https://chemnitz-wetter.de/test/index.php?s=start
-
Du greifst in titel.php (Zeile 4) auf die Variable param zu, die es nicht gibt. Ggf. solltest Du mit empty() Existenz und Zustand der Variablen prüfen. Falls Dir das jetzt nichts sagt, solltest Du diese Seite mit diesem Code vielleicht lieber nicht betreiben.,
ich habe an der titel.php nix geändert, wie gesagt beim alten Hoster ging es ja..
hier der Inhalt der titel.php
-
Auf dem Link den du jetzt gepostet hast, sind auch die (positiven) Rückmeldungen bool(true) und bool(true) zu sehen. Heißt: die Dateien werden includiert.
Wenn also ein Ergebnis rauskommt, das nicht deinen Erwartungen entspricht, dann liegt wohl irgendeine Kombination von Umständen vor, die dafür sorgt, dass nicht das passiert, was du erwartest.
Okay das ist ja schon einmal gut, aber grundsätzlich verstehe ich nicht, warum beim alten Hoster meien Seite ohen Problme lief und seitdem ich bei netcup bin dies nicht mehr geht, obwohl ich am Quelltext nix veränert habe! Ich komme so einfach nicht weiter
-
Hallo siolein,
das der Code so nicht empfehlenswert ist hat man Dir schon gesagt. Bei Gelegenheit solltest Du den umbauen
Du hast vermute ich mal ein Pfadproblem.
Ich würde erstmal ein
machen.
Das bitte oben direkt nach dem <?php einfügen.
Mit die() lassen wir die Skriptausführung unmittelbar beenden. In __DIR__ wird der aktuelle Pfad gespeichert.
Anhand dessen kannst Du nun schauen wo PHP Deine menu_oben.php erwartet.Ich vermute, dass die Dateien die Du einfügst im gleichen Ordner liegen (sollten) wie Deine index oder?
Viele Grüße
Hallo Peng,
danke für deine Hinweise. Ich habe jetzt folgenden Code auf der Seite:
PHP
Alles anzeigen<?php error_reporting(E_ALL); ini_set('display_errors', 1); ini_set('display_startup_errors', 1); die(__DIR__); var_dump(is_file('menu_oben.php'), is_file(__DIR__ . '/menu_oben.php')); $seite=$_GET['s']; if (isset($seite)) $seite=$seite; else $seite = "start"; require("titel.php"); require("head.php"); ?> <div style="position:absolute; top:5px; left:5px; width:900px; height:115px; background-image:url(oben.png); border-bottom:1px solid #000000; border-right:1px solid #000000; border-left:1px solid #000000; border-top:1px solid #000000;"></div> <div style="position:absolute; top:115px; left:5px; width:900px; height:37px; border-bottom:1px solid #000000; border-right:1px solid #000000; border-left:1px solid #000000; border-top:1px solid #000000;"> </div> <div style="position:absolute; top:146px; left:5px; width:900px; height:37px; border-bottom:1px solid #000000; border-right:1px solid #000000; border-left:1px solid #000000; border-top:1px solid #000000;"> <?php require("menu_oben2.php"); ?> </div> <div style="position:absolute; top:179px; left:5px; width:900px; ; border-bottom:1px solid #000000; border-right:1px solid #000000; border-left:1px solid #000000; border-top:1px solid #000000;"> </div>
und als Ausgabe kommt: /var/www/vhosts/hosting110409.a2f39.netcup.net/httpdocs/chemnitz-wetter/test
Das ist das Verzeichnis wo die Datei auch liegt. es soll ja auch alles aus dem gleichen Verzeichnis wie die index geladen werden.
Hm also theoretisch sollte ja alles gehen, aber es sieht so aus: https://chemnitz-wetter.de/test/index.php?s=start
-
Hier der Output:
Undefined variable: param in /var/www/vhosts
Und was sagt mir das jetzt? Sorry, bin da echt totaler Anfänger :-/
-
Sorry, ich kenne mich echt nicht so sehr damit aus, ich wollte mit dem Aufbau eigentlich nur einen alten Frameset im html umgehen, da das ja nicht mehr zeitgemäß ist..
hier mal der Link zur Website wo dies funktioniert hat (wichtig ist das Menü oben: http://www.wetterstation-chemnitz-reichenhain.de/
und hier der Link zur oben geposteten Seite wo es nicht funktioniert:: https://chemnitz-wetter.de/test/ (sollte vom Aufbau identisch zur obigen Seite sein!)
PHP
Alles anzeigenHab den Quelltext nun so geändert: error_reporting(E_ALL); ini_set('display_errors', 1); ini_set('display_startup_errors', 1); <?php $seite=$_GET['s']; if (isset($seite)) $seite=$seite; else $seite = "start"; require("titel.php"); require("head.php"); require ("menu_oben.php"); var_dump(is_file('menu_oben.php'), is_file(__DIR__ . '/menu_oben.php')); ?> <div style="position:absolute; top:5px; left:5px; width:900px; height:115px; background-image:url(oben.png); border-bottom:1px solid #000000; border-right:1px solid #000000; border-left:1px solid #000000; border-top:1px solid #000000;"></div> <div class="cont_oben"> </div> <div style="position:absolute; top:115px; left:5px; width:900px; height:37px; border-bottom:1px solid #000000; border-right:1px solid #000000; border-left:1px solid #000000; border-top:1px solid #000000;"> </div> <div style="position:absolute; top:146px; left:5px; width:900px; height:37px; border-bottom:1px solid #000000; border-right:1px solid #000000; border-left:1px solid #000000; border-top:1px solid #000000;"> <? include("menu_oben2.php"); ?> </div> <div style="position:absolute; top:179px; left:5px; width:900px; ; border-bottom:1px solid #000000; border-right:1px solid #000000; border-left:1px solid #000000; border-top:1px solid #000000;"> </div>
Welcher Output ist gemeint, ich kann kein Fehlermeldung sehen?!
-
Hallo,
ich bin gestern mit meiner Domain zu netcup umgezogen (Webhosting2000-Tarif), habe meine komplett Website hier per FTP wieder vollständig hochgeladen, allerdings öffnet diese nicht mehr korrekt, da anscheinend die include-Befehle nicht erkannt werden.
Hier mal der Quelltext der index.php:
PHP
Alles anzeigen<?php $seite=$_GET['s']; if (isset($seite)) $seite=$seite; else $seite = "start"; require("titel.php"); require("head.php"); ?> <div style="position:absolute; top:5px; left:5px; width:900px; height:115px; background-image:url(oben.png); border-bottom:1px solid #000000; border-right:1px solid #000000; border-left:1px solid #000000; border-top:1px solid #000000;"></div> <div class="cont_oben"> </div> <div style="position:absolute; top:115px; left:5px; width:900px; height:37px; border-bottom:1px solid #000000; border-right:1px solid #000000; border-left:1px solid #000000; border-top:1px solid #000000;"> <? include("menu_oben.php"); ?> </div> <div style="position:absolute; top:146px; left:5px; width:900px; height:37px; border-bottom:1px solid #000000; border-right:1px solid #000000; border-left:1px solid #000000; border-top:1px solid #000000;"> <? include("menu_oben2.php"); ?> </div> <div style="position:absolute; top:179px; left:5px; width:900px; ; border-bottom:1px solid #000000; border-right:1px solid #000000; border-left:1px solid #000000; border-top:1px solid #000000;"> </div> Eine andere mit umgezogene Domain mit der Startseite auf html aufbauend funktioniert dagegen reibungslos.. Woran kann das liegen? Beim alten Hoster hatte ich keinerlei Einstellungen vorgenommen, da alles ohne Problem funktioniert.. Zudem hatte ich vorhin hier bei Netcup in einem anderen tarif (Starter M) eine Seite gehostet mit genau den gleich Aufbau wie oben, nur dass dort alles einwandfrei funktioniert.. Woran kann das nur liegen?? Vielen Dank im Voraus! Silvio