| HTML, JavaScript, AJAX und CSS Probleme mit HTML? Netscape oder IE funktionieren nicht so, wie sie sollen? Stellt eure HTML-Fragen hier im Forum und diskutiert eure Probleme mit anderen Entwicklern. |
 |

14-07-2004, 11:43
|
|
flyingMiATA
Member
|
|
Registriert seit: Feb 2003
Ort: Lippstadt
Beiträge: 394
|
|
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>
|

14-07-2004, 11:50
|
Wurzel
Master  
|
|
Registriert seit: Jul 2002
Ort: double-u-upper-valley
Beiträge: 7.477
|
|
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.
__________________
-
|

14-07-2004, 11:54
|
|
flyingMiATA
Member
|
|
Registriert seit: Feb 2003
Ort: Lippstadt
Beiträge: 394
|
|
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
|

14-07-2004, 11:55
|
Abraxax
  THE REAL HAXE (Administrator)
|
|
Registriert seit: Jul 2002
Ort: neuss.nrw.de
Beiträge: 22.621
|
|
ein ' innerhalb des JS beendet den string. das musst du escapen.
|

14-07-2004, 12:03
|
|
flyingMiATA
Member
|
|
Registriert seit: Feb 2003
Ort: Lippstadt
Beiträge: 394
|
|
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>')";
?>
Zitat:
|
Das ist alles escaped, aber das Forum schluckt die \
|
|

14-07-2004, 12:08
|
Abraxax
  THE REAL HAXE (Administrator)
|
|
Registriert seit: Jul 2002
Ort: neuss.nrw.de
Beiträge: 22.621
|
|
mal ne andere frage .... wieso schreibst du die daten via JS eigentlich ins dokument?
|

14-07-2004, 12:10
|
|
flyingMiATA
Member
|
|
Registriert seit: Feb 2003
Ort: Lippstadt
Beiträge: 394
|
|
Zitat:
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.
|

14-07-2004, 13:15
|
Abraxax
  THE REAL HAXE (Administrator)
|
|
Registriert seit: Jul 2002
Ort: neuss.nrw.de
Beiträge: 22.621
|
|
aso ... dann checke mal das escapen bei dem window.open(). hier habe ich vorhin noch fehler gesehen. ggfls musst du doppelt escapen.
|

14-07-2004, 13:28
|
|
flyingMiATA
Member
|
|
Registriert seit: Feb 2003
Ort: Lippstadt
Beiträge: 394
|
|
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:
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>
|

14-07-2004, 13:28
|
Abraxax
  THE REAL HAXE (Administrator)
|
|
Registriert seit: Jul 2002
Ort: neuss.nrw.de
Beiträge: 22.621
|
|
das ist ein JS fehler. und ich habe gesagt ,dass du dein window.open() mal prüfen sollst.
|

14-07-2004, 13:32
|
|
flyingMiATA
Member
|
|
Registriert seit: Feb 2003
Ort: Lippstadt
Beiträge: 394
|
|
Zitat:
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.
|

15-07-2004, 10:15
|
wahsaga
 Moderator
|
|
Registriert seit: Sep 2001
Beiträge: 24.455
|
|
Zitat:
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.
Zitat:
|
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.
|

15-07-2004, 11:08
|
|
flyingMiATA
Member
|
|
Registriert seit: Feb 2003
Ort: Lippstadt
Beiträge: 394
|
|
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
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|