[Variablen] "?>".HTML Code."<?php" verwirft die Variablen!

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

  • [Variablen] "?>".HTML Code."<?php" verwirft die Variablen!

    Ich möchte auf eine variable zugreifen, die ich in einem php skript am anfang definiert habe.

    ich habe zwischen drin in meinem php code jedoch lange HTML schnippsel und beende den php quellcode vorläufig mit dem marker "?>" liste dann meinen html code auf und dannach starte ich wieder mit "<?php" ganz normal weiter.
    Klappt ka im Prinzip auch problemlos, aber die variablen spielen da net so mit:
    im 2. php abschnitt kann ich nicht mehr auf die variablen des 1. abschnittes zugreifen! oran kann das liegen und wie kann ich das problem umgehen?
    ist das evtl. was mit dem globlas=off problem? Will und kann jedoch nichts an der php.ini verändern. es handelt sich um die akteulle Php version.

    vielen dank im voraus,
    Lars

    PS: bitte einfach formulieren. Bin noch ein neuling in sachen php! :-)

  • #2
    schwates!!!

    Zeig mal Code! (bitte keinen Pseudocode.)

    Kommentar


    • #3
      <html>
      <head>
      <title>Registrierung</title>
      </head>
      <body>

      <?php
      # habe versucht mittels global die werte allen funktionen und
      # abschnitten zugänglich zu machen
      global $databaseaddress;
      $databaseaddress = "localhost";
      global $databasename;
      $databasename = "test";
      global $databaseuser;
      $databaseuser = "administrator";
      global $databasepasswd;
      $databasepasswd = "";
      global $databasetable;
      $databasetable = "customer";
      global $webmaster;
      $webmaster = "webmaster@localhost";
      global $notifyEmailAccount;
      $notifyEmailAccount = "notify@localhost";

      function errorMsg($msg) {
      # gibt die Fehlermeldung $msg zentriert in der aktuellen Zeichenfläche aus und beednet das Skript
      print "<center>\n";
      print $msg;
      print "</center>\n</body>\n</html>";
      exit(0);
      }

      [...hier stehen noch paar mehr methoden...]


      # JETZT geht gleich deer HTML teil los!
      ?>
      <form action="customer.php" method="post" name="logindaten">
      <table border=0>
      <tr>
      <td>Login / Benutzername<super>*</super></td>
      <td><input type=text maxlength=12 size=20 name="login"></tr>
      </tr>
      <tr>
      <td>Passwort (mind. 6 Zeichen)<super>*</super></td>
      <td><input type=password maxlength=10 size=20 name="passwd1"></td>
      </tr>
      <tr>
      <td>Überprüfung Passwort<super>*</super></td>
      <td><input type=password maxlength=10 size=20 name="passwd2"></td>
      </tr>
      <tr><td colspan=2><br></td></tr>
      <tr>
      <td colspan=2>
      <input type=hidden value=2 name="step">
      <input type=submit value="weiter >>"> <input type=reset value="l&ouml;schen"></td>
      </tr>
      </table>
      </form>
      <?php

      # Und ab jetzt habe ich keinen Zugriff mehr!!
      #Sobald eben ein neuer <?php Abschnitt beginnt.

      Kommentar


      • #4
        PHP-Code:
        <input type=submit value="weiter >>"> <input type=reset value="löschen"></td
        der ist nicht ernst gemeint, oder

        nimm mal die ">>" hinter "weiter >>" raus - danke.
        (-:
        Bookmarks:·Bilder·Jobs·Recht·
        kostenloser Webkataloge-Assistent

        Kommentar


        • #5
          global ist natürlich schmarn!!!

          wo verwendest du die vars? warum postest du den teil nicht???

          Kommentar


          • #6
            Jaa hab ich. aber daran liegts net.
            Das ganze iss ja momentan eh nur test... Deswegen geht das auf ne DB mit dem namen test und user admin ohne passwort


            hier der teil, wo ich die dinger verwende:
            [...]

            if (mysql_query("INSERT INTO $databasetable ($names) VALUES ($values)",$db)) {
            $message = "Vielen Dank für die Registierung!\nBitte klicken Sie auf den folgenden Link, um die Registrierung zu vervollständigen:\n\nhttp://www.abcde.de/accept.pl?id=11233\n\nVielen Dank!";
            $subject = "Account Registrierung";
            sendEmail("info@localhost.de", $subject, $message);
            sendEmail($_POST['email'], $subject, $message);

            [...]

            Meckern tut er z.B. bei der Var $databasetable, sofern ich diese nicht wieder im 2. <?php abschnitt erneut definiere.
            Zuletzt geändert von lars.plessmann; 10.02.2004, 18:00.

            Kommentar


            • #7
              aber du gibtst die message schon aus (mit echo $message, oder?
              (-:
              Bookmarks:·Bilder·Jobs·Recht·
              kostenloser Webkataloge-Assistent

              Kommentar


              • #8
                mach mal die globals raus.

                und poste DANN den KOMPLETTEN Code. in [PHP]-Tags.

                Kommentar


                • #9
                  ich beschwere mich, dass du keine [PHP]-Tags benutzt hast!!!!

                  Kommentar


                  • #10
                    Original geschrieben von TobiaZ
                    und poste DANN den KOMPLETTEN Code. in [PHP]-Tags.
                    besser als datei-anhang. wer soll das zeug den lesen?

                    ich lösche die 2 ewig langen posts mal.

                    @lars.plessmann
                    nochmal als DATEI bitte!
                    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                    Kommentar


                    • #11
                      Sorry, jetzt als Dateianhang

                      PS: Hatte die Funktion net gesehen ;-)
                      Angehängte Dateien

                      Kommentar


                      • #12
                        $databasetable soll also bei der DB-Abfrage nicht vorhanden sein?

                        Kommentar


                        • #13
                          sach doch, dass die variablen nicht in den funktionen vorhanden sind!!!!

                          Ist ja kein wuder.

                          function xxx() {
                          global $databasetable;

                          echo $databasetable;
                          }

                          So musst du das machen!

                          Kommentar


                          • #14
                            ich hatte anfangs gar kein gobal drin.
                            und NUR ganz am anfang die globalen varablen gesetzt.
                            Als das nicht tat, habe ich eben erbneut an den erforderlichen stellen die Variablen neu defeiniert.

                            Ich möchte im prinzip GANZ am Kopf meines Php Skripts ein paar config variablen wie $datatable etc. und nicht überalle verstreut diese neu definieren.
                            Geht das mit der global variable?? wenn ja, wie? bei mir tat das jedenfalls nicht.

                            vielleicht kurzes code sample?

                            Kommentar


                            • #15
                              Guckst du dir bitte mal mein Post an!

                              Ich weiß, ich poste nicht oft Beispiele, weil ich der Meinung bin, dass man sich die ausm Manual ziehen kann. Aber in deinem Fall war ich schon mal so freundlich. Da möchte ich auch, dass man sich das mal ansieht!

                              Kommentar

                              Lädt...
                              X