Rechnung

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Rechnung

    Also ich versuch grad div felder für bestimmte Ausgaben einer Schleife.


    mein Problem ist das ich nicht weiß was ich hinschreiben muss das wenn die Zahl in $i mit 4 endet eine variable gesetzt werden soll. für die 0 hab ichs schon war ja auch leicht aber ich weiß nicht wie ichs für 1,2,3,4,5,6,7,8,9 machen soll. also hier kommt der Teil von meinem Script dann wirds vielleicht verständlicher:

    PHP Code:
    if(($i%10)==0)
        {
        
    $id boxobenl;
        }
        if(
    $i == 1)
        {
        
    $id boxobenr ;
        }
        if(
    $i == 2)
        {
        
    $id boxmittel;
        }
        if(
    $i == 3)
        {
        
    $id boxmitter;
        }
        if(
    $i == 4)
        {
        
    $id boxmittel;
        }
        if(
    $i == 5)
        {
        
    $id boxmitter;
        }
        if(
    $i == 6)
        {
        
    $id boxmittel;
        }
        if(
    $i == 7)
        {
        
    $id boxmitter;
        }
        if(
    $i == 8)
        {
        
    $id boxuntenl;
        }
        if(
    $i == 9)
        {
        
    $id boxuntenr;
        } 
    Lurchi ! Lurchi ! Lurchi !

  • #2
    Hm, spontan kommt mir da strlen() und substr() bzw. {} (um ein bestimmtes Zeichen innerhalb einer Zeichenkette anzusprechen) in den Kopf.
    PHP Code:
    $i 1234;
    $str_i = (string)$i;
    $last_char $str_i{strlen($str_i) - 1};
    echo 
    $last_char// gibt '4' aus 
    Dafür gibt es jedoch bestimmt eine elegantere Lösung...
    Im Übrigen würde sich bei deiner IF-Herde ein switch() anbieten.
    Last edited by Griecherus; 24-01-2007, 10:34.
    Nieder mit der Camel Case-Konvention

    Comment


    • #3
      ah dankeschön

      ist das absicht mit der geschweiften klammer hier:
      $str_i{strlen($str_i) - 1}

      also mit dem gibt er mir dann z.b. in deinem beispiel aus $i =1234

      die 4 aus?
      Lurchi ! Lurchi ! Lurchi !

      Comment


      • #4
        Hast du in meinem Posting nur den Code gelesen?
        Mit geschweiften Klammern kann man innerhalb von Zeichenketten eine bestimmte Position ansprechen.
        PHP Code:
        $str 'ein_string';
        echo 
        $str{0}; // gibt 'e' aus, da an Position 0; 
        Nieder mit der Camel Case-Konvention

        Comment


        • #5
          ja n switch könnt ich auch machen sind ja bloß schönheitsfehler die mach ich weg wenn die Seite funktioniert
          Lurchi ! Lurchi ! Lurchi !

          Comment


          • #6
            dankeschön bin noch nicht so richtig bei mir heute hab net viel geschlafen


            grüße
            Julian
            Lurchi ! Lurchi ! Lurchi !

            Comment


            • #7
              also irgendiwe klappt es nicht wirklich... also die variablen die ich mit den berechnungen belgen will sind meine id's für meine divs aus der css. ich muss so Etiketen ausdrucken und sie müssen alle den gleichen abstand haben.

              hier kommt der relevante teil meiner css datei:
              PHP Code:
              div#boxobenl
              {
              positionabsolute;
              top2.1cm
              left1.6cm;
              width9.1cm;
              height5.1cm
              cliprect(0.1cm1.5cm0.6cm0.4cm);
              }
              div#boxobenr
              {
              positionabsolute;
              top2.1cm
              right1.5cm;
              width9.1cm;
              height5.1cm;
              cliprect(0.1cm1.3cm0.6cm0.7cm);
              }
              div#boxmittel
              {
              positionabsolute;
              top0cm
              left1.6cm;
              width9.1cm;
              height5.1cm
              cliprect(0.1cm1.5cm0.6cm0.4cm);
              }
              div#boxmitter
              {
              positionabsolute;
              top0cm
              right1.5cm;
              width9.1cm;
              height5.1cm
              cliprect(0.1cm1.3cm0.6cm0.7cm);
              }
              div#boxuntenl
              {
              positionabsolute;
              top0cm
              left1.6cm;
              bottom2.1cm;
              width9.1cm;
              height5.1cm;
              cliprect(0.1cm1.5cm0.6cm0.4cm);
              }
              div#boxuntenr
              {
              positionabsolute;
              top0cm
              right1.5cm;
              bottom2.1cm;
              width9.1cm;
              height5.1cm;
              cliprect(0.1cm1.3cm0.6cm0.7cm);

              also jetzt kommt der Teil mit der Ausgabe und schleife in meinem Script:

              PHP Code:
              <?php
                  $i
              =0;
                  for(
              $i=0;$i<(ceil(count($mg)/2));$i++) 
                  {
                  
              $str_i = (string)$i;
                  
              $last_char $str_i{strlen($str_i) - 1};
                  
                  if((
              $i%10)==0)
                  {
                  
              $id "boxobenl";
                  }
                  if(
              $last_char == 1)
                  {
                  
              $id "boxobenr";
                  }
                  if(
              $last_char == 2)
                  {
                  
              $id "boxmittel";
                  }
                  if(
              $last_char == 3)
                  {
                  
              $id "boxmitter";
                  }
                  if(
              $last_char == 4)
                  {
                  
              $id "boxmittel";
                  }
                  if(
              $last_char == 5)
                  {
                  
              $id "boxmitter";
                  }
                  if(
              $last_char == 6)
                  {
                  
              $id "boxmittel";
                  }
                  if(
              $last_char == 7)
                  {
                  
              $id "boxmitter";
                  }
                  if(
              $last_char == 8)
                  {
                  
              $id "boxuntenl";
                  }
                  if(
              $last_char == 9)
                  {
                  
              $id "boxuntenr";
                  }
              ?>
              <tr align="left" <?php echo((($i>0) && ($i%10)==0)?'style="page-break-before:always"':'');?> >
              <td valign="top">
              <?php if (isset($mg[$i])){ ?>
              <div id="<?echo $id;?>">
              <table width="100%" border="0" cellspacing="0" cellpadding="0">
              <tr>
              <td><img src="pix/leer.gif" width="90" height="155" alt="" border="0"></td>
              <td valign="top" nowrap><span class="text3">
              <img src="pix/leer.gif" width="1" height="10" alt="" border="0"><br />
              <?php echo $mg[$i]['vname'].' '.$mg[$i]['name'
              #((strlen($mg[$i]['vname'].' '.$mg[$i]['name']) > 15)?$mg[$i]['vname'].'<br />'.$mg[$i]['name']:$mg[$i]['vname'].' '.$mg[$i]['name']); ?></span><br />
              <img src="pix/leer.gif" width="1" height="10" alt="" border="0"><br />
              <span class="text2">Mitglieds-Nr: <?php echo $mg[$i]['mitgliedsnr']; ?></span><br />
              </td>
              </tr>
              <tr>
              <td class="text" valign="top">&nbsp;[url]www.animalsliberty.de[/url]<br />&nbsp;info@animalsliberty.de<br />
              </td>
              <td class="text" valign="top">
              Tel. 01 60/96 61 80 25<br />Mitglied seit: <?php echo $mg[$i]['eintritt']; ?>
              </td>
              </tr>
              <tr>
              <td colspan="2"><img src="pix/leer.gif" width="1" height="19" alt="" border="0"></td>
              </tr>
              </table>
              </div>
              <?php } else echo "&nbsp;" ?>
              </td>
              <td><img src="pix/leer.gif" width="1" height="153" alt="" border="0"></td>
              <td valign="top">
              <?php if (isset($mg[$i+1])){ ?>
              <div id="<?echo $id;?>">
              <table width="100%" border="0" cellspacing="0" cellpadding="0">
              <tr>
              <td><img src="pix/leer.gif" width="90" height="155" alt="" border="0"></td>
              <td valign="top" nowrap><span class="text3">
              <img src="pix/leer.gif" width="1" height="10" alt="" border="0"><br />
              <?php echo $mg[$i+1]['vname'].' '.$mg[$i+1]['name'
              #((strlen($mg[$i+1]['vname'].' '.$mg[$i+1]['name']) > 15)?$mg[$i+1]['vname'].'<br />'.$mg[$i+1]['name']:$mg[$i+1]['vname'].' '.$mg[$i+1]['name']); ?>
              </span><br />
              <img src="pix/leer.gif" width="1" height="10" alt="" border="0"><br />
              <span class="text2">Mitglieds-Nr: <?php echo $mg[$i+1]['mitgliedsnr']; ?></span><br />
              </td>
              </tr>
              <tr>
              <td class="text" valign="top">
              &nbsp;[url]www.animalsliberty.de[/url]<br />&nbsp;info@animalsliberty.de<br />
              </td>
              <td class="text" valign="top">
              Tel. 01 60/96 61 80 25<br />Mitglied seit: <?php echo $mg[$i+1]['eintritt']; ?>
              </td>
              </tr>
              <tr>
              <td colspan="2"><img src="pix/leer.gif" width="1" height="19" alt="" border="0"></td>
              </tr>
              </table>
              </div>
              <?php } else echo "&nbsp;" ?>
              </td>
              <td>&nbsp;</td>
              </tr>
              <?php
              $i
              =$i+2;
              }

              ?>
              sieht da jemand einen Fehler?? also beim Ausdruck verschiebt sich jeder Block in jeder Zeile ein bisschen nach unten an was kann das liegen?
              Last edited by Anbu; 24-01-2007, 12:04.
              Lurchi ! Lurchi ! Lurchi !

              Comment


              • #8
                Ich habe mir den ganzen Code noch nicht komplett angesehen, du solltest nur daran denken, dass $last_char kein integer ist, sondern ein string. Demnach:
                PHP Code:
                if ($last_char == '1')
                {

                }
                // statt
                if ($last_char == 1)
                {


                Nieder mit der Camel Case-Konvention

                Comment


                • #9
                  achso probier ich gleich mal aus
                  Lurchi ! Lurchi ! Lurchi !

                  Comment


                  • #10
                    also daran lags leider auch nicht
                    Lurchi ! Lurchi ! Lurchi !

                    Comment


                    • #11
                      darstellungsprobleme haben i.d.r. nichts mit php zu tun.
                      wo kann man die ausgabe mal live sehen?

                      Comment


                      • #12
                        geht leider nicht hab grad nachgefragt is verwaltung...

                        kanns ja erklären

                        Es sieht so aus also:

                        Name:
                        Mitgliedsnummer:

                        homepage: Tel.:
                        startseite: Mitglied seit:


                        und des ist ein block auf ein Blatt passen 10 drauf immer 2 in einer Zeile
                        Lurchi ! Lurchi ! Lurchi !

                        Comment


                        • #13
                          dann erkläre auch dem techniker aus der werkstatt das nächste mal doch einfach mal am telefon (oder per e-mail), was mit deinem auto nicht stimmt. oder dem arzt, wenn dir etwas weh tut. würdest du dann immer noch sinnvolle (und vor allem effektive) hilfe von ihnen erwarten?

                          Comment


                          • #14
                            kann ja nichts dafür ich mein genauso wie ichs erklärt hab siehts auch aus ist ja nicht schwer sich des vorzustellen oder?
                            Lurchi ! Lurchi ! Lurchi !

                            Comment


                            • #15
                              ich denke nicht, dass dir mit einer "vorstellung" geholfen ist.

                              Comment

                              Working...
                              X