stefansvw: Netbuilder von Stefan Ernst

Hallo,

ich benutze schon seit Jahren das CMS-Netbuilder von Stefan Ernst, welches ja leider nicht mehr weiterentwickelt wurde.

Nun mein Problem:

Es klappte alles jahrelang vorzüglich nur ich machte jetzt einen Providerwechsel von 1und1 zu 1blu und das Script läuft nur noch zur Hälfte. Ich kann mich ins Backend einloggen, sehe dort die ganzen Artikel aufgelistet, welche ich in den ganzen Jahren erstellte und komme über Direct-link auch im Frontend in die Artikel. Nur meine Datei content.php zeigt mir leider keine Introfelder mit Überschrift mehr an.

Kann mir einer einen Tip geben wieso?

Ich habe die php.ini der beiden Provider verglichen. Die einzigen Abweichungen sind folgende:

max_execution_time: 1blue = 30  1&1 = 50000
max_input_time: 1blue = 60  1&1 = -1
memory_limit: 1blue = 8M  1&1 = 40M
output_buffering= 1blue = no value  1&1 = 0
precision= 1blue = 12  1&1 = 14
safe_mode= 1blue = on  1&1 = off
upload_max_filesize = 1blue = 2M  1&1 = 20M

Wer könnte mir einen Tip geben an was es liegen könnte. Die Daten sowie die DB sind 1 zu 1 übernommen. Bis auf die Datenbase_login-Werte versteht sich.

Ich würde diese Applikation liebend gerne weiter benutzen.

