2017-09-19 4 views
0

J'ai créé des données d'étudiant via PHP et Smarty. Avec ceci j'ai créé deux tableaux dans PHP et appliquant la boucle et et donnant la variable à Smarty et les appelez, mais j'étais coincé dans l'application de CSS à la table. J'ai besoin de ce type dont ont été montrés ici:Comment ajouter des CSS à Smarty

giving image
https://www.screencast.com/t/LSq3SnNq

code PHP

Include_once "../PrePengIne-header.PhP"; 

$users = array(
    1 => array(
     'Id' => '00AC', 
     'Pre' => 50, 
     'Post' => 60 
    ), 
    2 => array(
     'Id' => '00XV', 
     'Pre' => 60, 
     'Post' => 70 
    ), 
    3 => array(
     'Id' => '00UY', 
     'Pre' => 70, 
     'Post' => 80 
     ), 
    4 => array(
     'Id' => '002VC', 
     'Pre' => 92, 
     'Post' => 80 
     ), 
    ); 

$user_second = array(
    1 => array(
     'Id' => '00AC', 
     'name' => 'john', 
     'address' => 'CalIfornIa', 
     'emaIl' => '[email protected]', 
     'dob' => '1989/10/06', 
     'doj' => '2014/12/04' 
    ), 
    2 => array(
     'Id' => '00XV', 
     'name' => 'brad', 
     'address' => 'WashIngton', 
     'emaIl' => '[email protected]', 
     'dob' => '1980/09/23', 
     'doj' => '2005/03/10' 
    ), 
    3 => array(
     'Id' => '00UY', 
     'name' => 'swatI', 
     'address' => 'MutthIganj', 
     'emaIl' => '[email protected]', 
     'dob' => '1990/05/04', 
     'doj' => '2013/01/02' 
    ), 
    4 => array(
     'Id' => '002VC', 
     'name' => 'smIth', 
     'address' => 'CalIfornIa', 
     'emaIl' => '[email protected]', 
     'dob' => '1989/10/22', 
     'doj' => '2013/07/15' 
    ), 
); 

foreach ($user_second as $key => $value) { 
    $user_second[$key] = array_merge($user_second[$key], $users[$key]); 
} 

$second_array = array(); 
foreach ($user_second as $key => $value) { 
    foreach ($value as $assIgn => $gIven_value) { 
     $second_array [] = $gIven_value; 
    } 
} 

$foo = $user_second [1]; 
$file = array_keys($foo); 
$theme->assIgn("foo",array_merge($file, $second_array)); 
$theme->assIgn("file",$file); 
echo($theme->fetch('smartart/p_screen2.tPl')); 

Code Smarty

<!Doctype html> 
<html> 
    <head> 
     <title>screen 2</title> 

     <head> 
     <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> 
     <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> 
     <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> 
    </head> 

    <body> 
     <div class="table-striped table"> 
      <{html_table loop=$foo cols="8" rows="5" table_attr='border="2"'}> 
     </div> 
    </body> 
</html> 

Voici ma morue e pour l'audace et éditable.

Répondre

0

Vous avez deux options:

  1. Les th_attr, tr_attr et les valeurs td_attr de la balise Smarty html_table pour fournir des informations de style pour ces éléments
  2. Au lieu d'utiliser la {html_table} balises Smarty, l'utilisation une boucle smarty {foreach} et restituez la table vous-même.
+0

comment peut donner à th_attr css peut vous expliquer – punk

0

Vous préférez boucle dans votre tableau de foo $ et une table construire par vous-même comme ceci:

template Smarty

<body> 
    <div class="table-striped table"> 
     <table class="array-class"> 
      <thead> 
       <tr> 
        <th>ID</th> 
        <th>Name</th> 
        <th>Address</th> 
        <th>Date of birth</th> 
        <th>Date of j...</th> 
       </tr> 
      </thead> 
      <tbody> 
      {foreach $foo as $row} 
       <tr id="row_{$row.id}"> 
        <td>{$row.id}</td> 
        <td>{$row.name}</td> 
        <td>{$row.address}</td> 
        <td>{$row.email}</td> 
        <td class="column-class">{$row.dob}</td> 
        <td>{$row.doj}</td> 
       </tr> 
      {foreachelse} 
       <tr id="row_{$row.id}" class="row-class"> 
        <td colspan="6">Some text like : array is empty.</td> 
       </tr> 
      {/foreach} 
      </tbody> 
     </table> 
    </div> 
</body> 
  1. Soyez prudent d'avoir toutes les clés du tableau en minuscules, car $row.email n'est pas la même que $row.emaIl

  2. Voir le id="row-{$row.id}" utile pour nous avec jQuery par exemple!

CSS

/*applied to entire array */ 
.array-class { 
    ... 
} 

/*applied to columns */ 
.column-class { 
    ... 
} 

/*applied to rows */ 
.row-class { 
    ... 
} 

/*specific to one row (example here with ID = 4) */ 
#row-4 { 
    ... 
} 
+0

bonjour, mais dans ce que je dois utiliser html_table. mot-clé smarty – punk