PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Seite ganz weiß



auron2008
21.10.2010, 13:53
Hey Leute, mal wieder en ganz dummes Problem. Undzwar ist miene Seite auf einmal ganz weiß, also nix zu sehen .

http://klammlosegeil.de/

Keine Ahnung worandas liegt. Hatte was an der header.php was geändert, was kleines. Beim speichern fiel mir dann auf, dass ich zwei header.php hatte, die eine sah aber so aus header.php~ , erst seitdem ich das ~ gelöscht habe, is nur noch eine da und leider auch alles weiß.
Das admin geht im übrigen.

mfg auron2008

Sam2004
21.10.2010, 14:27
Salopp gesagt, backup drauf hauen und dann schauen was verbockt hast^^

LG

didith1207
21.10.2010, 16:06
so wie ich das sehe geht nur die domain ohne www nicht ;)
http://www.klammlosegeil.de klappt ja :)

auron2008
21.10.2010, 18:21
ne ähmm, Klammlosegeil.de is ne andere seite ^^ . ja backup drauf is ne idee, aber ich versteh nicht warum es auf einmal alles weiß ist. die datei header.php ist in ordnung, hatte sie nochmal runtergeladen gehbat und angesehen :frusty:

Ich kann mir ja nicht mal den Quelltext im Browser anzeigen lassen )-:

auron2008
21.10.2010, 20:59
Also ab jetzt wird's ganz mysteriös, krieg ja schon angst ^^ . Hab en Backupeingespielt und nu geht's. die nicht funktionierende header.php hat im übrigen den folgenden code, den ich nie eingebaut habe.




<!-- Ticker Script Begin -->
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
<!--
function StartTicker()
{
document.NewsTicker.Zeile.value = "Bitte nutzen Sie einen aktuelleren Browser."
}
//-->
</SCRIPT>

<SCRIPT LANGUAGE="JavaScript1.2" TYPE="text/javascript">
<!--

// Tickermeldungen

// Es muessen alle drei Werte angegeben werden.

// Effekte fuer Start:
// 1: einrollen
// 2: blinken
// Effekte fuer Ende:
// 1: ausrollen
// 2: blinken

var tickernews =
[
{
meldung:"<?
$filename = 'lib/texte/ticker.txt';
$fp = fopen($filename, "r");
$inhalt = fread($fp, filesize($filename));
fclose($fp);
$inhalt = str_replace('\\', '', $inhalt);
echo nl2br($inhalt);
?>",
starteffekt:1,
endeeffekt:1
},
{
meldung:"<?
$filename = 'lib/texte/ticker2.txt';
$fp = fopen($filename, "r");
$inhalt = fread($fp, filesize($filename));
fclose($fp);
$inhalt = str_replace('\\', '', $inhalt);
echo nl2br($inhalt);
?>",
starteffekt:1,
endeeffekt:2
},
{
meldung:"<?
$filename = 'lib/texte/ticker3.txt';
$fp = fopen($filename, "r");
$inhalt = fread($fp, filesize($filename));
fclose($fp);
$inhalt = str_replace('\\', '', $inhalt);
echo nl2br($inhalt);
?>",
starteffekt:2,
endeeffekt:1
},
{
meldung:"<?
$filename = 'lib/texte/ticker4.txt';
$fp = fopen($filename, "r");
$inhalt = fread($fp, filesize($filename));
fclose($fp);
$inhalt = str_replace('\\', '', $inhalt);
echo nl2br($inhalt);
?>",
starteffekt:2,
endeeffekt:2
}
]

// Tickerparameter
var ticker_start = 500 // Wartezeit bis zur ersten Meldung

var ticker_effekt1_start_a = 75 // Darstellungsgeschwindigkeit [ms]
var ticker_effekt1_start_b = 2500 // Darstellungszeit der Meldung [ms]

var ticker_effekt2_start_max_blink = 3 // Anzahl der Blinkdarstellungen
var ticker_effekt2_start_a = 100 // Blinkgeschwindigkeit [ms]
var ticker_effekt2_start_b = 2500 // Darstellungszeit der Meldung [ms]

var ticker_effekt1_ende_a = 50 // Scrollgeschwindigkeit [ms]
var ticker_effekt1_ende_b = 100 // Wartezeit bis zur naechsten Meldung [ms]

var ticker_effekt2_ende_max_blink = 3 // Anzahl der Blinkdarstellungen
var ticker_effekt2_ende_a = 100 // Blinkgeschwindigkeit [ms]
var ticker_effekt2_ende_b = 1000 // Wartezeit bis zur naechsten Meldung [ms]

// Interne Variablen
var msgnr = 0

// Aufruf der naechsten Meldung
function nextTicker()
{
msgnr++
if(msgnr >= tickernews.length)
msgnr = 0
setTimeout("showTicker(0)", 1000)
}

// Effekte fuer Meldungsende
function hideTicker(cnt)
{
switch(tickernews[msgnr].endeeffekt)
{
// Effekt 2
case 2:
document.NewsTicker.Zeile.value = ((cnt % 2) == 1) ? tickernews[msgnr].meldung : ""
if(cnt > (2 * ticker_effekt2_ende_max_blink + 1))
setTimeout("nextTicker(0)", ticker_effekt2_ende_b)
else
setTimeout("hideTicker(" + String(cnt + 1) + ")", ticker_effekt2_ende_a)
break

// Effekt 1
default:
document.NewsTicker.Zeile.value = tickernews[msgnr].meldung.substring(cnt, tickernews[msgnr].meldung.length)
if(cnt >= tickernews[msgnr].meldung.length)
setTimeout("nextTicker()", ticker_effekt1_ende_b)
else
setTimeout("hideTicker(" + String(cnt + 1) + ")", ticker_effekt1_ende_a)
}
}

// Effekte fuer Meldungsanfang
function showTicker(cnt)
{
switch(tickernews[msgnr].starteffekt)
{
// Effekt 2
case 2:
document.NewsTicker.Zeile.value = ((cnt % 2) == 1) ? "" : tickernews[msgnr].meldung
if(cnt > (2 * ticker_effekt2_start_max_blink + 1))
setTimeout("hideTicker(0)", ticker_effekt2_start_b)
else
setTimeout("showTicker(" + String(cnt + 1) + ")", ticker_effekt2_start_a)
break

// Effekt 1
default:
document.NewsTicker.Zeile.value = tickernews[msgnr].meldung.substring(0, cnt)
if(cnt >= tickernews[msgnr].meldung.length)
setTimeout("hideTicker(0)", ticker_effekt1_start_b)
else
setTimeout("showTicker(" + String(cnt + 1) + ")", ticker_effekt1_start_a)
}
}

// Start des Tickers
function StartTicker()
{
// Standardmeldung
document.NewsTicker.Zeile.value = "Ticker wird geladen..."

// Ticker starten
setTimeout("showTicker(0)", ticker_start)
}

//-->
</SCRIPT>
<!-- Ticker Script Ende -->
<body onLoad="StartTicker()">
<table width="980" cellpadding="0" cellspacing="0" border="0" align="center"><tr><td valign="top" align="center">
<table style="border:solid 0px black" width="980" border="0" cellpadding="0" cellspacing="0" bgcolor="#660000">
<tr>
<td height="300" width="100%" valign="top" background="/images/header.jpg">
<div style="position:relative; top:19px; left:209px;">
<? if ($_GET['content'] != '/betteln')
@require_once ('lib/texte/alt_headerbanner.txt'); ?>
<? if ($_GET['content'] == '/betteln')
@require_once ('lib/texte/alt_headerbanner2.txt'); ?>
</div>
</td></tr>
<tr>
<td style="border:solid 0px black" bgcolor="#660000" valign="top" align="center">

</td>
</tr>
</table>
<FORM NAME="NewsTicker">
<TT><INPUT ALIGN="CENTER" TYPE="TEXT" READONLY STYLE="border: none; background-color: #660000;
color: #FFFFFF; font-size: 15; font-family: Verdana;" NAME="Zeile" SIZE=90 MAXLENGTH=500"VALUE=""></TT>
</FORM>


Hab ja nichtmal ein Newstickeraddon. Kennt zufällig jemand diesen code und hat jemand ne ahnung wie der in meine header kommt ?

cr00sy
22.10.2010, 02:14
Also ab jetzt wird's ganz mysteriös, krieg ja schon angst ^^ . Hab en Backupeingespielt und nu geht's. die nicht funktionierende header.php hat im übrigen den folgenden code, den ich nie eingebaut habe.

Hab ja nichtmal ein Newstickeraddon. Kennt zufällig jemand diesen code und hat jemand ne ahnung wie der in meine header kommt ?

Das Addon ist mir bekannt, weiß aber nicht wo man das holen kann.
Hast Du keine Logs wo Du nachschauen kannst ob jemand anderes auf dein FTP zugeriffen hat?

auron2008
22.10.2010, 06:07
^^Na Klasse.Aber davon abgesehen,wer solltesich auf meinemftp einloggen um nur die header zu verändern ? und was soll dann dieser mist mit dem Newsticker. Hab auf alle Fäller erstmal passwörter geändert ^^

breaker
22.10.2010, 06:21
Ich habe (und ich werde es wohl niemals verstehen), wieso man beim einbinden von localen Dateien ein "fopen" benötigt :D

Ein require/include (once) ist um ein vielfaches schneller, als ein Socket zu öffnen

jpwfour
22.10.2010, 10:31
... beim einbinden von localen Dateien ein "fopen" benötigt ...
Ein require/include (once) ist um ein vielfaches schneller, als ein Socket zu öffnen

Scheinbar hast du keine Ahnung von Linux internen Abläufen, und nicht einmal die PHP Dokumentation gelesen:


include() bindet eine angegebene Datei ein und führt sie aus.

Abgesehen von potentiellen Sicherheitslücken, die zwar bei korrekter Programmierung keine Rolle spielen dürften, kann man via fopen besser Fehler abfangen (Datei nicht vorhanden), spart sich den Durchlauf durch den PHP Parser (selbst wenn die Datei nur Text enthält, dauert das länger als gar kein Durchlauf), und include muss ja zwangsläufig die Datei ebenfalls per fopen öffnen.

Dein Einwand wäre in Ordnung, wenn jemand den Dateiinhalt einliest und dann per eval ausführt, aber in diesem Fall bei reinem Text spricht iwie alles gegen include :suspicious:

breaker
22.10.2010, 22:48
Scheinbar hast du keine Ahnung von Linux internen Abläufen, und nicht einmal die PHP Dokumentation gelesen:



Abgesehen von potentiellen Sicherheitslücken, die zwar bei korrekter Programmierung keine Rolle spielen dürften, kann man via fopen besser Fehler abfangen (Datei nicht vorhanden), spart sich den Durchlauf durch den PHP Parser (selbst wenn die Datei nur Text enthält, dauert das länger als gar kein Durchlauf), und include muss ja zwangsläufig die Datei ebenfalls per fopen öffnen.

Dein Einwand wäre in Ordnung, wenn jemand den Dateiinhalt einliest und dann per eval ausführt, aber in diesem Fall bei reinem Text spricht iwie alles gegen include :suspicious:

Für reine TXT-Dateien habe ich ein Parser, sollte ich diesen nicht nehmen, wäre es auf jeden Fall besser, den Inhalt dieser Dateien in die Datenbank zu legen, als ständig die ohnehin ausgelastete Festplatte weiter zu belasten (Datenbank-Verbindung steht sowieso schon und ein zusätzliches Subselect ist erst 6-7 Stellen nach dem Komma sichtbar, es ist absolut Sinnfrei, bei einer viel besuchten Seite pro User 10 Socket (oder mehr) zu öffnen, entweder man macht es vernünftig, oder man sollte die Finger davon lassen ;)

PS. Ich habe seit ca 1 Jahr erfolgreich ein Gentoo-Linux bei mir am laufen und mein Webserver (Debian) komplett selber Eingerichtet (37 Prozesse, 8GB Ram, davon noch 7,80 GB frei für Cache und 22 Domains (2 grosse Communitys) am laufen)

jpwfour
23.10.2010, 11:59
Du schreibst ja selber, wie viel RAM du hast, da du sicher weist, wie Linux Dateizugriffe und Cache regelt, solltest du wissen, dass eine statische Textdatei vermutlich (man kann das alles natürlich anders konfigurieren, dass geht ja immer :wink:) bei 10 Anfragen nur 1x von der Festplatte gelesen wurde.

Abgesehen davon ist das mit der Datenbank sicher keine schlechte Idee, nur hast du das in deinem Beitrag vorher nicht so geshrieben, sondern wolletst die Textdatei via include einbinden :yes: