ilch Forum » Allgemein » HTML, PHP, SQL,... » Problem: Explode in template

Geschlossen
  1. #1
    User Pic
    Nobody is perfe Mitglied
    Registriert seit
    20.01.2009
    Beiträge
    22
    Beitragswertungen
    0 Beitragspunkte
    hi

    ich komm mit html empline nicht klar

    wann muss ich den {EXPLODE} genau einstezen bsi jetzt sieht mein modul so aus


    php datei

    defined ('main') or die ( 'no direct access' );
    defined ('admin') or die ( 'only admin access' );
    
    $design = new design ( 'Admins Area', 'Admins Area', 2 );
    $design->header();
    // ----------------------
    
    $tpl = new tpl ( 'pflege', 1 );
    
    include('include/admin/kunden/function.php');
    
    $action	= $menu->get(1);
    $id		= $menu->get(2);
    
    // Fehler behandlung für das Formular
    if(isset($_POST['submit'])){
    	$title		= PostVar("title");
    	$pdf		= PostVar("pdf");
    	
    	$fehler		= "";
    	
    	if(empty($title))	$fehler .= "<li>Das Feld 'Titel' nich ausgefüllt wurde!</li>";
    	if(empty($pdf))	$fehler .= "<li>Das Feld 'PDF Datei' nich ausgefüllt wurde!</li>";
    	
    	if(!empty($fehler)){
    		$false 	=  "Formular konnte nicht Eingetragen werden weil:";
    		$false	.= "<ul>".$fehler."</ul>";
    	}
    	$ar = array(
    		'false'		=> $false,
    		'title'		=> $title,
    		'pdf'		=> $pdf
    	);
    	set_ar_out($ar,0);
    }
    // -----------------
    
    // Editiren usw. der Felder
    switch ($action){
    	case "Edit":
    		$query = "
    				SELECT * FROM `prefix_pflege` WHERE `id` = '$id'
    		"; 
    		$sql = db_query($query);
    		$row = db_fetch_object($sql);
    		
    		$title	= $row->title;
    		$pdf	= $row->pdf;
    		
    		break;
    		
    	case "Delete":
    		$query = "
    				DELETE FROM `prefix_pflege` WHERE `id` = '$id'
    		";
    		db_query($query);
    		
    		break;
    		
    	default:
    		$id		= $_POST['id'];
    		
    		$title	= PostVar("title");
    		$pdf	= PostVar("pdf");	
    		
    		if(!empty($id) AND empty($fehler)){
    			$query = "
    					UPDATE `prefix_pflege`
    					SET
    						`title`	= '".addslashes($title)."',
    						`pdf`	= '".addslashes($pdf)."'
    					WHERE `id` = '$id'
    			";
    		}
    		if(empty($id)){
    			$query = "
    					INSERT INTO `prefix_pflege`
    					(
    						`id`,
    						`title`,
    						`pdf`
    					)
    					VALUES
    					(
    						'',
    						'".addslashes($title)."',
    						'".addslashes($pdf)."'
    					)
    			";
    		}
    		db_query($query);
    		unset($title);
    		unset($pdf);
    }
    // ------------------------
    
    // Ausgabe der Einträge
    $query = "
    		SELECT * FROM `prefix_pflege` ORDER BY `title` 
    ";
    $sql = db_query($query);
    while ($row = db_fetch_object($sql)){
    	$title	= $row->title;
    	$pdf	= $row->pdf;
    	
    	if($i %2 == 0){
    		$class = "Cmitte";
    	}
    	else{
    		$class = "Cmite";
    	}
    	$title	= $row->title;
    	
    ?>
    	<tr>
    		<td><?=$title?></td>
    		<td align="center">
    			<a href="admin.php?pflege-Edit-<?=$id?>">
    				<img src="include/images/icons/edit.gif" />
    			</a>			
    		</td>
    		<td align="center">
    			<a href="admin.php?pflege-Delete-<?=$id?>">
    				<img src="include/images/icons/del.gif" />
    			</a>
    		</td>
    	</tr>
    <?php
    	$i ++;
    }
    $tpl->out(1);
    // --------------------
    	
    
    
    
    // -------------------------
    $design->footer();


    und so die hmtl datei

    {fehler}
    <form method="post" action="admin.php?pflege">
    	<table cellpadding="0" cellspacing="0" border="0">
    		<tr>
    			<td>Titel:</td>
    			<td><input type="text" name="titel" size="30" maxlength="80" value="{title}" /></td>
    		</tr>
    		<tr>
    			<td>PDF Datei:</td>
    			<td><input type="text" name="pdf" size="30" value="{pdf}" maxlength="255" /></td>
    		</tr>
    		<tr>
    			<td></td>
    			<td>
    				<input type="reset" value="Abbrechen" />
    				<input type="submit" name="submit" value="Eintragen" />
    			</td>
    		</tr>
    	</table>
    </form>
    <br />
    {EXPLODE}
    <table>
    	<tr>
    		<td align="center">Title</td>
    		<td align="center" colspan="2">Bearbeiten</td>
    	</tr>
    	{EXPLODE}
    </table>
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    Ithron Hall Of Fame
    Registriert seit
    21.01.2006
    Beiträge
    2.659
    Beitragswertungen
    24 Beitragspunkte
    Habe das Thema mal umbenannt zwecks Übersicht.
    ZitatZitat geschrieben von loW

    Ja ich habs gesehen und wenn ichs kostenlos bekomm dann zahl ich doch nix dafür oder?
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    Fire86 Mitglied
    Registriert seit
    25.04.2009
    Beiträge
    543
    Beitragswertungen
    0 Beitragspunkte
    Am Ende noch ein
    $tpl->out(2);
    ergänzen, sonst wird das schließende </table> nicht ausgegeben.
    Oder das untere EXPLODE einfach entfernen, je nachdem was du da noch vorhast.

    Ansonsten sieht es auf einen kurzen Blick recht funtkionstüchtig für den 1. Versuch aus, auch wenn man natürlich einiges besser machen könnte.

    Warum nimmst du Zeilen 115-127 nicht mit in das Template rein?
    Stattdessen das $tpl->out(1); in die Schleife reinziehen.
    Dann musst du dir allerdings noch Gedanken über die Platzierung der table-Tags machen, damit die nicht bei jedem Schleifendurchgang ausgegeben werden.
    Kein Support per Email oder ICQ!
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    -GoA][-Sniper Mitglied
    Registriert seit
    31.10.2007
    Beiträge
    1.468
    Beitragswertungen
    63 Beitragspunkte
    Ja eig sitmmt das schon so nur ein explode sollte raus


    Zuletzt modifiziert von -GoA][-Sniper am 29.09.2009 - 10:54:46
    0 Mitglieder finden den Beitrag gut.
  5. #5
    User Pic
    Nobody is perfe Mitglied
    Registriert seit
    20.01.2009
    Beiträge
    22
    Beitragswertungen
    0 Beitragspunkte
    wie soll ich die while schleife ins template reinmachen?
    0 Mitglieder finden den Beitrag gut.
  6. #6
    User Pic
    Balthazar3k Mitglied
    Registriert seit
    23.04.2006
    Beiträge
    422
    Beitragswertungen
    7 Beitragspunkte
    Schau es dir mal an, aber ka ob es so 100% geht kann es ja nicht Testen

    <?php
    defined ('main') or die ( 'no direct access' );
    defined ('admin') or die ( 'only admin access' );
     
    $design = new design ( 'Admins Area', 'Admins Area', 2 );
    $design->header();
    // ----------------------
     
    $tpl = new tpl ( 'pflege', 1 );
     
    include('include/admin/kunden/function.php');
     
    $action = $menu->get(1);
    $id     = $menu->get(2);
     
    // Fehler behandlung für das Formular
    if(isset($_POST['submit'])){
        $title      = PostVar("title");
        $pdf        = PostVar("pdf");
       
        $fehler     = "";
       
        if(empty($title))   $fehler .= "<li>Das Feld 'Titel' nich ausgefüllt wurde!</li>";
        if(empty($pdf)) $fehler .= "<li>Das Feld 'PDF Datei' nich ausgefüllt wurde!</li>";
       
        if(!empty($fehler)){
            $false  =  "Formular konnte nicht Eingetragen werden weil:";
            $false  .= "<ul>".$fehler."</ul>";
        }
        $ar = array(
            'false'     => $false,
            'title'     => $title,
            'pdf'       => $pdf
        );
        set_ar_out($ar,0);
    }
    // -----------------
     
    // Editiren usw. der Felder
    switch ($action){
        case "Edit":
            $query = "
                    SELECT * FROM `prefix_pflege` WHERE `id` = '$id'
            ";
            $sql = db_query($query);
            $row = db_fetch_object($sql);
           
            $title  = $row->title;
            $pdf    = $row->pdf;
           
            break;
           
        case "Delete":
            $query = "
                    DELETE FROM `prefix_pflege` WHERE `id` = '$id'
            ";
            db_query($query);
           
            break;
           
        default:
            $id     = $_POST['id'];
           
            $title  = PostVar("title");
            $pdf    = PostVar("pdf");  
           
            if(!empty($id) AND empty($fehler)){
                $query = "
                        UPDATE `prefix_pflege`
                        SET
                            `title` = '".addslashes($title)."',
                            `pdf`   = '".addslashes($pdf)."'
                        WHERE `id` = '$id'
                ";
            }
            if(empty($id)){
                $query = "
                        INSERT INTO `prefix_pflege`
                        (
                            `id`,
                            `title`,
                            `pdf`
                        )
                        VALUES
                        (
                            '',
                            '".addslashes($title)."',
                            '".addslashes($pdf)."'
                        )
                ";
            }
            db_query($query);
            unset($title);
            unset($pdf);
    }
    // ------------------------
     
    // Ausgabe der Einträge
    $tpl->out(1);
    
    $query = "
            SELECT * FROM `prefix_pflege` ORDER BY `title`
    ";
    $sql = db_query($query);
    while ($row = db_fetch_object($sql)){
       	$row->class = ( $row->class == "Cnorm" ? "Cmite" : "Cnorm" );
        $tpl->set_ar_out($row, 2);
        $i++;
    }
    $tpl->out(3);
    
    $design->footer();
    ?>


    {fehler}
    <form method="post" action="admin.php?pflege">
        <table cellpadding="0" cellspacing="0" border="0">
            <tr>
                <td>Titel:</td>
                <td><input type="text" name="titel" size="30" maxlength="80" value="{title}" /></td>
            </tr>
            <tr>
                <td>PDF Datei:</td>
                <td><input type="text" name="pdf" size="30" value="{pdf}" maxlength="255" /></td>
            </tr>
            <tr>
                <td></td>
                <td>
                    <input type="reset" value="Abbrechen" />
                    <input type="submit" name="submit" value="Eintragen" />
                </td>
            </tr>
        </table>
    </form>
    <br />
    {EXPLODE}
    <table>
        <tr>
            <td align="center">Title</td>
            <td align="center" colspan="2">Bearbeiten</td>
        </tr>
        {EXPLODE}
            <tr class="{class}">
            <td>{title}</td>
            <td align="center">
                <a href="admin.php?pflege-Edit-{id}">
                    <img src="include/images/icons/edit.gif" />
                </a>           
            </td>
            <td align="center">
                <a href="admin.php?pflege-Delete-{id}">
                    <img src="include/images/icons/del.gif" />
                </a>
            </td>
        </tr>
        {EXPLODE}
    </table>
    Kein Support für den Raidplaner über PM.
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu HTML, PHP, SQL,...

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten