Thema: PHP Formular Check
-
27. 01. 2012, 22:44 #21Mitglied
- Registriert seit
- Jun 2009
- Ort
- Im Forum
- Beiträge
- 530
Re: PHP Formular Check
Es läuft ja nur das durch PHP, was du auch mit einem <?php und ?> umschließt. Alles andere wird, so wie es in der Datei steht einfach "durchgereicht".
Da würde ich dir raten, 3 getrennte Dateien zu erstellen. Zwar können alle einen ähnlichen/gleichen Aufbau haben, allerdings halte ich es für wenig sinnvoll, alle unter dem gleichen Link (sprich, der gleichen Datei) anzubieten, da dann immer auf deine Hauptseite "geleitet" wird und nicht zu der Seite, die sich jemand möglicherweise als Lesezeichen gespeichert hat.
Es ist einfach nutzerfreundlicher diese unter verschiedenen Links (also im Normalfall verschiedene Dateien, wobei du allerdings auch GET-Parameter verwenden könntest) anzubieten.
Das freut mich natürlich in diesem Fall.
Eine Bitte habe ich allerdings an dich, die auch für andere Threads hilfreich sein könnte.
Wenn du Fragen so nach der Reihe beantwortest oder irgendwo zu ein Statement abgeben möchtest, verwende die Zitat-Funktion um auf den entsprechenden Beitrag eines anderen Nutzers hinzuweisen. Es ist nicht zwingend notwenig, dass du so zitierst, dass auch der Nutzername dabei steht (was allerdings schöner wäre), allerdings hilft ein Zitat ungemein den Zusammenhang deines Beitrags zu verstehen.
Bitte beachte dabei allerdings bitte, dass du keinen Full-Zitate machst, wenn der zitierte Beitrag aus mehr als einer Aussage besteht. Zitiere nach Möglichkeit immer nur einzelne Aussagen, oder trenne das Zitat in sinnvolle Abschnitte ein.
Spoiler:
Ich hoffe, ich durfte diesen Hinweis an dieser Stelle geben, da ich dies bisher meistens nur von Moderatoren gesehen habe... Falls nicht, bitte ich natürlich um einen Hinweis und Entschuldigung ;-)
-
28. 01. 2012, 11:55 #22Mitglied
- Registriert seit
- Mar 2007
- Beiträge
- 2.700
Re: PHP Formular Check
Diese Annahme ist falsch, im Gegenteil sogar. Wenn du die Seiten rein aus PHP-Datein generierst die auf der Festplatte liegen, so liegt der Zeitaufwand dafür ungefähr bei ca. 0-1ms. In einem so simplen Fall wie bei dir, dauert alleine der Aufruf der Funktion mysql_connect() schon länger, als die restliche Generierung der Seite zusammen, mysql_query() ist was den Zeitaufwand angeht ebenfalls nicht ganz unkritisch.
preg_replace() ist jetzt allerdings auch nicht unbedingt das Mittel der Wahl wenn du damit nur Inhalte in das Template einfügen willst. Wesentlich einfacher ist dabei der folgende Ansatz:
PHP-Code:<?php
// seite.php
$header = "Ich bin die Überschrift";
$content = "Ich bin der Content.<br/>Und enthalte ganz toll viel HTML.";
for($i = 0; $i < 10; $i++) {
$conentent .= " $i <br/>";
}
$content .= "Ich kann auch mit PHP erzeugt werden<br/>";
// Eine SEHR hilfreiche Funktion!
ob_start();
echo "Dieser Text hier wird nicht direkt ausgegeben<br/>";
?>
Auch dieser Text hier wird nicht so im Browser erscheinen<br/>
<?php
// Die nicht ausgegebenen Inhalte der $content-Variable hinzufügen
$content .= ob_get_contents();
// Notwendig, damit danach der Text wieder an den Browser ausgegeben wird
ob_end_clean();
include('template.php');Wenn du dann ein bisschen mehr Erfahrung mit PHP gesammelt hast, kannst du dir dann ja auch mal ein paar MVC-Frameworks anschauen, da wird das System dann noch mal deutlich verfeinert.PHP-Code:<?php
// template.php
?>
<html>
<head>
<title><?php echo $header; ?></title>
</head>
<body>
<h1><?php echo $header; ?></h1>
<div><?php echo $content; ?> </div>
</body>
</html>
-
29. 01. 2012, 14:50 #23Mitglied
(Threadstarter)
- Registriert seit
- Mar 2011
- Ort
- Switzerland
- Beiträge
- 36
Re: PHP Formular Check
Im Moment verwende ich eine Datei und arbeite mit verschiedenen GET-Parameter.
Ich entschuldige mich, normalerweise verwende ich die Zitatfunktion auch, aber diese Antwort habe ich von meinem Handy aus geschrieben, da war es mir zu umständlich.
Schon wieder etwas gelernt. Dann werde ich in Zukunft möglichst wenig auf DBs zurückgreifen.
So habe ich zu erst begonnen. Ich habe es jedoch wieder verworfen, da man in einem PHP-String die Sonderzeichen speziell behandeln muss. Bei vielen DIVs und Ähnlichem ist dies meiner Meinung nach etwas umständlich. Gibt es dafür auch noch ein Trick oder etwas wie man dies ohne grosse Probleme hin bekommt
Danke für den Tipp, ich werde bei Gelegenheit diese Frameworks mal anschauen.
-
29. 01. 2012, 17:02 #24
Re: PHP Formular Check
Du könntest entweder (wie Exterminans vorgeschlagen hat) explizites Output-Buffering, einsetzen und dann den PHP-Kontext verlassen - nutze ob_start() zur Erstellung eines Buffers, führe dann die Ausgaben durch (diese landen dann im Output-Buffer), lese den Buffer über ob_get_contents() aus und lösche ihn über ob_end_clean() - oder du nutzt eine Syntax für String-Literale, bei der möglichst wenigen Zeichen eine spezielle Bedeutung zukommt.
Insbesondere ist dazu die durch doppelte Anführungszeichen (") beschränkte Syntax wenig geeignet. Passender wäre die durch einfache Anführungszeichen (') beschränkte Syntax (problematische Zeichen: ', \) oder in aktuellen PHP-Versionen die Nowdoc-Syntax. Siehe auch http://php.net/manual/en/language.types.string.php.
Unabhängig davon musst du natürlich Daten (d.h. Inhalte, welche kein (X)HTML-Markup darstellen sollen) vor ihrer Ausgabe im (X)HTML-Kontext passend maskieren, was bereits an Roins Beispiel zurecht kritisiert wurde. Dazu eignet sich PHPs htmlspecialchars()-Funktion. Tust du dies nicht, verursacht dies nicht nur leicht Probleme, sondern führt auch zu sicherheitsrelevanten Schwachstellen, insbesondere wird es dadurch u.U. möglich, beliebigen JavaScript-Code im Kontext deiner Website zur Ausführung zu bringen (Cross-Site Scripting, XSS).
-
01. 02. 2012, 20:40 #25Mitglied
(Threadstarter)
- Registriert seit
- Mar 2011
- Ort
- Switzerland
- Beiträge
- 36
-



Zitieren
mehr lesen...







Occupy Kiel: Massiver Sachschaden...
Heute, 20:15 in gulli:news