templates + dateneinlesen ... jedes mal ne andere zeile

-GS-Master

Erfahrenes Mitglied
ich habe bis jetzt das script soweit das (thekiller.th.funpic.de/termine)
ich eben die daten aus einer datei einlesen kann ... sieht halt so aus wie bei dem link ...
ich möchte es aber gerne so haben, das in jeder neuen tabelle eine neue zeile der textdatei
gelesen wird gelesen wird ... wir mache ich das

naja wem das zu wenig ist ... hier der code


PHP-Code:
PHP:
<?php 

################################################################# 
# Endungen der Templates ... z.b html # 
################################################################# 

function gettemplate($template,$endung="html") 
{ 
return str_replace("\"","\\\"",implode("",file($template.".".$endung))); 
} 
function dooutput($template) { 
echo $template; 
} 

################################################################# 
# Angeben, sowie auslesen der Filedatei # 
################################################################# 

$datei = "gs/termine.gs"; 

if(file_exists($datei)) 
{ 
$termin = file($datei); 
$anzahl = count($termin); 
for($i = 0; $i < $anzahl; $i++) 
{ 

# inhalt zerteilen 
$eintrag = explode("|-|",$termin[$i]); 
# variabeln defenieren 
$Datum = $eintrag[0]; 
$Ort = $eintrag[1]; 
$Anlass = $eintrag[2]; 
} 
} 
else 
{ 
echo"Es wurde keine Datei gefunden"; 
} 

################################################################# 
# Anzal der Wiederhohlungen der Templates # 
################################################################# 

for($inhalt=0;$inhalt<=10;$inhalt++) 
{ 
eval ("\$str .= \"".gettemplate("templates/wiederholung")."\";"); 
} 
eval ("dooutput(\"".gettemplate("templates/Layout")."\");"); 

?>
 
sry das ich mich so oft melde aber naja ich brauche halt von jedem hifle der dafon ahnung hat ...
hab es bis jetzt wie gesagt geschaft eine zeile wieder zu geben ...
ich gebe jedoch das template oft wieder ... und jetzt wieder die eine zele immer wieder wieder hohlt ... je öffter ich das template wiederhohle ...

naja ich möchte aber das ich wenn ich 2 mal das template wieder hohle die 1 und die 2 zeile der textdatei wieder ohlt werden ... also unner si weuter ´... bei 3 mal die 3 zeile der textdatei ... und das soll in meinen derzeitigen quelltext eingebaut werden ... geht das den wenn ja schreib mir wie ich das machen muss und wenn es geht baus auch gleich in den quelltext ein


so dann so werden ... immer so weiter ... is jetzt nur ein beispiel
_ _ _ _ _ _ _ _ _ _ _ _
| zeíle 3 der textdatei |
|_ _ _ _ _ _ _ _ _ _ _ |
| zeíle 2 der textdatei |
|_ _ _ _ _ _ _ _ _ _ _ |
| zeíle 1 der textdatei |
|_ _ _ _ _ _ _ _ _ _ _ |

und wer sich bis jetzt nicht vorstellen kann wie das aussieht derzeitig ... hier ein link

script
 
Zuletzt bearbeitet:
Ich würde dir gerne helfen, nur verstehe ich dein Problem nicht und kanns mir nicht anssehen da der Link nicht funktioniert.
Willst du einfach alle Datensätze ausgeben und jeden Datensatz jeweils in eine neue Zeile oder wie muss ich dass nun verstehen ?

Gruß
spitzi
 
ja genau ich möchte jedes mal eine andere zeile ausgeben und das jetzt eben in meinen script einbauen ...
kannst du mir jetzt sagen wie das geht oder weißt du es den nicht :nospam:
 
tu doch einfach das

PHP:
eval ("\$str .= \"".gettemplate("templates/wiederholung")."\";");

unter

PHP:
$Anlass = $eintrag[2];

Dann sind alle einträge in der Variable gespeichert und in dem Template Layout kannst ja dann die Variable $str aufrufen.

Gruß
spitzi
 
joa ... es ist so das ich ja ... soviel ich bis jetzt gelernt hab ... dann nur die eine zeile aufrufe ^^
naja ich möchte aber diese aufteileung haben ... das ich eben pro zeile in der textdatei, 3 solcher daten habe ... sagen wir mal datum , ort , und anlass...

jetzt hab ich es ja so, das ich eben nur die erste zeile auslese, möchte es aber gerne so haben das wenn ich jetzt 2 mal das template auslesen lassen

HTML:
<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="59%" id="AutoNumber1">
  <tr>
    <td width="17%" align="center">$Datum</td>
    <td width="42%" align="center">$Ort</td>
    <td width="41%" align="center">$Anlass</td>
  </tr>
</table>

eben dann bei der zweiten tabelle ... eben dann das datum der ort und der anlass aus der ZWEITEN ZEILE der textdatei ausgelesen werden ...

naja und wenn das bei deienr antwort schon drinnen war entschuldige ich mich schon mal ... is halt nur so das ich erst seid kurzen das mache und mir nur noch das fehlt ^^
ist halt auch das einzige problem das ich nicht selber lösen kann ... wenn ihr so nett wärt und mir das auch noch in den quelltext einbaut ^^ :)
 
kann ich die termine.gs datei mal haben, wüsste gerne wie die aussieht, dann kann ich dir weiterhelfen.

Gruß
spitzi
 
Hi,

also ich habs etwas anders gelöst, erstmal hab ich die termine.gs (bei mir termine.txt ;) ) etwas umgeändert und zwar sieht die bei mir wie folgt aus:

PHP:
zelle1|-|termin1|-|rofl|-|
zelle2|-|term2|-|gg|-|
zelle3|-|termin3|-|xD|-|
zelle4|-|termin4|-|xD|-|
zelle5|-|termin3|-|xD|-|
zelle6|-|termin3|-|xD|-|
zelle7|-|termin3|-|xD

Also am Ende jeder Zeile befindet sich ebenfalls ein |-| ausser bei der letzten.

Und die Auswertungsdatei sieht so aus:

PHP:
<?php
  print '<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="59%" id="AutoNumber1">';  
  print '<tr>';    

  $fp="termine.txt";
  
  if($datei=fopen($fp,"r")){
   while(!feof($datei)){
    $inhalt .= fgets($datei);
   }
  }
  $temp=explode("|-|",$inhalt);
  $num = count($temp);
  $num=$num-1;

  $x=0;
  for($i=0; $i<=$num; $i++){
   $x++;
   print "<td align='center'>".$temp[$i]."</td>";
   if($x==3){
    print "</tr><tr>";
    $x=0;
   }
  }  
  print '</tr> </table>';
?>

Du musst halt nur noch das mit der Templatefunktion verbinden, also die oberen 2 und das untere print in die Layout datei und das print mit dem <td> in die variable $str speichern, dann sollte es .

Gruß
spitzi
 
Zurück