mysqldumper
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 01.07.2005, 17:08   #1
TP-Member
 
Benutzerbild von th_03
 
Registriert seit: Apr 2003
Ort: Ar... der Heide
th_03 ist auf einem guten Weg
Red face

Text UND PHP aus DB lesen?


Hallo an die Dynamik-Experten!

Ich scheine Denkblockade zu haben. Folgendes: Ich habe eine index.php, die aus einer SQL-Datenbank je nach URL-ID Inhalt anzeigen soll. Das tut sie auch. Nun habe ich eben im DB-Feld „content“ sowohl HTML, als auch PHP-Befehle (siehe unten Code 2) gehabt.

Wenn ich nun sage:

PHP-Code:
 <?php $Artikel $row_inhalte['content'];
// $Artikel = ereg_replace("ß", "&szlig;", $Artikel);
$Artikel ereg_replace("ö""&ouml;"$Artikel);
$Artikel ereg_replace("ä""&auml;"$Artikel);
$Artikel ereg_replace("ü""&uuml;"$Artikel);
$Artikel ereg_replace("Ö""&Ouml;"$Artikel);
$Artikel ereg_replace("Ä""&Auml;"$Artikel);
$Artikel ereg_replace("Ü""&Uuml;"$Artikel);
echo 
$Artikel?>
wird die folgende Tabelle zwar angezeigt, die PHP-Befehle jedoch ignoriert.

HTML-Code:
<table width="520" border="0" cellspacing="0" cellpadding="0">
<tr>
<th height="25" style="padding-left: 8px;"><b>Datum</b></th>
<th height="25"><b>Veranstaltung</b></th>
<th height="25"><b>Ort</b></th>
</tr>
<?php do { ?>
<tr>
<td height="5" colspan="3">&nbsp;</td>
</tr>
<tr>
<td width="150" height="40" valign="top" style="padding-left: 8px;"><b><?php echo $row_kalender['wochentag']; ?>, <?php echo $row_kalender['datum']; ?></b><br> <?php echo $row_kalender['uhrzeit']; ?> </td>
<td width="270" height="40" valign="top" >
<p class="event"><?php echo $row_kalender['veranstaltung']; ?></p></td>
<td width="100" height="40" valign="top"><?php echo $row_kalender['ort']; ?></td>
</tr>
<?php if (isset($row_kalender['bemerkung'])) { ?>
<tr valign="middle">
<td height="25" style="padding-left: 8px;"><em>Bemerkungen:</em></td>
<td colspan="2" class="bemerkung"><?php echo $row_kalender['bemerkung']; ?></td>
</tr>
<?php } ?>
<tr valign="middle">
<td height="25" colspan="3" style="padding-left: 8px;"><hr size="1" noshade color="#cc0000"></td>
</tr>
<?php } while ($row_kalender = mysql_fetch_assoc($kalender)); ?></table>

<?php } // Show if recordset not empty
	else echo "<p>Es liegen zur Zeit keine gespeicherten Termine vor.</p>"; ?>
Meine Hypothese: Der echo-Befehl gibt zwar Datenbankfelder wieder, ist aber nicht in der Lage Code zu verarbeiten. Richtig? Hilfe!

Was muss ich tun, damit meine PHP-Codes aus der Datenbank-Tabelle gelesen werden und die Tabelle (Code 2) somit gefüllt wird? Gibt es da einen anderen PHP-Befehl? (Wie ihr vielleicht merkt, habe ich gerade erst mit PHP begonnen ...)


Viele Grüße,

Torben
__________________
Moje zycie jest jak papier toaletowy: Dlugie, szare ... y do dupy!

Geändert von th_03 (01.07.2005 um 20:22 Uhr).
th_03 ist offline   Mit Zitat antworten


Alt 01.07.2005, 17:25   #2
TP-Special Mod
 
Benutzerbild von steffenk
 
Registriert seit: Feb 2005
Ort: Haan / NRW
steffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine User
Der Befehl lautet eval

