Variablen mit for-Schleife erstellen...

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

  • #16
    ich unterbrech eure Konversation nur ungern aber ...

    zwischen $number01 und $number10 fehlen die Zahlen ....

    und ausserdem möchte ich das das script nach $amount aufhört zu zahlen ...

    so in etwa ??
    Code:
    if ($number > $amount)
     {
    	exit; // Script abbrechen
     }
    ach ja der db_entry :



    phreak ...

    [Editiert von DaPhreak am 14-03-2002 um 19:08]
    If something's HARD to do,

    then it's not worth doing.
    (Homer J. (Jay) Simpson)

    Kommentar


    • #17
      Original geschrieben von WhiteMountain

      Code:
      <?
      $start=" ".$start;
      $end=" ".$end;
      $x="01";
      echo $end."<br>";
      for ($i=$start; $i<=$end; $i++)
      	{
      	  $variablenname="number".$x;
      	  $$variablenname=trim($i);
      	  $x++;
          }
      ?>
      Makes Apache Crashing !!!!!

      mfg daphreak
      If something's HARD to do,

      then it's not worth doing.
      (Homer J. (Jay) Simpson)

      Kommentar


      • #18
        *rotwerd* upsi jep stimmt, das endet in einer endlosschleife weil das leerzeichen gar nix bringt...

        der müll sind die führenden nullen - mit denen kannst net einfach hochzählen weil wie gesagt oktalzahlen (drum zählt er da auch bis ins nirwana - mit dem leerzeichen is die for-bedingung immer 1<=1 - sorry unachtsamkeit meinerseits)

        wenn die start/end nummern in der form aus der datenbank kommen hast mit allen zahln unter 100 ein problem, müssen die unbedingt so gespeichert werden?
        puh vielleicht denk ich auch nur einfach mal wieder zu kompliziert...

        mit dezimalzahlen isses dann einfach:
        Code:
        $start=1;
        $end=20;
        $x="01";
        for ($i=$start; $i<=$end; $i++)
        	{
        	  $variablenname="number".$x;
        	  $$variablenname=sprintf ("%03d", $i);
        	  echo $variablenname."=".$$variablenname."<br>";
        	  $x++;
            }
        das sprintf ("%03d", $i); füllt deine nullen wieder auf.
        und: nope - DAS is keine infinitschleife

        Kommentar


        • #19
          werd ich glei mal ausprobln ...

          mfg phreak
          If something's HARD to do,

          then it's not worth doing.
          (Homer J. (Jay) Simpson)

          Kommentar


          • #20
            also grundsätzlich gehts ...

            aber die zahlen zwischen 001 und 010 fehlen ....

            phreak

            If something's HARD to do,

            then it's not worth doing.
            (Homer J. (Jay) Simpson)

            Kommentar


            • #21

              bei mir fehlt da gar nix - schaus dir selber an http://www.be-yawp.com/test/test.php

              *blicknetmehrdurch*

              Kommentar


              • #22
                habs nochmal ohne mein script probiert ...

                Code:
                number01 ==> 001
                number02 ==> 
                number03 ==> 
                number04 ==> 
                number05 ==> 
                number06 ==> 
                number07 ==> 
                number08 ==> 
                number09 ==> 
                number10 ==> 010
                number11 ==> 011
                number12 ==> 012
                number13 ==> 013
                number14 ==> 014
                number15 ==> 015
                number16 ==> 016
                number17 ==> 017
                number19 ==> 018
                number19 ==> 019
                number20 ==> 020

                mein code :
                Code:
                <?
                // Test for-Schleife
                	$start=1;
                	$end=20;
                	$x="01";
                	for ($i=$start; $i<=$end; $i++)
                	{
                	  $variablenname="number".$x;
                	  $$variablenname=sprintf ("%03d", $i);
                	  $x++;
                    }
                	echo "number01 ==> $number01<p>
                	      number02 ==> $number02<p>
                	      number03 ==> $number03<p>
                	      number04 ==> $number04<p>
                	      number05 ==> $number05<p>
                	      number06 ==> $number06<p>
                	      number07 ==> $number07<p>
                	      number08 ==> $number08<p>
                	      number09 ==> $number09<p>
                	      number10 ==> $number10<p>
                	      number11 ==> $number11<p>
                	      number12 ==> $number12<p>
                	      number13 ==> $number13<p>
                	      number14 ==> $number14<p>
                	      number15 ==> $number15<p>
                	      number16 ==> $number16<p>
                	      number17 ==> $number17<p>
                	      number19 ==> $number18<p>
                	      number19 ==> $number19<p>
                	      number20 ==> $number20";
                ?>
                Dürfte ja eigentlich nich so arg von deinem abweichen ... aber schau selbst hier

                aba wieso geht des ned ????



                nurmal so : was bedeutet %03d ???

                [Editiert von DaPhreak am 16-03-2002 um 17:13]
                If something's HARD to do,

                then it's not worth doing.
                (Homer J. (Jay) Simpson)

                Kommentar


                • #23
                  argh langsam glaub ich ich sollt dne job wechseln.
                  net x="01"; sondern x=1;
                  und net
                  $variablenname="number".$x; sondern $variablenname="number".sprintf ("%02d", $x);
                  Code:
                  $x=1;
                  for ($i=$start; $i<=$end; $i++)
                  	{
                  	  $variablenname="number".sprintf ("%02d", $x);
                  	  $$variablenname=sprintf ("%03d", $i);
                  	  echo "$".$variablenname."=".$$variablenname."<br>";
                  	  $x++;
                      }
                  @03d wirf mal einen blick ins manual unter "sprintf"
                  hättst aber selber auch sehen können dass die variablen 2-9 keinen nuller dran hatten


                  [Editiert von WhiteMountain am 16-03-2002 um 17:24]

                  Kommentar


                  • #24
                    ich hab dich ja auch gefragt was %03d bedeutet

                    mfg phreak
                    If something's HARD to do,

                    then it's not worth doing.
                    (Homer J. (Jay) Simpson)

                    Kommentar


                    • #25
                      oooohhh

                      ich könnt dich knutshcen

                      dank dir weißer berg

                      phreak
                      If something's HARD to do,

                      then it's not worth doing.
                      (Homer J. (Jay) Simpson)

                      Kommentar


                      • #26
                        noch was :

                        wenn ich jetzt die $id verwende,

                        kommt Warning: getimagesize: Unable to open '1'.jpg'' for reading. in d:\web\domain(1)\debug\image_functions.php on line 19

                        Code:
                        function imagesize($nummer) // Funktion für die nächste Seite
                        {
                        	global $id;
                        	global $picpath;
                        	global $pic;
                        	$pathtopic = $picpath + $pic + $id;
                        	$imageinfo = GetImageSize ("$pathtopic'.jpg'");
                        }
                        return $imageinfo;
                        und im imgtag wird der verwendet :
                        Code:
                        <img $imageinfo[3] src=\"$picpath$pic$id.jpg\" border=1></a>
                        If something's HARD to do,

                        then it's not worth doing.
                        (Homer J. (Jay) Simpson)

                        Kommentar


                        • #27
                          Original geschrieben von WhiteMountain
                          Code:
                          <?
                          $start=" ".$start;
                          $end=" ".$end;
                          $x="01";
                          echo $end."<br>";
                          for ($i=$start; $i<=$end; $i++)
                          	{
                          	  $variablenname="number".$x;
                          	  $$variablenname=trim($i);
                          	  $x++;
                              }
                          ?>
                          $x="01"; $x++; führt seit PHP4.1 (oder so ähnlich) nicht mehr zum gewünschten Ergebnis.
                          Sicherer ist die Variante mit str_pad oder sprintf:

                          PHP-Code:
                          <?
                          for ($x=1, $i=$start; $i<=$end; $x++, $i++)
                              ${'number'.str_pad($x, 2, '0', STR_PAD_LEFT)}=
                                str_pad($i, 3, '0', STR_PAD_LEFT)
                          ?>
                          mein Sport: mein Frühstück: meine Arbeit:

                          Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

                          Kommentar


                          • #28
                            Code:
                            <?
                            for ($x=1, $i=$start; $i<=$end; $x++, $i++)
                                ${'number'.str_pad($x, 2, '0', STR_PAD_LEFT)}=
                                  str_pad($i, 3, '0', STR_PAD_LEFT)[b][SIZE=4];[/SIZE][/b]
                            ?>

                            nich so schlimm,

                            habs gefunden
                            If something's HARD to do,

                            then it's not worth doing.
                            (Homer J. (Jay) Simpson)

                            Kommentar


                            • #29
                              Original geschrieben von Titus

                              $x="01"; $x++; führt seit PHP4.1 (oder so ähnlich) nicht mehr zum gewünschten Ergebnis.
                              Sicherer ist die Variante mit str_pad oder sprintf:

                              PHP-Code:
                              <?
                              for ($x=1, $i=$start; $i<=$end; $x++, $i++)
                                  ${'number'.str_pad($x, 2, '0', STR_PAD_LEFT)}=
                                    str_pad($i, 3, '0', STR_PAD_LEFT)
                              ?>
                              oh wusst ich nicht - thx

                              Kommentar


                              • #30
                                hat jemand ahnung von getimagesize ???

                                phreak
                                If something's HARD to do,

                                then it's not worth doing.
                                (Homer J. (Jay) Simpson)

                                Kommentar

                                Lädt...
                                X