[gelöst] Fehler bei PHP

Irgendwelche Probleme mit XAMPP für Windows? Dann ist hier genau der richtige Ort um nachzufragen.

[gelöst] Fehler bei PHP

Postby Poison of the Cursed » 27. April 2010 19:45

Hallo Zusammen,

gestern abend habe ich mir XAMPP auf dem Rechner installiert und schon gleich ein Problem.
Mir geht es so wie CrispyCookie und Rinecamo. Bei meinen PHP-Dateien wird nicht der Inhalt sondern nur der Quellcode ausgegeben.
Beispieldatei:

Code: Select all
<?php
if ( session_id() == "" ) @session_start();
?>
<?php
error_reporting(0);
$nof_suiteName="SecureSite";
$nof_debug = "true";
$nof_langFile = "../scripts/SecureSite_de.properties";
$nof_rootDir = "..";
$nof_scriptDir = "scripts";
?>
<?php
if (!file_exists($nof_langFile) || !file_exists($nof_rootDir . "/" . $nof_scriptDir . "/" . "nof_utils.inc.php")) {
if($nof_debug == "true") {
echo "<p>Die f�r die Suite <b>RustleOaks</b> ben�tigten Komponenten werden nicht ver�ffentlicht. Bitte �berpr�fen Sie die Ver�ffentlichungseinstellungen in Fusion und ver�ffentlichen Sie die Site erneut.</p>";
} else {
echo "<p>Ein Fehler ist aufgetreten.Bitte wenden Sie sich an den Site-Administrator.</p><p>Fehlercode: 103</p>";
}
exit();
}

require_once($nof_rootDir . "/" . $nof_scriptDir . "/" . "nof_utils.inc.php");
$nof_resources->addFile($nof_langFile);
?>
<?php

require_once($nof_rootDir . "/" . $nof_scriptDir . "/" . "NOF_CaptchaProperties.class.php");

?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Registrierung</title>
<meta name="author" content="Regina Jost">
<meta name="keywords" content="Rustle Oaks, Harry Potter, Orden des Ph&ouml;nix, R&auml;tsel, Abenteuer, Severus Snape">
<meta http-equiv="content type" content="text/html; charset=UTF-8">
<meta http-equiv="content type="Content-Style-Type" content="text/css">
<link rel="stylesheet" type="text/css" href="style.css">
</head>

<body>
<div id="Seite">
<ul id="Navigation">

<h2></h2>

<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>

<h2></h2>

<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>

<h2></h2>

<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>

<h2></h2>

<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>

<h2></h2>

<h2></h2>

<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>

</ul>

<div id="Inhalt" align="center">

<img src="" alt="">
<br>
<p><h1>Anmelden</h1></p>
<p>Hallo Fremder,<br>
wenn Du keine bösen Absichten hegst und auch kein Anhäger von Voldemort bist, darfst Du dich gern registrieren!</p>

<br>
<br>


  <table border="0" cellspacing="0" cellpadding="0">
   <tr>
    <td>
     <table border="0" cellspacing="0" cellpadding="0" width="443">
      <tr valign="top" align="left">
       <td width="33" height="23"><img src="../assets/images/autogen/clearpixel.gif" width="33" height="1" border="0" alt=""></td>
       <td></td>
      </tr>
      <tr valign="top" align="left">
       <td height="228"></td>
       <td width="410">
