variable aus include

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • variable aus include

    Moin Leutz...

    Nur zur Info: habe eben mit php angefangen also verhaut mich nicht

    in einer includedatei werden defaultwerte aus einer db gelesen.

    danach wird diese Inlude.php auf anderen seiten 'includiert' ,aber in diesen seiten sind die variablen (font-style...), sind leer!

    muss ich diese variablen globalisieren oder so???

    greetz
    RoNoX

  • #2
    Nur mal ein test,

    schreibe mal das html in der datei, in die die variablen includiert werden, folgendermassen:

    <?
    echo"

    <html>
    <body>
    ";

    include(Include.php);

    echo"
    </body>
    </html>";
    ?>

    Habe das problem manchmal auch, dass variablen einer include datei in html

    <html>
    <body>
    <? include(Include.php);?>
    </body>
    </html>

    nicht verfügbar sind, weil die Include.php eine Aktion wie SQL ausführt um variablen zu generieren.

    Kommentar


    • #3
      genau so hab ich es ja.

      in der header_inc.php wird aus der db die styles gelesen, und gleich per echo ausgegeben.

      diese header_inc.php wird in der index.php includiert, und in der index brauch ich noch eine variable, die bereits in der header_inc.php angelegt wird.

      aber die ist immer leer.

      RoNoX

      Kommentar


      • #4
        Bitte vereinfacht code posten - normalerweise muss das nämlich funktionieren, weil ich gerade ein einfache CMS auf genau dieser basis programmiere und ich habe es dort auch so, nur nicht mit stylesheets sondern anderen dingen ...

        Kommentar


        • #5
          header.php

          PHP-Code:
          $sql="select * from conf"

          $rec=mysql_db_query($dbname,$sql,$db);
          echo 
          $admin_portal_title;
          while (list(
          $portal_title,$conf_font_family,$conf_font_size,$conf_body_color,$conf_body_text,$conf_portal_bordercolor,$conf_portal_size,$conf_portal_color,$conf_portal_fontcolor) = mysql_fetch_row($rec))
          {
          echo(
          "<html>\n");
          echo(
          "<head>\n");
          echo(
          "<title>$portal_title</title>\n");
          .
          .

          config_site.php:

          PHP-Code:
          <?php
          $adminfree
          ="true";
          include( 
          "../include/config.php");
          include( 
          "../include/header.php");

          include( 
          "module.php");
          $aktion=$_GET['aktion'];
          if (
          $aktion=="title")
          {
              
          title();
          }

          ?> 

          <?
          include ("../include/footer.php");
          ?>
          und in der includierten 'module.php' wollte ich nocheinmal auf die variable $portal_title zugreifen, aber die ist immer leer.

          wie gesagt, ich arbeite erst seit 2 tagen mit php, und da kann man noch nicht alles wissen.

          greetz and thx

          RoNoX

          Kommentar


          • #6
            Sorry, kannst du noch die modul.php zeigen. wenn dort eine funktion steht, dann must du die variable nämlich globalisieren, um sie in die funktion zu bringen.

            Kommentar


            • #7
              module.php:

              PHP-Code:
              <?PHP
              function title(){

              echo(
              "<tr valign=\"top\" class=\"hintergrund\">\n");
              echo(
              "<td width=\"40%\" valign=\"top\">\n");
              echo(
              "<table width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n");

              echo(
              "<tr><td class=\"ueberschrift\" height=\"20\" colspan=\"2\">Titel &auml;ndern</td>\n</tr>\n");
              echo(
              "<form method=\"post\" action=\"safe_layout.php\">\n");
              echo(
              "<tr><td class=\"normtext\"><br>\n");
              echo(
              "<input type=\"text\" name=\"auktion_title\" size=\"30\" maxlength=\"50\" value=\"$portal_title\" class=\"textfeld\">\n");
              echo(
              "<input type=\"hidden\" name=\"aktion\" value=\"title\">\n");
              echo(
              "<input type=\"submit\" value=\"speichern\" class=\"button\">\n");
              echo(
              "<br><br><br></td>\n</tr>\n</form>\n\n");

              echo(
              "</table></td>\n");
              echo(
              "<td valign=\"top\" class=\"hintergrund\">\n");

              echo(
              "<table width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n");
              echo(
              "<tr>\n<td class=\"ueberschrift\" height=\"20\">Hinweis :</td>\n</tr>\n");

              echo(
              "<tr>\n<td class=\"normtext\">Der Titel einer Seite sollte nicht zu lang sein.</td>\n</tr>\n</table>\n");
              echo(
              "</td>\n</tr>\n");
              }
              ?>
              wo müsste man die dann globalisieren??

              greetz

              RoNoX

              Kommentar


              • #8
                <?PHP
                function title(){

                global $portal_title, $xyz, $abc; // falls du weitere brauchst

                echo("<tr valign=\"top\" class=\"hintergrund\">\n"); ...

                Damit ist Deine Variable in der Funktion verfügbar.

                Nachzulesen unter http://www.php.net/manual/de/languag...bles.scope.php
                Zuletzt geändert von ; 10.09.2002, 10:12.

                Kommentar


                • #9
                  jo man, das wars.


                  DANKE

                  RoNoX

                  Kommentar

                  Lädt...
                  X