einen schon ausgelesenen wert aus der datenbank an eine zweite datei weitergeben

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

  • einen schon ausgelesenen wert aus der datenbank an eine zweite datei weitergeben

    Hallo,

    habe wieder ein kleines problem.
    wie kann ich einen wert, der schonmal aus der datenbank ausgelesen wurd, für eine zweite datei verwenden?

    mit diesem script wird die id aus der db an die datei ticker.php weitergegeben.

    PHP-Code:
    <table width="15%" border="0" cellpadding="0"> 
      <tr> 
        <td><?$site=$HTTP_GET_VARS['select']; 
    include ($site."ticker.php"); 
      ?>
      <tr> 
        <td><form method="post" action="<? $PHP_SELF; ?>"> 
    <SELECT class="leostyle" NAME="auswahl"> 
    <?php 

    include ("config.php"); 
    $query "SELECT id, station_name FROM sender"
    $result mysql_query($query); 

    while (list(
    $id$station_name) = mysql_fetch_row($result)) 

    echo 
    "<OPTION VALUE=\"$id\">$station_name</OPTION>"


    ?> 
    </SELECT><INPUT  class="leostyle" TYPE="SUBMIT" VALUE="los"></td>

    heir die ticker.php


    PHP-Code:
    <?php

    include ("config.php");

    $verbindung mysql_connect($dbhost$dbuser$dbpass);
    mysql_select_db($dbname);

    $sql "SELECT ticker_info FROM sender WHERE (id = '".$_POST['auswahl']."')";
    $result mysql_query($sql);
    echo 
    mysql_error();

    list(
    $ticker_info) = mysql_fetch_row($result);

    mysql_close($verbindung);
    ?>
    <? echo "".$ticker_info;?>
    nun möchte ich die ID, die von der ersten datei an die ticker.php übergeben wurde, nochmal in einer anderen datei benutzen.
    diese andere datei soll aber in einem frame geladen werden!!!


    Habe hier schon einiges wegen den Frames gelesen,deshalb sage ich nur.
    Ja es ist unbedingt erforderlich, daß die Datei in einem Frame geladen wird!!!
    Wie Ihr am Oberen Script sehen könnt,habe ich es mit einer Tabelle probiert. Aber die wird immer verschoben, wenn ich den Teil des php Codes, den ich in dem Frame laden will in der ticker.php lasse!

    Bin für jede ausführliche Hilfe dankbar!


    Creed

  • #2
    wenn ich dich richtig verstehe, ist javascript die lösung:
    PHP-Code:
    echo "<script type=\\"text/javascript\\">
    parent.Name_Des_Frames.location.href = \\"
    die_datei.php?id=\\"".$id."\\";
    </
    script>"; 
    sollte klappen
    Kissolino.com

    Kommentar


    • #3
      Hi Wurzel,

      danke erstmal für die Antwort.
      Aber irgendwie scheints nicht zu gehen, oder ich mache ein Fehler.


      Habe jetzt Deine Code so eingebaut.

      PHP-Code:
      <table width="15%" border="0" cellpadding="0"> 
        <tr> 
          <td><?$site=$HTTP_GET_VARS['select']; 
      include ($site."ticker.php"); 

      echo "<script type=\"text/javascript\">
      parent.play.location.href = \"player.php?id=\"".$id."\";
      </script>";
        ?>
        <tr> 
          <td><form method="post" action="<? $PHP_SELF; ?>"> 
      <SELECT class="leostyle" NAME="auswahl"> 
      <?php 

      include ("config.php"); 
      $query "SELECT id, station_name FROM sender"
      $result mysql_query($query); 

      while (list(
      $id$station_name) = mysql_fetch_row($result)) 

      echo 
      "<OPTION VALUE=\"$id\">$station_name</OPTION>"
      }
      ?> 
      </SELECT><INPUT  class="leostyle" TYPE="SUBMIT" VALUE="los"></td>
      Ist er dort richtig aufgehoben, oder muß er unter

      PHP-Code:

      echo 
      "<OPTION VALUE=\"$id\">$station_name</OPTION>"

      ?

      Oder kann es sein, daß wenn der Code an dieser Stelle richtig steht. Ich der player.php eine andere Abfrage geben muß?
      Die Abfrage ist die gleiche wie in der ticker.php nur das da wo ticker_info steht, jetzt player_typ eingetragen ist.

      Danke

      Creed

      Kommentar


      • #4
        da, wo er steht, ist $id offenbar noch nicht bekannt.

        der code sollte da eingebunden werden, wo die id bekannt ist, die tatsächlich an die andere seite übergeben werden soll.

        in der while-schleife musst du die ausgabe des js-scripts mit einer bedingung abfangen (wenn mehrere datensätze ausgelesen werden sollen), sonst hast du das script mehrfach in der html-ausgabe stehen. damit würde auch die seite im frame mehrfach aktualisiert.
        Kissolino.com

        Kommentar


        • #5
          Hi Wurzel,

          ja da habe ich schon mit gerechnet, daß es an dieser Stelle falsch war.
          Ist ja auch logisch, daß die ID erst in der ticker.php bekannt wird.

          Habe den Code nun so in die ticker.php eingebunden:

          PHP-Code:
          while (list($id) = mysql_fetch_row($result))
          {
          echo 
          "<script type=\"text/javascript\">
           parent.play.location.href = \"player.php?id=\""
          .$id."\";
          </script>"
          ;

          Nun weis ich nicht ob das so richtig ist.
          Eine Fehlermeldung bekomme ich nicht wenn ich die ticker.php aufrufe.

          Nun weis ich aber nicht, wie ich den übergebenen wert ID,- wenn diese Überhaupt übergeben wird -, in der player.php übernehme.

          Hiermit dürfte es wohl nicht gehen,weil der wert ID ja nicht von der auswahl kommt, sondern direkt als ausgelesene ID von der ticker.php.

          PHP-Code:
          <?php

          include ("config.php");

          $verbindung mysql_connect($dbhost$dbuser$dbpass);
          mysql_select_db($dbname);

          $sql "SELECT player_typ FROM sender WHERE (id = '".$_POST['auswahl']."')";
          $result mysql_query($sql);

          echo 
          mysql_error();

          list(
          $player_typ) = mysql_fetch_row($result);

          mysql_close($verbindung);
          ?>
          Komme damit nicht klar.

          Creed

          Kommentar


          • #6
            eher so:
            PHP-Code:
            $sql "SELECT player_typ FROM sender WHERE id = '".$_GET['id']."'"
            ABER : ich sagte doch ^^^wenn du das js aus der while-schleife aufrufst,
            schickst du die id bei jedem durchlauf auf die player.php ... wenn das nicht sein soll, dann if() { echo "<script .... >"; }
            Kissolino.com

            Kommentar


            • #7
              Tut mir leid,

              aber ich scheine irgendwie zu blöde dafür zu sein,daß zu verstehen!

              Besonders der Teil für die Übernahme der ID.
              Mit $GET ist ja eigentlich klar.Ich erhalte die ID in player.php.
              Aber muß nicht auch bekannt sein, woher ich die ID bekomme?

              Ich poste hier mal die 3 Scripte:


              Hier die Auswahl.

              PHP-Code:
                <tr> 
                  <td><?$site=$HTTP_GET_VARS['select']; 
              include ($site."ticker.php"); 
                ?>
                <tr> 
                  <td><form method="post" action="<? $PHP_SELF; ?>"> 
              <SELECT NAME="auswahl"> 
              <?php 

              include ("config.php"); 
              $query "SELECT id, station_name FROM sender"
              $result mysql_query($query); 

              while (list(
              $id$station_name) = mysql_fetch_row($result)) 

              echo 
              "<OPTION VALUE=\"$id\">$station_name</OPTION>"
              }
              ?> 
              </SELECT><INPUT  class="leostyle" TYPE="SUBMIT" VALUE="los"></td>

              Hier die ticker.php an die die ID übergeben wird:


              PHP-Code:
              <?php

              include ("config.php");

              $verbindung mysql_connect($dbhost$dbuser$dbpass);
              mysql_select_db($dbname);

              $sql "SELECT ticker_info FROM sender WHERE (id = '".$_POST['auswahl']."')";
              $result mysql_query($sql);
              while (list(
              $id) = mysql_fetch_row($result))
              if(
              $id

              echo 
              "<script type=\"text/javascript\">
               parent.play.location.href = \"player.php?id= \""
              .$id.";
              </script>"
              ;
              }
              echo 
              mysql_error();

              list(
              $ticker_info) = mysql_fetch_row($result);

              mysql_close($verbindung);
              ?>

              Und hier die player.php, die die ID von der ticker.php erhalten soll:


              PHP-Code:
              <?php

              include ("config.php");

              $verbindung mysql_connect($dbhost$dbuser$dbpass);
              mysql_select_db($dbname);

              $sql "SELECT player_typ FROM sender WHERE (id = '".$_GET['id']."')";
              $result mysql_query($sql);

              echo 
              mysql_error();

              list(
              $player_typ) = mysql_fetch_row($result);

              mysql_close($verbindung);
              ?>
              <?php 
              echo "".$player_typ;?>
              Weis nicht warum das nicht klappt.
              Fehlermeldungen bekomme ich keine einzige.
              Aber dennoch tut sich in der player.php nichts!
              Was mache ich Falsch oder habe ich in den Scripts vergessen?

              Gruß Creed
              Zuletzt geändert von Creed; 31.07.2003, 18:12.

              Kommentar


              • #8
                PHP-Code:
                // ticker.php -------------------------------------------------------------------
                <?php
                include ("config.php");

                $verbindung mysql_connect($dbhost$dbuser$dbpass) or die(mysql_error());
                mysql_select_db($dbname) or die(mysql_error());


                echo 
                $sql "SELECT ticker_info FROM sender WHERE id = ".$_POST['auswahl']." ";
                $result mysql_query($sql) or die(mysql_error());

                if(
                mysql_num_rows($result) > 0

                echo 
                "<script type=\\"text/javascript\\">
                 parent.play.location.href = \\"
                player.php?id=". mysql_result($result,0,"id") ."\\";
                </script>"
                ;
                }

                list(
                $ticker_info) = mysql_fetch_row($result);
                // ???? wozu ^^ , egal
                mysql_close($verbindung);
                ?>


                // player.php -------------------------------------------------------------------
                <?php

                include ("config.php");

                $verbindung mysql_connect($dbhost$dbuser$dbpass);
                mysql_select_db($dbname);

                echo 
                $_GET['id'];

                $sql "SELECT player_typ FROM sender WHERE id = ".$_GET['id']." ";
                $result mysql_query($sql) or die(mysql_error());

                if(
                mysql_num_rows($result) > 0

                echo 
                $player_typ mysql_result($result,0,"player_typ");
                }


                mysql_close($verbindung);
                ?>
                probier das mal, dann schaust du in den quelltext der ticker.php, ob dort
                tatsächlich
                parent.play.location.href = "player.php?id=X";
                steht, bzw, ob die anderen ausgaben kommen.
                Kissolino.com

                Kommentar


                • #9
                  Hi Wurzel,

                  danke Dir für den ausführlichen Code!!
                  Habe es zwar schon probiert, hatte aber eine Fehlermeldung über meine Sql Syntax bekommen.
                  Nun kann ich nicht sagen, ob es mit dem Code zusammen hängt oder mit der neuen Version von MySql, die ich gestern installiert habe.
                  Werde erstmal wieder meinen alten Server Status herstellen und Dir hier nochmal eine Nachricht geben.

                  Wollte nur kurz eine Zwischenmeldung geben. Damit Du nicht denkst jetzt hat er den Code abgegriffen und lässt nichts mehr von sich hören!!

                  Bis dann.

                  Ciao Creed

                  Kommentar


                  • #10
                    Hallo Wurzel,

                    habe Deinen Code jetzt mit meiner alten Server Konfiguration ausprobiert.
                    Leider ist die Fehlermeldung immer noch vorhanden.

                    Hier der genaue Wortlaut:

                    You have an error in your SQL syntax near '' at line 1

                    Weist Du vieleicht womit die zusammen hängen kann.
                    Oder was ich vieleicht in der Server Konfiguration ändern sollte?

                    Gruß Creed

                    Kommentar


                    • #11
                      Original geschrieben von Creed
                      Hallo Wurzel,

                      habe Deinen Code jetzt mit meiner alten Server Konfiguration ausprobiert.
                      Leider ist die Fehlermeldung immer noch vorhanden.

                      Hier der genaue Wortlaut:

                      You have an error in your SQL syntax near '' at line 1

                      Weist Du vieleicht womit die zusammen hängen kann.
                      Oder was ich vieleicht in der Server Konfiguration ändern sollte?

                      Gruß Creed
                      sorry, aber meine glaskugel liegt noch schwitzend auf der terrasse.

                      wenn du mir nicht sagst, bei welchem sql-aufruf mit welchem statement,
                      kann dir keiner helfen.
                      lass dir mal mit echo die $sql's anzeigen und zähl mal die '' und "" . ansonsten poste mal diese ausgabe.
                      Kissolino.com

                      Kommentar


                      • #12
                        Hi Wurzel,

                        jetzt bin ich schon seit 2 Tagen über deine Antwort am grübeln!


                        Was meinst Du damit?

                        wenn du mir nicht sagst, bei welchem sql-aufruf mit welchem statement,
                        kann dir keiner helfen.
                        lass dir mal mit echo die $sql's anzeigen und zähl mal die '' und "" . ansonsten poste mal diese ausgabe.

                        Meinst Du damit das ich alle Zeilen Inhalte aus der Datenbank auslesen soll?


                        Creed

                        Kommentar


                        • #13
                          ich meine:
                          PHP-Code:
                          // ein sql-statement:
                          $wert "abc123"
                          $frage_an_db "select spalten from tabelle where spalte='$wert' ";

                          // jetza:
                          echo $frage_an_db;
                          $ergebnis mysql_query($frage_an_db) or die(mysql_error()); 
                          echo $frage_an_db; gibt bei diesem beispiel aus: select spalten from tabelle where spalte='abc123'

                          also, ich möchte sehen, was bei dir dabei rauskommt ... natürlich auch mit deinen daten ... wär ja sonst blöd das ganze übrigens für die db-abfrage, bei der das script aussteigt.
                          Kissolino.com

                          Kommentar


                          • #14
                            Hi Wurzel,

                            bis auf eine Fehlermeldung habe ich da nichts raus bekommen.
                            Aber das ist jetzt auch egal.

                            Wie ich es mir gedacht hatte, liegt das Problem nicht an der SQL Datenbank sondern an den Codes in der ticker.php und der player.php.
                            Ich habe die jeweiligen Codes wie folgt abgeändert.

                            //ticker.php-----------------------------------------------------------------------------

                            PHP-Code:
                            <?php
                            include ("config.php");
                            $verbindung mysql_connect($dbhost$dbuser$dbpass);
                            mysql_select_db($dbname);

                            $sql "SELECT vgf FROM dre WHERE id = '".$_POST['auswahl']."' ";
                            $result mysql_query($sql) or die(mysql_error());

                            if(
                            mysql_num_rows($result) > 0

                            echo 
                            "<script type=\"text/javascript\">\n".
                            "  parent.vrd.location.href = \"pyer.vrd?id=".$id."\";\n".
                            "</script>\n";
                            }
                            list(
                            $qvb) = mysql_fetch_row($result);

                            mysql_close($verbindung);
                            ?>
                            //player.php----------------------------------------------------------------------------

                            PHP-Code:
                            <?php

                            include ("config.php");
                            $verbindung mysql_connect($dbhost$dbuser$dbpass);
                            mysql_select_db($dbname);

                            echo 
                            $_GET['id'];

                            $sql "SELECT bla FROM sender WHERE id = '['id']' ";
                            $result mysql_query($sql) or die(mysql_error()."<br>".$sql);

                            if(
                            mysql_num_rows($result) > 0

                            echo 
                            blamysql_result($result,0,"bla");
                            }

                            mysql_close($verbindung);
                            ?>

                            Wenn ichs so schreibe, sind die Fehlermeldungen alle weg.
                            Leider habe ich jetzt das Problem, daß die ID aus der bla.php nicht an die per.php übergeben wird. Obwohl alle wichtigen Bestandteile enthalten sind.

                            cu Creed
                            Zuletzt geändert von Creed; 18.10.2003, 16:54.

                            Kommentar


                            • #15
                              setz das mal bitte in die ticker.php:
                              PHP-Code:
                              <?php
                              include ("config.php");
                              $verbindung mysql_connect($dbhost$dbuser$dbpass);
                              mysql_select_db($dbname);

                              $sql "SELECT id,ticker_info,title_info FROM sender WHERE id = '".$_POST['auswahl']."' ";
                              // ^^ wenn du ne id haben willst, solltest du sie auch auslesen

                              $result mysql_query($sql) or die(mysql_error());

                              if(
                              mysql_num_rows($result) > 0

                              echo 
                              "<script type=\"text/javascript\">\n".
                              "  parent.play.location.href = \"player.php?id=".mysql_result($result,0,"id")."\";\n".
                              "</script>\n";
                              }

                              list(
                              $ticker_info) = mysql_fetch_row($result); // wozu ist das ???, egal

                              mysql_close($verbindung);
                              ?>
                              Kissolino.com

                              Kommentar

                              Lädt...
                              X