<?php
if (NOF_fileExists("../scripts/ss_signup.php")) {
?>


<!-- <img id="NOFSecureSite1" height="228" width="410" src="../assets/images/icon_signupmodule.gif" border="0"> -->
<form accept-charset='UNKNOWN' method='POST' target='_self' action='../scripts/ss_signup.php' name='signup1272172564251' enctype='application/x-www-form-urlencoded'><input type="hidden" name="nof_componentId" value="1272172564251">
<input type="hidden" name="nof_componentGroupId" value="1270293343464">
<input type="hidden" name="nof_packageId" value="com.netobjects.nfxcomp.securesite">
<input type="hidden" name="nof_componentName" value="signup">
<input type="hidden" name="nof_componentGroupName" value="RustleOaks">
<input type="hidden" name="nof_rootDir" value="..">
<input type="hidden" name="nof_scriptDir" value="scripts">
<input type="hidden" name="nof_scriptInterfaceFile" value="SecureSite1270293343464.xml.php">
<input type="hidden" name="nof_debug" value="true">
<input type="hidden" name="nof_langFile" value="SecureSite_de.properties">
<input type="hidden" name="nof_formName" value="signup1272172564251">
<table><tr><td nowrap><span class='nof_sicheres skript_label'>Benutzername</span></td><td nowrap><?php if(isset($_POST["1272172564251_username_errorimg"])) echo stripslashes($_POST["1272172564251_username_errorimg"]); ?></td><td><input size='30' value='' class='nof_sicheres skript_input_text' name='username' maxlength='50' type='TEXT'></td></tr><tr><td nowrap><span class='nof_sicheres skript_label'>Kennwort</span></td><td nowrap><?php if(isset($_POST["1272172564251_password_errorimg"])) echo stripslashes($_POST["1272172564251_password_errorimg"]); ?></td><td><input size='30' value='' class='nof_sicheres skript_input_password' name='password' maxlength='50' type='PASSWORD'></td></tr><tr><td nowrap><span class='nof_sicheres skript_label'>Kennwort wiederholen</span></td><td nowrap><?php if(isset($_POST["1272172564251_retypePassword_errorimg"])) echo stripslashes($_POST["1272172564251_retypePassword_errorimg"]); ?></td><td><input size='30' value='' class='nof_sicheres skript_input_password' name='retypePassword' maxlength='50' type='PASSWORD'></td></tr><tr><td nowrap><span class='nof_sicheres skript_label'>Email</span></td><td nowrap><?php if(isset($_POST["1272172564251_email_errorimg"])) echo stripslashes($_POST["1272172564251_email_errorimg"]); ?></td><td><input size='15' value='' class='nof_sicheres skript_input_text' name='email' maxlength='30' type='TEXT'></td></tr><tr><td nowrap><span class='nof_sicheres skript_label'></span></td><td nowrap><?php if(isset($_POST["1272172564251_Anmeldung_errorimg"])) echo stripslashes($_POST["1272172564251_Anmeldung_errorimg"]); ?></td><td><input size='0' value='Anmeldung' class='nof_sicheres skript_input_submit' name='Anmeldung' maxlength='0' type='SUBMIT'></td></tr><tr><td colspan='3'><?php if(isset($_POST["1272172564251_errormessgs"])) echo stripslashes($_POST["1272172564251_errormessgs"]); ?></td></tr></table></form>

<?php
$formName = "signup1272172564251";
if(NOF_fileExists("../scripts/ss_remembervalues.php")) include("../scripts/ss_remembervalues.php");
}
?>
</td>
      </tr>
     </table>
    </td>
   </tr>
  </table>
 </div>
</body>
</html>
 


Wenn ich diese Datei auf meinem lokalen Server öffne, sehe ich genau das, was ich euch reinkopiert habe. Der Witz ist jedoch, dass die Datei funktioniert, wenn ich sie online stelle.

Den PHP-Code habe ich nicht selbst geschrieben, sondern die Datei aus Net Objects Fusion (ein Programm mit dem man einfache Homepages erstellen kann, ähnlich wie Joomla) auf den Server geladen und dort dann nur noch Sachen eingefügt (Teil von <div id="Seite"> bis zur Tabelle). Ich habe aus der bestehenden Datei nichts gelöscht oder am PHP-Code was verändert. Die Tabelle gehört zur eigentlichen Datei und stand genau unter dem body-tag.

Nun habe ich mich gefragt, ob ich beim Speichern nicht doch was falsch gemacht habe und deshalb habe ich die Index-PHP-Datei im Ordner htdocs mit meiner Datei verglichen.

Notepad++
Index-PHP: UNIX / ANSI / INS
meine Datei: DOS-WINDOWS / UTF-8 / INS