Du hast ja alles in einem String. Die Funktion wertet den String aus, als wenn es PHP-Code wäre.
__________________

Typo3 · MySQLDumper · dislabs
·
manche Mühlen mahlen schneller ...
"Ich habe Rücken"
Horst Schlämmer
steffenk ist offline   Mit Zitat antworten
Alt 01.07.2005, 17:48   #3
TP-Member
 
Benutzerbild von th_03
 
Registriert seit: Apr 2003
Ort: Ar... der Heide
th_03 ist auf einem guten Weg
Ähm ... danke, aber ich bin zu blöd ... das klappt nicht:

Parse error: syntax error, unexpected T_LNUMBER in E:\apachefriends\xampp\htdocs\SC_Rothenhausen_2005\index.php(101) : eval()'d code on line 4
Ich bekomme eine Fehlermeldung, demnach ist

PHP-Code:
eval ("\$Artikel = \"$Artikel\";");
echo 
$Artikel?> 
nicht richtig. Ich bin total verwirrt. Wie muss das denn jetzt heißen? Oh Gott, ist das peinlich. Das kommt davon, wenn man seit heute Morgen am Rechner sitzt .
__________________
Moje zycie jest jak papier toaletowy: Dlugie, szare ... y do dupy!

Geändert von th_03 (01.07.2005 um 20:08 Uhr).
th_03 ist offline   Mit Zitat antworten
Alt 01.07.2005, 18:54   #4
TP-Greis
 
Benutzerbild von Boris
 
Registriert seit: Mar 2001
Ort: Berlin, Germany
Boris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKE
Nebenfrage - wieso ersetzt Du die Umlaute umständlich "manuell", und nicht z.B. mit htmlentities?
__________________
My software never has bugs. It just develops random features ...

» DevShack - die Website des freien Webentwicklers Boris
Boris ist offline   Mit Zitat antworten
Alt 01.07.2005, 19:59   #5
TP-Member
 
Benutzerbild von th_03
 
Registriert seit: Apr 2003
Ort: Ar... der Heide
th_03 ist auf einem guten Weg
@Boris: Nun, ich glaube, dass hing damit zusammen, dass die Ausgabe mit htmlentities nicht nur umgeformte Umlaute, sondern auch andere Sonderzeichen zur Folge hatte ... auf jeden Fall sah es nicht so aus, wie es hätte aussehen sollen.
__________________
Moje zycie jest jak papier toaletowy: Dlugie, szare ... y do dupy!
th_03 ist offline   Mit Zitat antworten
Alt 01.07.2005, 20:10   #6
TP-Member
 
Benutzerbild von th_03
 
Registriert seit: Apr 2003
Ort: Ar... der Heide
th_03 ist auf einem guten Weg
Also, kleiner Nachtrag:

Jetzt wird zwar der HTML-Teil der Datenbank-Zelle ausgegeben, also auch die Tabelle an sich, aber trotzdem bleibt sie leer. Die PHP-Befehle werden nach wie vor im Quelltext angezeigt, aber nicht ausgeführt
__________________
Moje zycie jest jak papier toaletowy: Dlugie, szare ... y do dupy!
th_03 ist offline   Mit Zitat antworten
Alt 01.07.2005, 20:38   #7
TP-Special Mod
 
Benutzerbild von steffenk
 
Registriert seit: Feb 2005
Ort: Haan / NRW
steffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine Usersteffenk lebt für das TP und seine User
so wärs ja auch ein büschen einfach

Du hast einen HTML-Block mit eingebettetem php.
extrahiere den <?php ... ?> , lösche die Tags und führe nur diesen Block in eval aus.
__________________

Typo3 · MySQLDumper · dislabs
·
manche Mühlen mahlen schneller ...
"Ich habe Rücken"
Horst Schlämmer
steffenk ist offline   Mit Zitat antworten
Alt 01.07.2005, 21:11   #8
TP-Member
 
Benutzerbild von th_03
 