Gruß
Stefan

  1. Hallo,

    hast du schonmal versucht die Einträge a la 1 und 1 umzustellen?

    output_buffering, no oder 0, ist das nicht das gleiche? Ich glaube du kannst auch garnichts hinschreiben.

    vielleicht safemode auf off?

    Wirklich kann ich dir sonst keinen Tipp geben.

    bis dann, Nostra;

    1. Hallo,

      hast du schonmal versucht die Einträge a la 1 und 1 umzustellen?

      output_buffering, no oder 0, ist das nicht das gleiche? Ich glaube du kannst auch garnichts hinschreiben.

      vielleicht safemode auf off?

      Wirklich kann ich dir sonst keinen Tipp geben.

      bis dann, Nostra;

      würde ich gerne aber ich kann die php.ini leider in meinem Vertrag nur einsehen, nicht ändern.

      output_buffering, no oder 0

      ja klar. Habe die beiden Dateien verglichen und die Unterschiede rauskopiert. Diesen Punkt hätte ich mir sparen können :-(

      Das mit dem safemode-Modus sehe ich eigentlich auch als Hauptgrund aber wie kann ich Ihn ändern, wenn ich keine Berechtigungen dazu habe.

      Wenn dies der Grund wäre, müssten dann die vollen Artikel nicht auch verschwinden?

      1. Hallo,

        Wenn dies der Grund wäre, müssten dann die vollen Artikel nicht auch verschwinden?

        Gibt es Unterschied zwischen Intro und Artikel.
        Ist Intro vielleicht eine generierte Grafik etc.pp.?

        bydey

        --
        -- noch immer ein erfolgloser <DIV> Jünger --
        1. Hallo,

          Wenn dies der Grund wäre, müssten dann die vollen Artikel nicht auch verschwinden?

          Gibt es Unterschied zwischen Intro und Artikel.
          Ist Intro vielleicht eine generierte Grafik etc.pp.?

          bydey

          nein es läuft alles gleich.

          In der datei content.php (also die datei die nicht geht)

          <?php
           $c = $content->getFolderById($fid);
           echo $c->getFolderName();
           $r = $content->getFolders($c->getLevel(),$fid);
           while($d = $content->getFolderIndex($r)) {
          ?>
          ...
           <?=$r->getTitle();?>
          ...
           <?=$r->getIntro();?>
          ...

          und in der datei s_content (die voll geht)

          ...
          <?=$r->getTitle();?>
          ...
          <?=$r->getcontent);?>
          ...

          <?php
           if($_cfg["folder_limit"] == "true") {
           $r = $content->getFolders("","",$_cfg["folder_delimiter"]);
           } else {
           $r = $content->getFolders();
           }
              while($c = $content->getFolderIndex($r)) {
          ?>

          1. Hallo,

            <?php
            $c = $content->getFolderById($fid);
            echo $c->getFolderName();
            $r = $content->getFolders($c->getLevel(),$fid);
            while($d = $content->getFolderIndex($r)) {

            Das sind alles function(s)-Aufrufe. Da kann alles Möglixhe passieren.
            Ich denke du musst die Struktur von deinem neuen Server bei dir lokal nachbilden und die Fehlermeldungen verfolgen.

            bydey

            --
            -- noch immer ein erfolgloser <DIV> Jünger --
            1. Hallo,

              <?php
              $c = $content->getFolderById($fid);
              echo $c->getFolderName();
              $r = $content->getFolders($c->getLevel(),$fid);
              while($d = $content->getFolderIndex($r)) {

              Das sind alles function(s)-Aufrufe. Da kann alles Möglixhe passieren.
              Ich denke du musst die Struktur von deinem neuen Server bei dir lokal nachbilden und die Fehlermeldungen verfolgen.

              bydey

              $content = new Content;
              $result = $content->getSingleResult($id);
              $c = $content->getIndex($result,"article");

              $option = $content->getOptions();

              Zuhause bzw. am anderen Provider habe ich es ja schon öfter und es funktionierte ohne Warnung und Error

              Ausgaben erfolgen über

              echo $ContentArray->AusgabeMethode();

              $c->getTitle();

              also keine Grafiken alles reiner DB-Content

              1. Hallo,

                Zuhause bzw. am anderen Provider habe ich es ja schon öfter und es funktionierte ohne Warnung und Error

                So wie ich es verstanden habe funktioniert es nicht, du kannst aber die Fehlermeldungen nicht so detailiert setzen.
                Also wäre es vielleicht die Umgebung lokal so nachzubilden, dass die Fehler auch hilfreiche Fehlermeldungen produzieren.

                bydey

                --
                -- noch immer ein erfolgloser <DIV> Jünger --
                1. Hallo,

                  Zuhause bzw. am anderen Provider habe ich es ja schon öfter und es funktionierte ohne Warnung und Error

                  So wie ich es verstanden habe funktioniert es nicht, du kannst aber die Fehlermeldungen nicht so detailiert setzen.
                  Also wäre es vielleicht die Umgebung lokal so nachzubilden, dass die Fehler auch hilfreiche Fehlermeldungen produzieren.

                  bydey

                  schau mal, nachdem ich den Tip von Chris eine .htaccess zu erstellen folgte kam folgendes heraus

                  http://www.waldhof07.de/news/content.php

      2. Hallo,

        wenn der Safe-Mode aktiv ist, darft Du die Dateien nicht per FTP auf den Webspace laden, sondern per Script...

        Dann gehören die Directories und Files dem PHP-Prozess und der kann dann damit machen, was er will.

        LG
        Chris

        1. Hallo,

          Hallo,

          wenn der Safe-Mode aktiv ist, darft Du die Dateien nicht per FTP auf den Webspace laden, sondern per Script...

          Dann gehören die Directories und Files dem PHP-Prozess und der kann dann damit machen, was er will.

          Heisst das man muss sich ein file_upload-script schreiben oder hochladen?

          bydey

          --
          -- noch immer ein erfolgloser <DIV> Jünger --
          1. Hallo,

            Heisst das man muss sich ein file_upload-script schreiben oder hochladen?

            Ja, das wäre eine Lösung.
            Das Script selber kann man noch mit FTP hochladen. Die durch das Script erzeugten Rechte gelten dann eben ab der nächsten Verzeichnisebene.

            LG
            Chris

            1. Hallo,

              Heisst das man muss sich ein file_upload-script schreiben oder hochladen?

              Ja, das wäre eine Lösung.
              Das Script selber kann man noch mit FTP hochladen. Die durch das Script erzeugten Rechte gelten dann eben ab der nächsten Verzeichnisebene.

              LG
              Chris

              http://www.waldhof07.de/info.php

        2. Hallo,

          wenn der Safe-Mode aktiv ist, darft Du die Dateien nicht per FTP auf den Webspace laden, sondern per Script...

          Dann gehören die Directories und Files dem PHP-Prozess und der kann dann damit machen, was er will.

          LG
          Chris

          das verstehe ich nicht ganz. Ich habe die Dateien per FTP auf den Server gestellt und über ein Setup installiert.

          Du meinst ich soll die Dateien Packen (gz z.B) auf dem server wiederrum auspacken und dann das Setup durchspielen.

          Ich habe es zuhause (XXamp) auch schon im Safe-Mode off sowie on und mit all den anderen Einstellungen auf dem nicht funktionierenden Server  versucht. Es lief mit Safe-Mode off sowie on positiv.

          Ich verzweigle noch

  2. Hallo,

    max_execution_time: 1blue = 30  1&1 = 50000
    max_input_time: 1blue = 60  1&1 = -1
    memory_limit: 1blue = 8M  1&1 = 40M
    output_buffering= 1blue = no value  1&1 = 0
    precision= 1blue = 12  1&1 = 14
    safe_mode= 1blue = on  1&1 = off
    upload_max_filesize = 1blue = 2M  1&1 = 20M

    register_globals

    Ich vermute, dass Du Dir schon alle möglichen Fehlermeldungen besorgt und angeschaut hast? Welche Einstellung hat denn

    error_reporting

    LG
    Chris

    1. Hallo,

      max_execution_time: 1blue = 30  1&1 = 50000
      max_input_time: 1blue = 60  1&1 = -1
      memory_limit: 1blue = 8M  1&1 = 40M
      output_buffering= 1blue = no value  1&1 = 0
      precision= 1blue = 12  1&1 = 14
      safe_mode= 1blue = on  1&1 = off
      upload_max_filesize = 1blue = 2M  1&1 = 20M

      register_globals

      Ich vermute, dass Du Dir schon alle möglichen Fehlermeldungen besorgt und angeschaut hast? Welche Einstellung hat denn

      error_reporting

      LG
      Chris

      Die Einstellung ist 2039. Das dumme an allem ist ich kann die php.ini nur einsehen aber nicht ändern. Sonst hätte ich schon mit anpassen begonnen. :-(

      Habe halt nur ein kleinen Webhosting-Vertrag

      1. Hallo,

        register_globals
        error_reporting

        Läuft PHP als Modul?
        Hast Du .htaccess zur Verfügung?

        Dann pobier aus:

        ###  .htaccess
        php_value error_reporting 2047
        php_value register_globals on

        Wobei ich zweiteres nur zum Testen sinnvoll fände. Allerdings würde es wahrscheinlich unangemessen hoher Aufwand sein, das ganze Script nach RG-OFF umzuschreiben :-(

        LG
        Chris

        1. Hallo,

          register_globals
          error_reporting

          Läuft PHP als Modul?
          Hast Du .htaccess zur Verfügung?

          Dann pobier aus:

          ###  .htaccess
          php_value error_reporting 2047
          php_value register_globals on

          Wobei ich zweiteres nur zum Testen sinnvoll fände. Allerdings würde es wahrscheinlich unangemessen hoher Aufwand sein, das ganze Script nach RG-OFF umzuschreiben :-(

          LG
          Chris

          endschultige für meine vieleicht dumme Frage.

          Du meinst diese .htaccess in die Root des CMS-Folders reinstellen. Im apache2-Pfad kann ich nichts erstellen bzw. editieren.

          ob es als Modul läuft weiß ich nicht in der httpd.conf steht nichts drin

          1. Hallo,

            ###  .htaccess
            php_value error_reporting 2047
            php_value register_globals on

            Du meinst diese .htaccess in die Root des CMS-Folders reinstellen. Im apache2-Pfad kann ich nichts erstellen bzw. editieren.

            In das Verzeichnis , ab dem die Einstellungen gelten sollen.
            Entweder, es gibt dann einen 500er Fehler, oder es passiert gar nichts, oder aber es klappt :-))

            LG
            Chris

            1. Hallo,

              ###  .htaccess
              php_value error_reporting 2047
              php_value register_globals on

              Du meinst diese .htaccess in die Root des CMS-Folders reinstellen. Im apache2-Pfad kann ich nichts erstellen bzw. editieren.

              In das Verzeichnis , ab dem die Einstellungen gelten sollen.
              Entweder, es gibt dann einen 500er Fehler, oder es passiert gar nichts, oder aber es klappt :-))

              LG
              Chris

              folgende Ergebnis:

              schaut es Euch an

              http://www.waldhof07.de/news/content.php

              das ist die Seite mit dem Gesamtinhalt die ohne notice "undefinierte variable" zuvor funktionierte

              http://www.sv.waldhof07.de/news/s_content.php?id=s2006-01-17-5417

              Wenn Ihr Fussballer seit und was gegen diese Seite habt. Schaut bitte drüber weg ;-)

              1. Hallo,

                ###  .htaccess
                php_value error_reporting 2047
                php_value register_globals on

                Du meinst diese .htaccess in die Root des CMS-Folders reinstellen. Im apache2-Pfad kann ich nichts erstellen bzw. editieren.

                In das Verzeichnis , ab dem die Einstellungen gelten sollen.
                Entweder, es gibt dann einen 500er Fehler, oder es passiert gar nichts, oder aber es klappt :-))

                LG
                Chris

                folgende Ergebnis:

                schaut es Euch an

                http://www.waldhof07.de/news/content.php

                Das hatte ich vermutet.
                Also Notices wieder ausschalten (error_reporting 2039)
                und register_globals auf 'on' lassen, auch wenn das hässlich ist.

                Gib mal einen Link auf ein phpinfo()

                LG
                Chris

                1. http://www.waldhof07.de/info.php

                  1. http://www.waldhof07.de/info.php

                    die .htaccess steht nur noch auf
                    php_value register_globals on

                    1. http://www.waldhof07.de/info.php

                      die .htaccess steht nur noch auf
                      php_value register_globals on

                      Das Upload-Script kann ich das so ungefähr schreiben?

                      <?php

                      if(is_uploaded_file($_FILES['datei'][tmp_name]))
                      {
                          if($fh = fopen($_FILES['datei'][tmp_name]))
                          {
                              $buffer = fread($fh,filesize($_FILES['datei'][tmp_name]));
                              fclose($fh);
                          }
                      }

                      ?>

                      Ich muss mal kurz noch einkaufen gehen. Schaue nachher noch mal rein und Ich Danke Euch recht Herzlich für Eure Hilfe und Tips.

                      1. Hallo,

                        ich habs so übernommen und das genügt meistens.

                        <?php   ### upload.php ###

                        ini_set('track_errors','1');
                        error_reporting(E_ALL);

                        if(!isset($_POST['id']) or $_POST['id'] != strval('12345678')) die('keine Berechtigung');

                        if(!isset($_POST['ziel'])) die('kein Zielverzeichnis angegeben');

                        if(!isset($_FILES['file']['error']) or $_FILES['file']['error'] !== 0)
                          die('Kein File fehlerfrei übertragen');

                        if (!is_dir('./'.$_POST['ziel'])) die('Angegebenes Verzeichnis ist falsch');

                        if(!is_readable($_FILES['file']['tmp_name'])) die('Temprärer Upload-File nicht lesbar');

                        if(!is_writable('./'.$_POST['ziel'])) die('Zielverzeichnis nicht beschreibbar');

                        if(!copy($_FILES['file']['tmp_name'],'./'.$_POST['ziel'].'/'.basename($_FILES['file']['name'])))
                          die("PHP-Fehler: $php_errormsg");

                        echo "File kopiert";

                        ?>

                        Und die HTML-Datei dazu:

                        <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
                             "http://www.w3.org/TR/html4/transitional.dtd">
                        <HTML  style="height:100%;">
                        <HEAD>

                        <TITLE>Upload</TITLE>

                        </HEAD>

                        <BODY>
                          <form action="http://domain.tld/upload.php"
                                method="post"
                                enctype="multipart/form-data">

                        File: <input type="file" name="file" size="70"><br>
                            Verzeichnis:<input type="text" name="ziel" size="70"><br>

                        <input type="hidden" name="id" value="12345678">
                            <input type="submit" name="btn[upload]" value="Upload">

                        </form>

                        </BODY>
                        </HTML>

                        Der "Sicherheitsmechanismus" sollte anschließend nicht offen bleiben. Man könnte mit Bruteforce zu leicht eindringen.

                        LG
                        Chris

                        1. Hallo Chris,

                          mein Gott super vielen Dank. Ich werde es versuchen und morgen das Ergebnis posten.

                          Ich wünsche Euch noch einen schönen Abend.

                          Gruß
                          Stefan

                          1. Hallo Chris,

                            mein Gott super vielen Dank. Ich werde es versuchen und morgen das Ergebnis posten.

                            Ich wünsche Euch noch einen schönen Abend.

                            Gruß
                            Stefan

                            Hallo,

                            ich habe es nun mit dem Script ausprobiert.

                            Ich packte alle Dateien in eine tgz-Datei übertrug diese auf den Server. Entpackte diese dort. Nur das Ergebnis blieb leider das gleiche.

                            Gruß
                            Stefan