Kann es sein, das XAMPP Dateien mit UTF-8 oder UNICODE nicht lesen kann? Oder liegt der Fehler ganz woanders?
Wenn ich die Index-PHP-Datei mit Firefox öffne, erhalte ich die Fehlermeldung, die im PHP-Code steht: Something is wrong with the XAMPP installation :-(
Was habe ich falsch gemacht?

Wäre echt super, wenn ihr mir helfen könntet.

Liebe Grüße
Poison of the Cursed
Last edited by deepsurfer on 19. May 2010 01:58, edited 1 time in total.
Reason: Titel Änderung auf "gelöst"
Poison of the Cursed
 
Posts: 31
Joined: 27. April 2010 17:56

Re: Fehler bei PHP

Postby Altrea » 27. April 2010 22:09

Huhu,

Poison of the Cursed wrote:Kann es sein, das XAMPP Dateien mit UTF-8 oder UNICODE nicht lesen kann?

UTF-8 ist ein weit verbreiteter Zeichensatz im Web. Du musst nur darauf achten, dass du kein Byte-Order-Mark setzt (wird von einigen Browsern nicht verstanden). Dieses wär nur bei UTF-16 und Dateien die Unicode Zeichensatz + application/xhtml+xml header versendet werden notwendig.

Poison of the Cursed wrote:Oder liegt der Fehler ganz woanders?

Irgendwo anders :D

Poison of the Cursed wrote:Wenn ich die Index-PHP-Datei mit Firefox öffne, erhalte ich die Fehlermeldung, die im PHP-Code steht: Something is wrong with the XAMPP installation :-(
Was habe ich falsch gemacht?

Wie öffnest du die Datei denn genau? Was steht in der Adresszeile deines Browsers?

Poison of the Cursed wrote:Wäre echt super, wenn ihr mir helfen könntet.

Ich bemühe mich, versprochen :mrgreen:
We don't provide any support via personal channels like PM, email, Skype, TeamViewer!

It's like porn for programmers 8)
User avatar
Altrea
AF Moderator
 
Posts: 11926
Joined: 17. August 2009 13:05
XAMPP version: several
Operating System: Windows 11 Pro x64

Re: Fehler bei PHP

Postby Poison of the Cursed » 29. April 2010 20:31

Hallo,

ich habe den Fehler gefunden.

Ich Schaf, habe den Apache-Server gar nicht richtig geöffnet. Dann kann es natürlich nicht klappen. (Herr, wirf Hirn vom Himmel!!)

Nachdem ich den Server gestartet habe, machte ich den Test mit dem einfachen Code:

Code: Select all
<?php
echo "Hello World";
?>


Und es funktioniert!!!!!

Allerdings habe ich jetzt eine andere Frage.
Auf der Suche nach dem Fehler, bin ich ja über diese UNICODE/UTF-8 Sache gestolpert. Bis jetzt hatte ich mir keine Gedanken darüber gemacht, wie ich die Dateien in meinem Notepad abspeichere. Voreingestellt ist die Kodierung ANSI und das hat bei den HTML-Seiten mit der Eingabe charset="ISO-8859-1" auch funktioniert.

Nun habe ich in einem Forum gelesen, man soll seine Dateien immer mit der Kodierung UTF-8 und der Eingabe charset="UTF-8" speichern. Egal, ob HTML- oder PHP-Datei. Auf "php-einfach.de" wird jedoch davon abgeraten, weil es mehr Speicherplatz braucht.

Zitat:
UTF-8 ist eine andere Zeichenkodierung, die zur Familie der Unicode Zeichenkodierung gehört. Es ermöglicht mehr Zeichen als z.b ISO-8859-1 zu speichern und zu nutzen. Dabei lohnt sich die Verwendung nur dann, wenn man wirklich wenn man z.b Franzöisch, Deusch, Arabisch usw. in derSeite verwenden möchte. Benötigt man z.b aber nur Deutsch, ist es besser man nutzt ISO-8859-1.

Was benutzt man den nun? Gibt es einige Richtlinien, an die man sich halten kann, bei der Wahl des charset?

Liebe Grüße
Poison
Poison of the Cursed
 
Posts: 31
Joined: 27. April 2010 17:56

Re: Fehler bei PHP

Postby Altrea » 29. April 2010 21:06

Mit solchen Fragen löst man schnell einen Glaubenskrieg aus :D

UTF-8 ist sehr eng an den ANSI STandard angelehnt. Soll heißen, die ersten 128 Zeichen (da stecken zum Beispiel alle 26 zeichen des Alphabets in groß- und Kleinschreibung, Satzzeichen, und ein paar andere zu) des UTF-8 Zeichensatzes sind identisch mit dem ANSI-Zeichensatz. Das bedeutet auch, dass diese Zeichen jeweils nur 1 Byte in Anspruch nehmen.
Zeichen wie deutsche Umlaute nehmen 2 Byte in Anspruch. Dass UTF-8 also mehr Speicherplatz beansprucht ist fast nicht wahr und zu vernachlässigen.

Was du letztendlich für einen Zeichensatz wählst würde ich von mehreren Faktoren abhängig machen.
Was für einen Zeichensatz verwendest du bei der Datenbank? Gerade in der Kommunikation zwischen Datenbank und Scriptsprache kann es bei unterschiedlichen Zeichensätzen schnell zu Problemen kommen, wenn man nicht genau darauf achtet.
Ist deine Seite darauf ausgerichtet irgendwann mal internationales Publikum anzusprechen (ob nun durch Usereingabe oder durch Übersetzungen der Seite)? Dann ist UTF-8 sicher eine gute Wahl.

Ich habe mir angewöhnt ganz auf UTF-8 zu setzen. So habe ich immer meine mir bekannten charset-Zeilen im Quelltext, ich kann mir sicher sein, dass es keine Probleme mit meiner Datenbank gibt wo ich standardmäßig auch auf UTF-8 setze, ich komme nicht in bedrängnis meine Zeichenkodierung irgendwann in ferner Zukunft umzustellen, wenn ich doch mal japanisches Publikum ansprechen möchte, etc etc. Ein bißchen seine gewohnte Umgebung als Programmierer zu schaffen ist ja auch was schönes :D
We don't provide any support via personal channels like PM, email, Skype, TeamViewer!

It's like porn for programmers 8)
User avatar
Altrea
AF Moderator
 
Posts: 11926
Joined: 17. August 2009 13:05
XAMPP version: several
Operating System: Windows 11 Pro x64

Re: Fehler bei PHP

Postby Poison of the Cursed » 01. May 2010 21:20

Hallo wole, hallo Altrea,

vielen Dank für eure Hilfe.
Da ich Anfänger bin, werde ich sie sicher noch oft in Anspruch nehmen müssen :mrgreen:

Liebe Grüße
Poison
Poison of the Cursed
 
Posts: 31
Joined: 27. April 2010 17:56


Return to XAMPP für Windows

Who is online

Users browsing this forum: No registered users and 46 guests