tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
3
ZUGRIFFE
357
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Create Create ist offline Mitglied Silber
    Registriert seit
    Feb 2002
    Beiträge
    85
    Hallo PHPler,

    ich habe ein Problem, ich möchte eine HTML-Seite bzw. dessen Inhalt als "Druckversion" übergeben und mache das bisher so:

    <a href="../path/drucken.php?id=<?php echo base64_encode(__FILE__);"?>
    Also dieser Teil wird aus der HTML-Datei als Link an ein PHP -Script übergeben (so weit so gut!). Dieser trägt dann den aktuellen Namen der Datei ausgehend von Root mit sich, das wird im Script die Varaible id.

    Jetzt habe ich aber gemerkt, dass des nicht so gut ich lesen und die Seite aus und gebe sie mit einigen ersetzungen (also Bilder rausnehmen etc. ) wieder aus (Druckversion eben).
    Jetzt habe ich das Problem, dass JavaScript etc. stören und die Seite nicht orndungsgemäß angezeigt wird.

    Gibt es eine Möglichkeit das PHP nur bestimmte Teile ausließt?
    Also am besten wäre alles zwischen zwei selbstdefinierbaren Tags.
    Zum Beispiel:

    Alles zwischen
    <!--Content-->

    <!--EndContent-->

    Dan würde ich den Bereich dazwischen gerne übergeben und ausgeben lassen. - die Druckversion. Aber ich "ochse da jetzt schon eine Woche mit rum und bin langsam am ende....

    Weiß jemand einen guten Rat?
    Danke, Danke, Danke...

    Bis dann
    goCreate
     

  2. #2
    Avatar von lambda
    lambda lambda ist offline Mitglied Brokat
    Registriert seit
    Dec 2001
    Beiträge
    303
    Hi!
    versuch's doch mal so:

    $fp = fopen("content.htm","r");
    $read = false;
    while(!feof($fp)){
    $str = fgets($fp, 2000);
    if($str=="startzeugs"){
    $read = true;
    }
    elseif($str=="endzeugs"){
    $read = false;
    }
    if($read){
    $mein_content[] = $str;
    }
    }
    fclose($fp);

    Den Content solltest du danach in dem Array $mein_content haben. Wenn's nitt geht, bitte melden!
     
    Lambda - Unos, dos, tres, catorce...

  3. #3
    Create Create ist offline Mitglied Silber
    Registriert seit
    Feb 2002
    Beiträge
    85
    Seh gerade, dass ich mich hier nicht bedankt habe!
    Genauso habe ich es gemacht(naja fast)!
    Funktionoiert einwandfrei!

    Greetz
    ::.. creAte :::.
     

  4. #4
    Avatar von Nils Hitze
    Nils Hitze Nils Hitze ist offline Admin a.D.
    Registriert seit
    Sep 2000
    Ort
    Dachau
    Beiträge
    2.201
    Blog-Einträge
    104
    PHP-Code:
    function parse_print($template)
    {
     
    $temp_content file($template);

     
    //$regex[block_start] : <!--start-->
     
    $regex[block_start]   = "°<!--[[:space:]]*?[[:alpha:]]{4,}?"
    "[[:space:]]*?[a-zA-Z0-9_-_.-_-|]*?"
    "[[:space:]]*?-->°siU";

     
    //$regex[block_end] : <!--end|function|-->
     
    $regex[block_end]   = "°<!--[[:space:]]*?[[:alpha:]]{1,3}?"
    .  "[[:space:]]*?[a-zA-Z0-9_-_.-_]*?"
    .  "[[:space:]]*?-->°siU";

     
    $temp_flag FALSE;

     foreach(
    $temp_content as $temp_value)
     {
      
    #Prüfe ob Blockbeginn
      
    if(preg_match($regex[block_start], $temp_value))
      { 
        
    $temp_flag TRUE
        
    $temp_value preg_replace($regex[block_start], ""$temp_value); }

      
    #Prüfe ob Blockende
      
    if(preg_match($regex[block_end], $temp_value)) $temp_flag FALSE;

      if(
    $temp_flag$temp_parsed[] = $temp_value;
     }

     
    $parsed implode(""$temp_parsed);
     return (
    $parsed);

    Aufgerufen wird die Funktion einfach
    über : $cont=parse_print("content.html");

    In der Content.html musst du dann
    einfach nur <!--start--> bzw. <!--end-->
    schreiben und Voila .. schon hast du's.

    Wenn du noch Fragen dazu hast, melde
    dich. Meine Adressen stehen in meiner
    Signatur.

    Gruß,
    Mentor Jonathan

    P.S. Mir ist gerade aufgefallen das man
    direkt vor <!--end--> nichts
    schreiben darf, da die Funktion
    zeilenweise arbeitet. Wenn jemand
    dieses Problem bitte noch lösen
    könnte, wäre ich ihm sehr dankbar.
     

Ähnliche Themen

  1. Bestimmten Teil (Bildlink) ersetzen
    Von tvtotal im Forum Javascript & Ajax
    Antworten: 2
    Letzter Beitrag: 15.03.10, 10:23
  2. Bestimmten Teil aus Quelltext auslesen und wiedergeben
    Von augustus123 im Forum Visual Basic 6.0
    Antworten: 5
    Letzter Beitrag: 08.08.07, 13:06
  3. Antworten: 1
    Letzter Beitrag: 04.08.07, 09:25
  4. Nur bestimmten teil ausgeben?
    Von MrHankey im Forum PHP
    Antworten: 3
    Letzter Beitrag: 11.08.04, 20:00
  5. Bestimmten Teil suchen und ignorieren
    Von ExAByte im Forum PHP
    Antworten: 1
    Letzter Beitrag: 09.02.02, 00:06