Ankündigung

Einklappen
Keine Ankündigung bisher.

versch. div klassen für unterschiedliche einträge

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • versch. div klassen für unterschiedliche einträge

    Hallo Leute, ich habe eine Datenverwaltung in dem ich mehrere Datensätze habe. Diese Datensätze werde in einer MySQL DB gespeichert.
    In einer Datei lese ich die Daten aus und schreibe diese in eine ´Tabelle
    Name - Auftrag - Priorität - stand
    Müller - Auftrag 1 - hoch - fertig
    Mustermann - Auftrag 2 - niedrig - in bearbeitung
    Heinz - Auftrag 3 - normal - zurück gestellt

    So werden meine Daten angezeigt.

    Jetzt möchte ich aber das anstatt die Priorität "normal" "niedrig" oder "hoch" da steht das ich für die 3 versch. div klassen habe.

    $fldprioritaet=="normal" --> <div class="prio_3">
    $fldprioritaet=="hoch" --> <div class="prio_2">
    $fldprioritaet=="n

  • #2
    da fehlt was, aber nenn doch deine klassen: prio-normal, prio-undefined, ... etc

    und dann einfach

    PHP-Code:
    <div class="prio-<?php echo $prioclass?>">
    Vorher dann den Wert prüfen, damit nicht eine Klasse aufgerufen wird, die nicht existiert (z.B. wenn variable leer wäre dann class="prio-">)

    PHP-Code:
      if($fldprioritaet == 'normal' OR $fldprioritaet == 'hoch' OR ...) {
        
    $prioclass $fldprioritaet;
      } else {
        
    $prioclass 'undefined';
      } 
    Ansonsten, dein Beitrag ist nicht vollständig ich spekulier grad bischen

    Kommentar


    • #3
      Hallo, habe das jetzt gelöst mit meinen Prob.

      PHP-Code:
      [LEFT]if ( $fldstatustype=="2")
      {
      $tpl->set_var('status_class''class="stts_1"');
      }
      if ( 
      $fldstatustype=="-1")
      {
      $tpl->set_var('status_class''class="stts_2"');
      }
      if ( 
      $fldstatustype=="-2")
      {
      $tpl->set_var('status_class''class="stts_3"');
      }
      if ( 
      $fldstatustype=="0")
      {
      $tpl->set_var('status_class''class="stts_4"');[/LEFT]

      Funktioniert auch. Jetzt möchte ich allerdings noch das jeweils ein Alternativ text da steht, wie macht man das? jemand ne ahnung

      Kommentar


      • #4
        in welches sinne alternativ text?
        ich hätte das gemacht wie PsychoEagle beschrieben hat, da spar man sich viel code

        Kommentar


        • #5
          Genau für solche Fälle wurden switches erfunden:
          PHP-Code:
          switch ($fldstatustype) {
            case 
          2:
              
          $tpl->set_var('status_class''class="stts_1"');
              break;

            case -
          1:
              
          $tpl->set_var('status_class''class="stts_2"');
              break;

            case -
          2:
              
          $tpl->set_var('status_class''class="stts_3"');
              break;

            case 
          0:
              
          $tpl->set_var('status_class''class="stts_4"');
              break;

            default:
              
          $tpl->set_var('status_class''class="stts_error"');
              break;
            } 
          Da hier set_var immer identisch ist, wäre eine Lösung mit Arrays wohl noch eleganter...
          PHP-Code:
          $classes = array (
                          -
          1      => 'stts_2' ,
                          -
          2      => 'stts_3' ,
                           
          0      => 'stts_4' ,
                           
          2      => 'stts_1' ,
                          
          'error' => 'stts_error' ,
                           );

          if (
          false == isset ($classes[$fldstatustype])) { 
            
          $fldstatustype 'error';
            }

          $tpl->set_var('status_class''class="' $classes[$fldstatustype] . '"'); 

          Kommentar


          • #6
            jetzt müsste er nur noch sagen was er mit alternativ text meint

            Kommentar


            • #7
              Vielleicht img alt=""

              Kommentar


              • #8
                Ich meine mit Alt Tex das bei class=stts_2 beim MouseOver da steht Status zurückgestellt usw.

                PHP-Code:
                $classes = array (
                                -
                1      => 'stts_2' ,
                                -
                2      => 'stts_3' ,
                                 
                0      => 'stts_4' ,
                                 
                2      => 'stts_1' ,
                                
                'error' => 'stts_error' ,
                                 );

                if (
                false == isset ($classes[$fldstatustype])) { 
                  
                $fldstatustype 'error';
                  }

                $tpl->set_var('status_class''class="' $classes[$fldstatustype] . '"'); 

                Kommentar


                • #9
                  asooo das meint er^^, naja dann bastle nen zweites array genau wie mit den classen, nur halt mit den alternativ texten

                  Kommentar


                  • #10
                    PHP-Code:
                    ...
                            
                    2      => array ('stts_1' 'Status zurückgestellt') ,
                    ...
                    $tpl->set_var('status_class''class="' $classes[$fldstatustype][0] . '"');  
                    $tpl->set_var('status_class''alt="'    $classes[$fldstatustype][1] . '"'); 
                    Irgendwie so.

                    Kommentar


                    • #11
                      Zitat von Pillemon Beitrag anzeigen
                      Ich meine mit Alt Tex das bei class=stts_2 beim MouseOver da steht Status zurückgestellt usw.
                      Das wäre dann nicht der AlternativText (<alt=...>), sondern das <title=...>-Attribut. Wie du das in dein Template rein bringst, kann ich dir auch nicht sagen.

                      Kommentar


                      • #12
                        Absolut richtig. War jetzt gedanklich auf den Begriff fixiert.

                        Kommentar


                        • #13
                          Habs jetzt so gemacht

                          PHP-Code:
                                  $classes_stat = array (
                                          -
                          1        => 'stts_2' 'abgeschlossen' ,
                                          -
                          2        => 'stts_3' 'abschließend weitergeleitet' ,
                                          
                          0        => 'stts_4' 'zurückgestellt' ,
                                          
                          2        => 'stts_1' 'offen' ,
                                          
                          'error' => 'stts_error' ,
                                          );

                                  if (
                          false == isset ($classes_stat[$fldstatustype])) 
                                  { 
                                  
                          $fldstatustype 'error';
                                  }
                                  
                          $tpl->set_var('status_class''class="' $classes_stat[$fldstatustype][0] . '"');  
                                  
                          $tpl->set_var('status_class''title="'    $classes_stat[$fldstatustype][1] . '"'); 
                          Aber irgendwie funktioniert das nicht, der zeigt mir jetzt anstatt die klasse den statustype an

                          Kommentar


                          • #14
                            PHP-Code:
                            $classes_stat = array (
                                -
                            1       => array('stts_2' 'abgeschlossen') ,
                                -
                            2       => array('stts_3' 'abschließend weitergeleitet') ,
                                
                            0        => array('stts_4' 'zurückgestellt'),
                                
                            2        => array('stts_1' 'offen'),
                                
                            'error' => array('stts_error''error')
                            );

                            if (
                            false == isset($classes_stat[$fldstatustype])) { 
                                 
                            $fldstatustype 'error';
                            }
                            $tpl->set_var('status_class''class="' $classes_stat[$fldstatustype][0] . '"');  
                            $tpl->set_var('status_class''title="' $classes_stat[$fldstatustype][1] . '"'); 

                            Kommentar


                            • #15
                              Hatte doch oben geschrieben, wie es geht ?!

                              Kommentar

                              Lädt...
                              X