via PHP erzeuhte HTML-Taabelle mit Javascript in HTML Seite einbinden

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

  • via PHP erzeuhte HTML-Taabelle mit Javascript in HTML Seite einbinden

    hallo, ich würd gern eine via PHP generierte Tabelle inclusive Inhalt in HTML Seiten einbinden, ich hab es mit JS versucht, aber irgendwie gibt mir die Seite nichts aus.

    mit bildern klappt es wunderbar (document.write)

    hier ist mal der bisherige Code
    PHP-Code:
    <?php
    include("../include/config.php");
    $frage_data=mysql_query("SELECT * FROM uf_fragen WHERE id='$_GET[id]'");
    $frage=mysql_fetch_array($frage_data);
    echo 
    "document.write('";
    echo 
    "<table>";
    echo 
    "<tr>";
    echo 
    "<td colspan='2' align='center'>";
    echo 
    "<b>Umfrage</b>";
    echo 
    "</td>";
    echo 
    "</tr>";
    echo 
    "<tr>";
    echo 
    "<td colspan='2'>" .$frage[frage]. "</td>";
    echo 
    "</tr>";
    $i=1
    $antwort_data=mysql_query("SELECT * FROM uf_antworten WHERE umfrage_id='$_GET[id]'");
    while(
    $antwort=mysql_fetch_array($antwort_data))
    {
    echo 
    "<tr><td>" .$i"</td><td>" .$antwort[antwort]."</td></tr>";
    $i++;
    }
    echo 
    "<tr><td colspan='2' align='center'><input type='button' value='abstimmen' onClick=\"window.open('abstimmen.php?id=$_GET[id]','umfrage','width=300, height=400, toolbar=no')\"></td></tr></table>";
    echo 
    "')";


    ?>
    kann mir jemand den Fehler verraten?
    Ich komm nicht drauf.

    So versuche ich die Seite einzubinden:
    Code:
    <SCRIPT type="text/javascript" SRC="http://linux/counter/umfragen/index.php?id=1"></script>
    Anwälte in Vulkane werfen -
    Wer anderen eine Bratwurst brät, der besitzt ein Bratwurstbratgerät!

  • #2
    document.write() verträgt keine zeilenumbrüche.

    Code:
    document.write('der inhalt, der geschrieben wird');
    // ^^ gut
    
    document.write('der inhalt, 
    der geschrieben 
    wird');
    // ^^ falsch
    entweder einzeilig schreiben oder document.write() je zeile einsetzen.
    Kissolino.com

    Kommentar


    • #3
      danke für den Tip,
      ich hab es direkt mal ausprobiert, aber die Ausgabe bleibt immernoch weiss :-/

      Der Code sieht nun folgendermassen aus:
      PHP-Code:
      <?php
      include("../include/config.php");
      $frage_data=mysql_query("SELECT * FROM uf_fragen WHERE id='$_GET[id]'");
      $frage=mysql_fetch_array($frage_data);
      echo 
      "document.write('<table><tr><td colspan='2' align='center'><b>Umfrage</b></td></tr><tr><td colspan='2'>');";
      echo 
      "document.write('$frage[frage]</td></tr>');";
      $i=1
      $antwort_data=mysql_query("SELECT * FROM uf_antworten WHERE umfrage_id='$_GET[id]'");
      while(
      $antwort=mysql_fetch_array($antwort_data))
      {
      echo 
      "document.write(<tr><td>$i</td><td>$antwort[antwort]</td></tr>');";
      $i++;
      }
      echo 
      "document.write('<tr><td colspan='2' align='center'><input type='button' value='abstimmen' onClick=\"window.open('abstimmen.php?id=$_GET[id]','umfrage','width=300, height=400, toolbar=no')\"></td></tr></table>')";
      ?>
      Irgendwo muss da ein mächtiger Denkfehler drin sein :-/

      ich sitze da nun schon seid gestern abend dran.

      Wenn ich die PHP-Seite direkt aufrufe, dann zeigts mir die Tabelle incl. dynamischen Inhalt an.
      Nur eingebunden als Script bleibt die Seite leer
      Anwälte in Vulkane werfen -
      Wer anderen eine Bratwurst brät, der besitzt ein Bratwurstbratgerät!

      Kommentar


      • #4
        ein ' innerhalb des JS beendet den string. das musst du escapen.
        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


        • #5
          auch bei der escapeten (schreibt man das so?) version ändert sich da nix :-/

          bin ich denn echt so dähmlich? (keine Antwort erforderlich)

          Hier mal der Code:
          PHP-Code:
          <?php
          include("../include/config.php");
          $frage_data=mysql_query("SELECT * FROM uf_fragen WHERE id='$_GET[id]'");
          $frage=mysql_fetch_array($frage_data);
          echo 
          "document.write('<table><tr><td colspan=\'2\' align=\'center\'><b>Umfrage</b></td></tr><tr><td colspan=\'2\'>');";
          echo 
          "document.write('$frage[frage]</td></tr>');";
          $i=1
          $antwort_data=mysql_query("SELECT * FROM uf_antworten WHERE umfrage_id='$_GET[id]'");
          while(
          $antwort=mysql_fetch_array($antwort_data))
          {
          echo 
          "document.write(<tr><td>$i</td><td>$antwort[antwort]</td></tr>');";
          $i++;
          }
          echo 
          "document.write('<tr><td colspan=\'2\' align=\'center\'><input type=\"button\" value=\"abstimmen\" onClick=\'window.open(\'abstimmen.php?id=$_GET[id]\',\'umfrage\',\'width=300, height=400, toolbar=no\')\"></td></tr></table>')";
          ?>
          Das ist alles escaped, aber das Forum schluckt die \
          Anwälte in Vulkane werfen -
          Wer anderen eine Bratwurst brät, der besitzt ein Bratwurstbratgerät!

          Kommentar


          • #6
            mal ne andere frage .... wieso schreibst du die daten via JS eigentlich ins dokument?
            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


            • #7
              Original geschrieben von Abraxax
              mal ne andere frage .... wieso schreibst du die daten via JS eigentlich ins dokument?
              weil die Gleiche Umfrage auf mehreren Webseiten (teilweise ohne PHP Unterstützung) laufen soll.
              Anwälte in Vulkane werfen -
              Wer anderen eine Bratwurst brät, der besitzt ein Bratwurstbratgerät!

              Kommentar


              • #8
                aso ... dann checke mal das escapen bei dem window.open(). hier habe ich vorhin noch fehler gesehen. ggfls musst du doppelt escapen.
                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


                • #9
                  Ich habe das Script nun nochmal komplett umgestrikt, aber der Fehler ist noch der gleiche.
                  Direkt aufgerufen funktioniert das script genau wie es soll.

                  Aber wenn ich es via:
                  Code:
                  <SCRIPT SRC="http://linux/counter/umfragen/ddddd.php?id=1"></script>
                  aufrufe, sagt mir die JavaScript-Konsole des Mozilla folgendes:
                  Fehler: syntax error
                  Quelldatei: http://linux/counter/umfragen/ddddd.php?id=1
                  Zeile: 1
                  Quellcode:
                  <script type="text/javascript">
                  Laut selfhtml ist die Zeile aber richtig :-/

                  Hier ist nochmal der aktuelle Code:
                  PHP-Code:
                  <script type="text/javascript">
                  <?php
                  include("../include/config.php");
                  $frage_data=mysql_query("SELECT * FROM uf_fragen WHERE id='$_GET[id]'");
                  $frage=mysql_fetch_array($frage_data);
                  ?>

                  document.write('<table><tr><td colspan=\'2\' align=\'center\'><b>Umfrage</b></td></tr><tr><td colspan=\'2\'>');
                  document.write('<?php echo $frage[frage]; ?></td></tr>');
                  <?php
                  $i
                  =1;
                  $antwort_data=mysql_query("SELECT * FROM uf_antworten WHERE umfrage_id='$_GET[id]'");
                  while(
                  $antwort=mysql_fetch_array($antwort_data))
                  {
                  ?>
                  document.write('<tr><td><?php echo $i?></td><td><?php echo $antwort[antwort]; ?></td></tr>');
                  <?php
                  $i
                  ++;
                  }
                  ?>
                  document.write('<tr><td colspan=\'2\' align=\'center\'><input type=\'button\' value=\'abstimmen\' onClick=\"window.open(\'abstimmen.php?id=<?php echo $_GET[id];?>\',\'umfrage\',\'width=300, height=400, toolbar=no\')\"></td></tr></table>');
                  </script>
                  Anwälte in Vulkane werfen -
                  Wer anderen eine Bratwurst brät, der besitzt ein Bratwurstbratgerät!

                  Kommentar


                  • #10
                    das ist ein JS fehler. und ich habe gesagt ,dass du dein window.open() mal prüfen sollst.
                    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
                      Original geschrieben von Abraxax
                      das ist ein JS fehler. und ich habe gesagt ,dass du dein window.open() mal prüfen sollst.
                      ja, das window.open() wirft aber keinen Fehler raus, weder beim laden noch beim aufrufen.
                      Beim Aufruf öffnet sich das Fenster genau wie es soll.
                      Anwälte in Vulkane werfen -
                      Wer anderen eine Bratwurst brät, der besitzt ein Bratwurstbratgerät!

                      Kommentar


                      • #12
                        Original geschrieben von flyingMiATA
                        Aber wenn ich es via:
                        Code:
                        <SCRIPT SRC="http://linux/counter/umfragen/ddddd.php?id=1"></script>
                        aufrufe, sagt mir die JavaScript-Konsole des Mozilla folgendes:

                        Fehler: syntax error
                        Quelldatei: http://linux/counter/umfragen/ddddd.php?id=1
                        Zeile: 1
                        Quellcode:
                        <script type="text/javascript">
                        natürlich ist diese zeile falsch - <script ...> ist ein HTML-tag, der hat doch in einer externen javascript-datei nichts zu suchen.
                        wenn du es auf diese weise einbindest, muss der script-tag natürlich raus.

                        Laut selfhtml ist die Zeile aber richtig :-/
                        wenn du das javascript direkt im dokument notierst, ja - aber nicht, wenn du es in eine externe datei auslagerst.
                        I don't believe in rebirth. Actually, I never did in my whole lives.

                        Kommentar


                        • #13
                          ich könnt dich knuddeln (nein, keine angst bekommen!!!)

                          danke dir
                          *ditsch* nein, doofer Fehler, doofer Fehler, doofer Fehler

                          aber nun funzt es wunderbar

                          Danke dir
                          Anwälte in Vulkane werfen -
                          Wer anderen eine Bratwurst brät, der besitzt ein Bratwurstbratgerät!

                          Kommentar

                          Lädt...
                          X