• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

unexpected T_STRING.. Wo?

Status
Für weitere Antworten geschlossen.
M

matibaski

Guest
Moin!!
Habe mal ein Problem..

Nämlich:
Ich habe eine Konfiguration bei meinem CMS..
Die ist so, dass wenn man draufkommt, dass man zuerst als Sicherheit das Passwort eingeben muss..

Wenn dies stimmt, dann kommt man auf eine Seite, wo man auswählen kann, was man ändern will. Momentan auf Passwort und Dateienpfad basiert.

Diese Datei, zum auswählen sieht so aus:
PHP:
<?php
include"config.php";
$pword = $passwort;
if($_REQUEST['Passwort'] == $passwort)
{
$Zugangspasswort = $pword;
        if($_SESSION['Passwort'] == $Zugangspasswort)
        {
         echo'<form method="POST" action="admin.php?site=save">';
         echo'<p><input type="radio" value="Passwort" name="Passwort"> Passwort ändern<br>';
         echo'<input type="radio" value="Pfad" name="Pfad"> Pfad ändern<br>';
         echo'<br>';
         echo'<input type="submit" value="Auswählen" name="submit"></p>';
         echo'</form>';
        }
        else 
        {
         echo 'Ihr Passwort ist nicht gültig!<br />';
         echo '<a href=javascript:history.back()>Zurück</a>';
        }
}
else
{
echo 'Ihr Passwort ist nicht gültig!<br />';
echo '<a href=javascript:history.back()>Zurück</a>';
}

Hier kann man also auswählen was man ändern will..

Wenn man etwas ausgewählt hat, kommt man auf diese Datei:
PHP:
<?php
  if($_REQUEST['Passwort'])
  {
   echo'<form method="POST" action="admin.php?site=write">';
   echo'Neues Passwort:<br>';
   echo'<input type="password" name="Passwort" size="20"><br>';
   echo'<input type="submit" value="Speichern" name="submit"></p>';
   echo'</form>';
  }

  if($_REQUEST['Pfad'])
  {
   echo'<form method="POST" action="admin.php?site=write">';
   echo'Neuer Pfad:<br>';
   echo'<input type="text" name="Pfad" size="20"><br>';
   echo'<input type="submit" value="Speichern" name="submit"></p>';
   echo'</form>';
  }
?>

Je, nachdem was ausgewählt wurde, kommt ein anderes Feld.
Wenn man auf Speichern klickt, dann kommt man auf diese Datei, die es schreibt:
PHP:
<?php
include"config.php";
$config = "config.php"; // Datei wird bestimmt

if($_REQUEST['Passwort'] // Wenn Passwort geändert wurde,
{
 $handle = fopen($config,"w+") // Datei zum schreiben öffnen

   fwrite( $handle, '<?php' . "\n");
   fwrite( $handle, '$passwort = "' . $_REQUEST['Passwort'] . '";' . "\n");
   fwrite( $handle, '$pfad = "' . $pfad . '";' . "\n");
   fwrite( $handle, '?>' . "\n");
  
   fclose($handle); // Ausführung beenden
   echo "Passwort geändert.<br>Sie müssen sich erneut einloggen.<br><br>Klicken Sie <a href=index.php>hier</a>";
}

if($_REQUEST['Pfad'] // Wenn Pfad geändert wurde,
{
 $handle = fopen($config,"w+") // Datei zum schreiben öffnen

   fwrite( $handle, '<?php' . "\n");
   fwrite( $handle, '$passwort = "' . $passwort . '";' . "\n");
   fwrite( $handle, '$pfad = "' . $_REQUEST['Pfad'] . '";' . "\n");
   fwrite( $handle, '?>' . "\n");
  
   fclose($handle); // Ausführung beenden
   echo "Pfad geändert.";
}
?>

Es existiert bereits eine config.php, die so aussieht:
PHP:
<?php
$passwort = "passwort";
$pfad = "pfad/der/dateien/";
?>

Und wenn man den pfad ändern will, dann soll es das Passwort ja behalten.
Also so:
PHP:
   fwrite( $handle, '<?php' . "\n");
   fwrite( $handle, '$passwort = "' . $passwort . '";' . "\n");
   fwrite( $handle, '$pfad = "' . $_REQUEST['Pfad'] . '";' . "\n");
   fwrite( $handle, '?>' . "\n");
$passwort ist ja in config.php definiert..
Diese ist oben eingecludet worden.

Umgekehr ist es, wenn man das Passwort ändert:
PHP:
if($_REQUEST['Passwort'] // Wenn Passwort geändert wurde,
{
 $handle = fopen($config,"w+") // Datei zum schreiben öffnen

   fwrite( $handle, '<?php' . "\n");
   fwrite( $handle, '$passwort = "' . $_REQUEST['Passwort'] . '";' . "\n");
   fwrite( $handle, '$pfad = "' . $pfad . '";' . "\n");
   fwrite( $handle, '?>' . "\n");
  
   fclose($handle); // Ausführung beenden
   echo "Passwort geändert.<br>Sie müssen sich erneut einloggen.<br><br>Klicken Sie <a href=index.php>hier</a>";
}

Doch beim Speichern erscheint dies hier:
Parse error: parse error, unexpected T_STRING in /home/httpd/vhosts/paradoxe.de/subdomains/habboville/httpdocs/admin/einstellungen/write.php on line 11

Doch auf Zeile 11 ist dies:
PHP:
   fwrite( $handle, '<?php' . "\n");

Welcher string ist nich bestimmt worden?

Es sollte ja stimmen.

MfG, matibaki
 
PHP:
<?php
[...]
if($_REQUEST['Passwort'] // Wenn Passwort geändert wurde,
{
$handle = fopen($config,"w+") // Fehler !!!!!!!!!!!!!!!!! SEMILOKON

   fwrite( $handle, '<?php' . "\n");
   fwrite( $handle, '$passwort = "' .
[...]
?>
 
Zuletzt bearbeitet von einem Moderator:
Ne liegt nicht an dem.
Hab mal das ; eingefügt und aufgeladen.

Es kam:
unexpected ';'

Woran liegt es dann?
 
öhm wie wäre es, wenn du die Klammer schließt? :)
PHP:
 if($_REQUEST['Passwort']) // FEHLER WEIL KLAMMER FEHLT
{
 $handle = fopen($config,"w+"); // Datei zum schreiben öffnen

   fwrite( $handle, '<?php' . "\n");
   fwrite( $handle, '$passwort = "' . $_REQUEST['Passwort'] . '";' . "\n");
   fwrite( $handle, '$pfad = "' . $pfad . '";' . "\n");
   fwrite( $handle, '?>' . "\n");
  
   fclose($handle); // Ausführung beenden
   echo "Passwort geändert.<br>Sie müssen sich erneut einloggen.<br><br>Klicken Sie <a href=index.php>hier</a>";
}
 
Danke!
Mann die kleinsten Fehler sind immer die schlimmsten. :S

Vielen Dank!

MfG, matibaski
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben