Apache2 php5

D

djtraumwelt

Foren As
Ich habe ein suse 11.1 und über yast2 einen Apache2 mit PHP5 installiert. Die index.html öffnet er, eine index.php allerdings nicht. Bei der php-seite sagt mir mein Browser, dass die Seite Fertig geladen ist, zu sehen ist allerdings ne leere weiße Seite und nichts im Quelltext zu sehen. Was hab ich falsch gemacht?

hier die PHP
Code:
<?php
 $n=0;
 $anz=0;
 for ($i=0; $i < 100; $i++) {
  $file="data/" . $i . ".txt";
  $fp=file_exists($file);
  if ($fp==TRUE) {
   if ($n==$i) {
    $n++;
   }
   $fp=fopen($file,"r");
   $ask=fread($fp,10);
   fclose($fp);
   $ask-=86400;
   if ($ask < time()) {
    unlink($file);
    $n=$i;
   } else {
    $anz++;
   }
  } else if ($i < $n) {
   $n=$i;
  }
 }
 if ($_POST['action']=="smokeone") {
  $file="data/" $n . ".txt";
  $fp=fopen($file,"w");
  fwrite($fp,time());
  fclose($fp);
 }
?>
<html><head><title>Traumwelt</title></head>
<body bgcolor="#39f" text="#000" link="#000" alink="#000" vlink="#000">
Du hast in den letzten 24 Stunden <?php echo $anz; ?> Zigaretten geraucht.<br><br>

<form action="index.php" method="POST">
 <input type="hidden" name="action" value="smokeone">
 <input type="submit" value="eine rauchen">
</form>

<a href="/">Seite neu laden</a>

</body></html>
 
Hallo,

Was sagt denn ein simples phpinfo() ?
Code:
<?php
  phpinfo();
 ?>
 
Hallo,

z.B. in Zeile 26 ist die String-Verkettung nicht korrekt. Das muss
PHP:
$file="data/" . $n . ".txt";
lauten.

Schau halt mal in deine Logfiles und stell den Debuglevel hoch, wenn es das nicht ist.

cu
 
Wenigstens sagts was. Es ging mehr darum ob dein PHP Interpreter überhaupt funktioniert. Und jo, tut er.. :-P

Du kannst (und solltest) die Datei wieder löschen. Da wird wohl der Hund in deiner PHP-Datei begraben sein. Hast du es denn schon mal mit anderen Dateien versucht oder nur mit dieser?

Edit: mit slackfans Verbesserung sollte es wenigstens was anzeigen. http://muling.lu/tmp.php
 
Zuletzt bearbeitet:
vielen dank slackfan, genau das war auch der Fehler, ich hatte nen Punkt vergessen, deshalb parse error
.
.
.
EDIT (autom. Beitragszusammenführung) :
.

jetzt hab ich nochmal n Problem: Wieso sagt er, da wär ein "undefined Index action in line 25"?
PHP:
if ($_POST['action']=="smokeone") {
 
Zuletzt bearbeitet:
PHP:
if (isset($_POST['action'])) {
    if ($_POST['action'] === "smokeone") {
        $file="data/" . $n . ".txt";
        $fp=fopen($file,"w");
        fwrite($fp,time());
        fclose($fp);
    }
}
 
das behebt mein problem nicht so ganz. isset liefer jetzt immer false zurück, auch wenn ich den button gedrückt habe, wobei der Wert ja dann gesetzt sein müsste.
 
Vielleicht solltest du das Rauchen aufgeben ;)

Probier mal statt isset() die Funktion array_key_exists('action', $_POST). Nachvollziehen kann ich das aber gerade nicht.
Mach auch mal einen var_dump($_POST).
 
hab den fehler gefunden: man bin ich doof:
PHP:
   $ask-=86400;
   if ($ask < time()) {
führte dazu, dass $ask immer kleiner war und demnach gelöscht wurde.
PHP:
   $ask+=86400;
muss es heißen, jetzt gehts
 

Ähnliche Themen

Aura for PHP Konfigurationsproblem

Problem mit HSPA+ Modem Huawei E353 - Installation unmöglich?

dovecot und postfix Konfiguration Problem

NagiosGrapher 1.7.1 funktioniert nicht

[PHP] Autologin-Funktion

Zurück
Oben