Was ist hier Falsch

schon mal auf gefallen? ich hab nen
echo "... dadurch wird der echo befehlt unter brochen und ich bekomme den hier

Parse error: parse error, unexpected T_STRING, expecting ',' or ';' in /home/www/nom123.freehostia.com/nom.php on line 1260

nur zur info

aber trotzdem danke ich hatte das prob schonmal habs auch gelöst aber damals mit
if ($file=="nom.php")
...

aber ich brauch das mit der $PHP_SELF Variable
 
Schonmal nachgedacht ;)
sry, aber entweder escapsed du die " dann, also \"
oder du nutzt einfache und doppelte Zeichen
echo ' <font color="red">';
echo "<font color='red'>";
echo "<font color=\"red\">":
echo '<font color=\'red\'>';

Das sind alle Möglichkeiten ;)
 
Probier's mal so: (Die Anführungszeichen von "red" müßen maskiert werden mit \


if ($file==$_SERVER["PHP_SELF"]){
echo "<font color=\"red\">$file [Deface Site]</font>";
}
else {
echo $file;
}​


Gruß,
Norbert
 
Mensch vielleicht liegts doch gar net an HTML.
Der einfachste Weg das rauszufinden wäre -> Quellcode anzeigen.
Kommt wohl niemand auf die Idee.
Steht dort weder <font color='red'>...</font> noch sonst ein font- oder span-dings, dann liegts an der Servervariablen, wie bereits erwähnt.

Vielleicht mal $php_self probieren. Oder aber auch mal schauen ob $file vielleicht keine Pfadangaben enthält, in dem Fall am besten von $_SERVER['PHP_SELF'] bzw $php_self erst den Teil des Strings nach dem letzten Slash zurückgeben lassen:


PHP:
if (isset ($php_self))
  $myfile = $php_self;
else
  $myfile = $_SERVER['PHP_SELF'];

$myfile = substr($myfile, strpos($myfile, '/')+1);
[EDIT]
Fehler meinerseits: strpos gäbe hier den ersten und nicht den letzten Slash zurück. Es gibt eine entsprechende Funktion aber ich bin zu faul die jetzt für dich rauszusuchen, müsstest sie schnell finden oder bereits kennen.
[/EDIT]


und dann den Vergleich so abändern:
PHP:
    if ($file==$myfile){
    echo "<span style=\"color: red;\">$file [Deface Site]</span>";
    }
    else {
    echo $file;
    }

Ich garantiere nicht für richtige Syntax... Habs so direkt mal runtergetippt. Evtl Parameter bei strpos / substr vertauscht.. .Kommt mal vor.

MfG,
proer
 
Probier's mal so: (Die Anführungszeichen von "red" müßen maskiert werden mit \


if ($file==$_SERVER["PHP_SELF"]){
echo "<font color=\"red\">$file [Deface Site]</font>";
}
else {
echo $file;
}​


Gruß,
Norbert

Lesen hilft ;-)
Das wurde schon geschrieben:


Schonmal nachgedacht ;)
sry, aber entweder escapsed du die " dann, also \"
oder du nutzt einfache und doppelte Zeichen
echo ' <font color="red">';
echo "<font color='red'>";
echo "<font color=\"red\">":
echo '<font color=\'red\'>';

Das sind alle Möglichkeiten ;)
 
Maskieren hilft auch nix und die einfachen kannste dir sonstwohin schieben. Weil wenn ich einfache mache ignoriert er die Variable auch bei ...'.$file.'... hab keine Ahnung warum
 
*einfache Anführungs zeichen sonstwo hinschieb*

Wenn du erwartest, das man dir hilft,
dann behalte bitte eine ordentliche Ausdrucksweise bei.

Wie ich sehe hast du nicht so viel Ahnung von php:

echo ' <font color="red"> '.$file.' </font> ' ;

klappt doch alles -.-
 
@Admi

Die neuen Browser verstehen sehr wohl den font-Tag.

@nom
Ansonsten bau einfach mal phpinfo ein, dann wird Dir angezeigt was vom Server alles zurückgegeben wird.
Und der Vorschlag von proprog hilft natürlich auch weiter, einfach mal den Inhalt der Variable per echo
ausgeben lassen, also

Code:
echo $_SERVER['PHP_SELF']

und schon siehst Du was drin steht und dann kannst Du Dir überlegen ob's für Deine Aufgabe das richtige ist.
 
Zuletzt bearbeitet:
Zurück