Registriert seit: Apr 2003
Ort: Ar... der Heide
th_03 ist auf einem guten Weg
Wie soll denn die PHP-Befehle extrahieren? Ich verstehe jetzt gar nichts mehr. Wenn ich nun ... nein, zu suspekt, was ich hier gerade denke. Es tut mir Leid, aber im normalen Leben bin ich nicht so schwer von Begriff ... hoffe ich für meine Mitmenschen zumindest. Kannst du mit bitte noch mal ganz langsam für ganz Blöde erklären, wie das geht, was du da meinst.

Nochmal eine Notiz für mich: Die PHP-Befehle befinden sich in einer HTML-Tabelle, die angezeigt wird. Immerhin ein halber Erfolg ;-).
__________________
Moje zycie jest jak papier toaletowy: Dlugie, szare ... y do dupy!
th_03 ist offline   Mit Zitat antworten
Alt 03.07.2005, 18:26   #9
TP-Member
 
Benutzerbild von th_03
 
Registriert seit: Apr 2003
Ort: Ar... der Heide
th_03 ist auf einem guten Weg
Also, in einem anderen Forum wurde mir folgender Tipp gegeben:
PHP-Code:
eval('?>'.$Artikel.'<?); ?>
... funktioniert aber auch nicht. Funktioniert eval überhaupt mal irgendwann? Jetzt motzt eval rum, weil er eine Klammer nicht haben will:

Parse error: syntax error, unexpected '}' in E:\apachefriends\xampp\htdocs\SC_Rothenhausen_2005\index.php(101) : eval()'d code on line 31

Was soll denn das ständig? Kann das nicht einfach mal funktionieren?
__________________
Moje zycie jest jak papier toaletowy: Dlugie, szare ... y do dupy!
th_03 ist offline   Mit Zitat antworten
Alt 03.07.2005, 18:33   #10
TP-Greis
 
Benutzerbild von Boris
 
Registriert seit: Mar 2001
Ort: Berlin, Germany
Boris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKE
Zitat:
Was soll denn das ständig? Kann das nicht einfach mal funktionieren?
Solang Dir nicht klar ist, wo der Fehler liegt, nicht ... denn er bemängelt eine } Klammer, und keinen Teil des von dir gezeigten Codes

Zeig uns doch mal alles!
__________________
My software never has bugs. It just develops random features ...

» DevShack - die Website des freien Webentwicklers Boris
Boris ist offline   Mit Zitat antworten
Alt 03.07.2005, 18:51   #11
TP-Member
 
Benutzerbild von th_03
 
Registriert seit: Apr 2003
Ort: Ar... der Heide
th_03 ist auf einem guten Weg
Na ja, gut, das mit der }-Klammer ist mir schon klar. Bin sehr frustiert. Also, jetzt gibts also den gesamten Code der index.php (du hast es ja so gewollt ):

PHP-Code:
<?php require_once('Connections/SC_R_2005.php'); ?>
<?php
$maxRows_news 
3;
$pageNum_news 0;
if (isset(
$HTTP_GET_VARS['pageNum_news'])) {
  
$pageNum_news $HTTP_GET_VARS['pageNum_news'];
}
$startRow_news $pageNum_news $maxRows_news;

mysql_select_db($database_SC_R_2005$SC_R_2005);
$query_news "SELECT * FROM news ORDER BY datum DESC";
$query_limit_news sprintf("%s LIMIT %d, %d"$query_news$startRow_news$maxRows_news);
$news mysql_query($query_limit_news$SC_R_2005) or die(mysql_error());
$row_news mysql_fetch_assoc($news);

if (isset(
$HTTP_GET_VARS['totalRows_news'])) {
  
$totalRows_news $HTTP_GET_VARS['totalRows_news'];
} else {
  
$all_news mysql_query($query_news);
  
$totalRows_news mysql_num_rows($all_news);
}
$totalPages_news ceil($totalRows_news/$maxRows_news)-1;

$maxRows_kalender 1;
$pageNum_kalender 0;
if (isset(
$HTTP_GET_VARS['pageNum_kalender'])) {
  
$pageNum_kalender $HTTP_GET_VARS['pageNum_kalender'];
}
$startRow_kalender $pageNum_kalender $maxRows_kalender;

