![]() |
| | Themen-Optionen | Thema durchsuchen |
| | Nach oben #1 |
| Neuer Benutzer Registriert seit: 12.09.2005
Beiträge: 15
|
hi @all Nun ich hab jetzt einen kleinen Parser gecodet der platzhalter ersetz nun ist das Problem ist , dass auch PHP code ersetzt werden muss ! Hier der Parser : PHP-Code: Code: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Sliders HP</title>
<style type="text/css">
<!--
body,td,th {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #000000;
}
body {
background-color: #808080;
}
.border
{
border: 1px solid black;
}
-->
</style></head>
<body>
<div align="center">
<p> </p>
<p> </p>
<table width="653" >
<tr>
<th width="409" height="95" class="border"><img src="banner.jpg" height="95" width="653"></th>
</tr>
<tr>
<td height="310" class="border" bgcolor="#ACACAC"><div align="center"><?php include("content.php") ; ?></div></td>
<td width="130" height="310" >
<table width="150" height="154" align="center" >
<tr>
<th height="20" bgcolor="#6A6A6A" class="border" > </th>
</tr>
<tr>
<th scope="col" bgcolor="#ACACAC" class="border"> </th>
</tr>
</table>
<div align="center">
<?php include("module/Menu/index.php") ; ?>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
</div>
</td>
</tr>
<tr>
<td class="border" bgcolor="#6A6A6A" height="20"><div align="right">Code & Design by Slider</div></td>
</tr>
</table>
<p> </p>
</div>
</body>
</html>
|
| | |
| | Nach oben #2 |
| Benjamin Klaile Registriert seit: 02.12.2004 Ort: Remagen
Beiträge: 4.512
|
Ich denke, dass du die Funktion eval() suchst. Sei vorsichtig mit der Verwendung und sichere auf jeden Fall ab, dass nicht jeder User dort Code ausführen lassen kann. Grüße Ben. |
| | |
| | Nach oben #3 |
| Neuer Benutzer Registriert seit: 12.09.2005
Beiträge: 15
|
so jetzt hab ich eval mal benutzt : PHP-Code: aber sie wird nicht ausgeführt und es kommt ein parse error: Parse error: parse error in C:\PHP\xampp\htdocs\Unbekannt\parser.php(22) : eval()'d code on line 1 |
| | |
| | Nach oben #5 | |
| Erfahrener Benutzer Registriert seit: 06.12.2004 Ort: Bayern
Beiträge: 185
| Zitat:
__________________ MFG Schifti -- Meine Abschlussdokumentation downloaden und mir ein Feedback senden Psychologische Praxis KJG Schwäbisch Gmünd | |
| | |
| | Nach oben #6 |
| Martin Breuer Registriert seit: 17.08.2005 Ort: Berlin
Beiträge: 1.653
|
ich denke das kommt durchs copy/paste mich würde interessieren wie das zustande kommt Parse error: parse error in C:\PHP\xampp\htdocs\Unbekannt\parser.php(22) : eval()'d code on line 1 es sieht so aus als wenn du irgendwo nen tippfehler hast und er deswegen nicht klarkommt?!
__________________ I did it my way - Senseless-Blog |
| | |
| | Nach oben #7 |
| Benjamin Klaile Registriert seit: 02.12.2004 Ort: Remagen
Beiträge: 4.512
|
Er verwendet eval() falsch. Das ist alles. Die Zeichenkette, welche an eval() übergeben wird muss gültigen, d.h. syntaktisch korrekten, PHP-Code enthalten. Andernfalls kommt es zu dieser Meldung. Grüße Ben. EDIT: Vielleicht noch ein kleines Beispiel: dummy.php PHP-Code: PHP-Code: Code: Datei: C:\apachefriends\xampp\htdocs\[..]\test.php Zeile: 6 PHP-Code: Code: Parse error: parse error in C:\apachefriends\xampp\htdocs\[..]\dummy.php(5) : eval()'d code on line 1 Grüße Ben. |
| | |
| | Nach oben #9 |
| Benjamin Klaile Registriert seit: 02.12.2004 Ort: Remagen
Beiträge: 4.512
|
Hi, erstmal super, dass es soweit funktioniert und verstanden hast, wo der Haken war Wäre nicht schlecht, wenn du jetzt mal zeigen könntest, wie das Script aussieht. Also wo welche Funktion aufgerufen wird etc. Danke. Grüße Ben. |
| | |
| | Nach oben #10 |
| Neuer Benutzer Registriert seit: 12.09.2005
Beiträge: 15
|
@ Ben Ich bin auch ein schlauer :wink: So sieht der parser aus : PHP-Code: PHP-Code: |
| | |
| | Nach oben #11 |
| Benjamin Klaile Registriert seit: 02.12.2004 Ort: Remagen
Beiträge: 4.512
|
Hm. Du willst so etwas wie ein include innerhalb des Templates realisieren, stimmt das? Ich weiß gerade nicht so genau, warum du da nochmal eine PHP-Datei einbindest .. Das ergibt für mich irgendwie keinen Sinn, weil du ja hier schon HTML-Code produzierst .. was genau soll also die .php-Datei noch machen. Warum arbeitest du die nicht im Parser ab, speicherst die Ausgabe des Scriptes in einer Variable und weißt diese dann dem Template zu? Grüße Ben. |
| | |
| | Nach oben #12 |
| Neuer Benutzer Registriert seit: 12.09.2005
Beiträge: 15
|
Wenn ich es anders machen würde dann würde ich es so machen : PHP-Code: Code: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>{titel}</title>
<style type="text/css">
<!--
body,td,th {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #000000;
}
body {
background-color: #808080;
}
.border
{
border: 1px solid black;
}
-->
</style></head>
<body>
<div align="center">
<p> </p>
<p> </p>
<table width="653" >
<tr>
<th width="409" height="95" class="border">{header}</th>
</tr>
<tr>
<td height="310" class="border" bgcolor="#ACACAC">
<div align="center">{content}</div>
</td>
<td width="130" height="310" >
<table width="150" height="154" align="center" >
<tr>
<th height="20" bgcolor="#6A6A6A" class="border" > </th>
</tr>
<tr>
<th scope="col" bgcolor="#ACACAC" class="border">
</th>
</tr>
</table>
<div align="center">
{menu}
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
</div>
</td>
</tr>
<tr>
<td class="border" bgcolor="#6A6A6A" height="20">
<div align="right">{footer}</div>
</td>
</tr>
</table>
<p> </p>
</div>
</body>
</html>
|
| | |
| | Nach oben #13 |
| Verplanter Benutzer Registriert seit: 14.12.2004
Beiträge: 233
| PHP-Code: PHP-Code: Speziellen Grund das Du die Function so schreibst: PHP-Code:
__________________ Das Leben ist zwar bloß ein Adventure-Game, aber die Grafik ist verdammt gut. Ich such immer noch den Cheat für unlimited money! |
| | |
| | Nach oben #14 |
| Neuer Benutzer Registriert seit: 12.09.2005
Beiträge: 15
|
ist ein tippfehler von mir bei es soll : parse("index.html") ; heißen ! kann mir dann keiner sagen was ich machen muss das der include an der stelle soll includen wo er soll ! p.s das neue Board mag ich nicht so Geändert von Dark Knight (13.09.2005 um 12:37 Uhr) |
| | |
| | Nach oben #15 |
| Martin Breuer Registriert seit: 17.08.2005 Ort: Berlin
Beiträge: 1.653
|
Den editor kannst du btw unter einstellungen noch verändern und richtig schön machen ehrlich gesagt steige ich hier nicht durch, da ich den sinn bzw das ziel deines vorhabens nicht nachvollziehen kann.
__________________ I did it my way - Senseless-Blog |
| | |
| | Nach oben #16 |
| Neuer Benutzer Registriert seit: 12.09.2005
Beiträge: 15
|
es ist eben ein Template parser der Platzhalter ersetz ! ich habe probleme beim ersetzen von php code ! Beim ersetzen wird der include nicht an seinen Platz(wo der Platzhalter ist) gesetzt sondern an den Anfang der Datei! Hier ein beispiel ich will content.php includen !in der steht: <?php echo "Hallo"; ?> dann steht das "Hallo" ganz am anfang des Templates ! Hoffe ihr habt es verstanden |
| | |
| | Nach oben #17 |
| Verplanter Benutzer Registriert seit: 14.12.2004
Beiträge: 233
|
content.php PHP-Code: PHP-Code:
__________________ Das Leben ist zwar bloß ein Adventure-Game, aber die Grafik ist verdammt gut. Ich such immer noch den Cheat für unlimited money! |
| | |
| | Nach oben #18 |
| Martin Breuer Registriert seit: 17.08.2005 Ort: Berlin
Beiträge: 1.653
|
dann hast du irgendwo ein platzhalter für diesen include-befehl richtig? wenn du den durchgeparst hast, sollte er doch dann an der stelle stehen, an der der platzhalter war und dementsprechend korrekt im template und nicht am anfang des templates erscheinen.
__________________ I did it my way - Senseless-Blog |
| | |
| | Nach oben #19 |
| Neuer Benutzer Registriert seit: 12.09.2005
Beiträge: 15
|
@DasMööp So soll es sein aber in deinem Beispiel wird ein String (Platzhalter) durch einen anderen String ersetzt und das funktioniert schon bei mir nur das ersetzen von platzhalter zu PHP Code geht nicht ! Würde es gehen wenn ich die PHP Datei die included werden soll zuerst mir file_get_contents in einen String lade und dann wieder mit eval ausgebe ? wird der PHP dann auch ausgeführt? @WarrenFaith kA warum das an den Anfang ausgegeben wird ??? ich uppe die seite mal um euch zu zeigen wie es aussieht ! Geändert von Dark Knight (13.09.2005 um 13:06 Uhr) |
| | |
| | Nach oben #20 | |
| Verplanter Benutzer Registriert seit: 14.12.2004
Beiträge: 233
|
öhm ... mal so ne frage weil ich es jetzt gar nicht mehr verstehe ,... Zitat:
PHP-Code: |