mysql_select_db($database_SC_R_2005$SC_R_2005);
$query_kalender "SELECT * FROM veranstaltungskalender ORDER BY datum ASC";
$query_limit_kalender sprintf("%s LIMIT %d, %d"$query_kalender$startRow_kalender$maxRows_kalender);
$kalender mysql_query($query_limit_kalender$SC_R_2005) or die(mysql_error());
$row_kalender mysql_fetch_assoc($kalender);

if (isset(
$HTTP_GET_VARS['totalRows_kalender'])) {
  
$totalRows_kalender $HTTP_GET_VARS['totalRows_kalender'];
} else {
  
$all_kalender mysql_query($query_kalender);
  
$totalRows_kalender mysql_num_rows($all_kalender);
}
$totalPages_kalender ceil($totalRows_kalender/$maxRows_kalender)-1;

$colname_inhalte "1";
if (isset(
$HTTP_GET_VARS['content_id'])) {
  
$colname_inhalte = (get_magic_quotes_gpc()) ? $HTTP_GET_VARS['content_id'] : addslashes($HTTP_GET_VARS['content_id']);
}
mysql_select_db($database_SC_R_2005$SC_R_2005);
$query_inhalte sprintf("SELECT * FROM inhalte WHERE inhalt_id = %s"$colname_inhalte);
$inhalte mysql_query($query_inhalte$SC_R_2005) or die(mysql_error());
$row_inhalte mysql_fetch_assoc($inhalte);
$totalRows_inhalte mysql_num_rows($inhalte);
?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html lang="de">
<head>
<title>SC Rothenhausen | Online-Portal</title>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<meta http-equiv="Content-Style-Type" content="text/css">
<?php include("_includes/meta.inc"); ?>
<script type="text/javascript" language="JavaScript1.2" src="_scripte/stm31.js"></script>
<?php include("_includes/stylesheets.inc"); ?>
<link rel="stylesheet" type="text/css" media="screen" href="_stylesheets/master.css">
<link rel="stylesheet" type="text/css" media="all" href="_stylesheets/fontstyles.css">
<link rel="stylesheet" type="text/css" media="all" href="_stylesheets/sql_based_tables.css">
<link rel="stylesheet" type="text/css" media="all" href="_stylesheets/colums.css">
<link rel="stylesheet" type="text/css" media="all" href="_stylesheets/div_containers.css">
<link rel="stylesheet" type="text/css" media="all" href="_stylesheets/archiv_articles.css">
<link rel="stylesheet" type="text/css" media="print" href="_stylesheets/print.css">
</head>

<body>
<div id="wrap_main">
<div id="banner"></div>
<div id="wrap_menu">
<script type="text/javascript" language="JavaScript1.2" src="_scripte/menu_top.js"></script></div>

<div id="wrap_body">
<div id="wrap_margin">
<div id="channelpic"><img src="gfx/channelpics/portal.jpg" alt=" " border="0"></div>
<?php include("_includes/margin.inc"); ?><!-- Ende margin -->

<div id="wrap_content">

<?php if (isset($HTTP_GET_VARS['content_id'])) { // wenn inhalt_id gesetzt, zeige Datensatz an ?> 

<?php if ($totalRows_inhalte 0) { // Show if recordset not empty ?>
<h1><?php echo $row_inhalte['header']; ?></h1>
<p class="lead"><?php echo $row_inhalte['lead']; ?></p>
<?php // Show if recordset not empty ?>
<?php $Artikel 
$row_inhalte['content'];
// $Artikel = ereg_replace("ß", "&szlig;", $Artikel);
$Artikel ereg_replace("ö""&ouml;"$Artikel);
$Artikel ereg_replace("ä""&auml;"$Artikel);
$Artikel ereg_replace("ü""&uuml;"$Artikel);
$Artikel ereg_replace("Ö""&Ouml;"$Artikel);
$Artikel ereg_replace("Ä""&Auml;"$Artikel);
$Artikel ereg_replace("Ü""&Uuml;"$Artikel);
eval(
'?>' .$Artikel'<?'); ?>

<?php } else include("http://127.0.0.1/SC_Rothenhausen_2005/portal/_portal.html"); ?>

</div><!-- Ende wrap_content --></div><!-- Ende wrap_body -->
<?php include("_includes/footer.inc"); ?>
</div><!-- Ende wrap_main --></body></html>
<?php
mysql_free_result
($news);

mysql_free_result($kalender);

mysql_free_result($inhalte);
?>
Sooo, es folgt nochmal der Inhalt der besagten Tabellen-Zelle namens „content“:

HTML-Code:
<p>Damit Sie kein wichtiges Event verpassen, haben wir für Sie einen Online-Veranstaltungskalender bereitgestellt, so dass Sie sich jederzeit über aktuelle Termine und eventuelle kurzfristige Änderungen informieren können.<br><br>
Über zahlreiches Erscheinen freuen wir uns schon jetzt.</p><br>

<table width="520" border="0" cellspacing="0" cellpadding="0">
<tr>
<th height="25" style="padding-left: 8px;"><b>Datum</b></th>
<th height="25"><b>Veranstaltung</b></th>
<th height="25"><b>Ort</b></th>
</tr>
<?php do { ?>
<tr>
<td height="5" colspan="3">&nbsp;</td>
</tr>
<tr>
<td width="150" height="40" valign="top" style="padding-left: 8px;"><b><?php echo $row_kalender['wochentag']; ?>, <?php echo $row_kalender['datum']; ?></b><br> <?php echo $row_kalender['uhrzeit']; ?> </td>
<td width="270" height="40" valign="top" >
<p class="event"><?php echo $row_kalender['veranstaltung']; ?></p></td>
<td width="100" height="40" valign="top"><?php echo $row_kalender['ort']; ?></td>
</tr>
<?php if (isset($row_kalender['bemerkung'])) { ?>
<tr valign="middle">
<td height="25" style="padding-left: 8px;"><em>Bemerkungen:</em></td>
<td colspan="2" class="bemerkung"><?php echo $row_kalender['bemerkung']; ?></td>
</tr>
<?php } ?>
<tr valign="middle">
<td height="25" colspan="3" style="padding-left: 8px;"><hr size="1" noshade color="#cc0000"></td>
</tr>
<?php } while ($row_kalender = mysql_fetch_assoc($kalender)); ?></table>

<?php } // Show if recordset not empty
	else echo "<p>Es liegen zur Zeit keine gespeicherten Termine vor.</p>"; ?>

<br><p class="hinweis">Leider können wir Irrtümer und eventuelle Änderungen nicht ausschließen.</p>
So. Das war eigentlich alles. Leider habe ich das Ganze nur lokal laufen ... aber ich weiß echt nicht mehr weiter. Merkt man ja.

Danke.

Torben
__________________
Moje zycie jest jak papier toaletowy: Dlugie, szare ... y do dupy!
th_03 ist offline   Mit Zitat antworten
Alt 04.07.2005, 14:07   #12
TP-Member
 
Benutzerbild von th_03
 
Registriert seit: Apr 2003
Ort: Ar... der Heide
th_03 ist auf einem guten Weg
Red face

Hat Sich Erledigt!


Mein Gott, ist mir das peinlich. Wie kann man denn so verblödet sein? Es fehlte natürlich folgende Zeile am Anfang der „content“-Zelle in der Tabelle.

PHP-Code:
<?php if ($totalRows_kalender 0) { ?>
Trotzdem gaanz lieben Dank für eure Hilfe. Ich werde mir jetzt erst mal einen Strick nehmen

Gruß, Torben
__________________
Moje zycie jest jak papier toaletowy: Dlugie, szare ... y do dupy!
th_03 ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Traum-Dynamik
Text aus DB - PHP-Befelhle lesen? Text aus DB - PHP-Befelhle lesen?
« webshop frage | mysql-abfrage in php »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Thema bewerten
Thema bewerten: