mal wieder random *!!##''*

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

  • mal wieder random *!!##''*

    Hi Leute ...

    heute hab ich mal wieder php probleme ohne ende ...

    folgendes script hab ich hier im bord gefunden und es etwas modifiziert:

    PHP Code:
    <?

    $handle=opendir ('.');

    while ($file = readdir ($handle)) {
        if ($file != "." && $file != "..") {
            if (eregi('.jpg',$file)) {
                print "<img src=\"$file\">";
            }
        }
    }
    closedir($handle);

    ?>

    es ließt alle jpg dateien aus einem ordner aus ....


    jetzt habe ich etwas dran gepuzzelt, sodass es nur noch 1 datei aus dem ordner auslesen soll und dies per zufall geschehen soll ...

    PHP Code:
    <?

    $handle=opendir ('.');

    while ($file = readdir ($handle)) {
        if ($file != "." && $file != "..")

            srand((double)microtime()*100000);
            $rand_keys = array_rand($file, count($file)-1);
            for($i=0;count($rand_keys)>$i;$i++) {
            $endarray.=$file[$rand_keys[$i]];
             }

    {
            if (eregi('.jpg',$file)) {

               echo "<img src=\"$endarray\">";
            }
        }

    closedir($handle);

    ?>
    aber: parse error: Parse error: parse error in d:\homepages\webs\project\mc\entwicklung\random2.php on line 23

    line 23 -> ?>

    habt ihr eine idee ??
    danke schonmal !

    cu,
    HANSI

  • #2
    checke mal deine { und }
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Comment


    • #3
      funktioniert noch nicht:

      PHP Code:
      <?

      $handle=opendir ('.');

      while ($file = readdir ($handle)) {
          if ($file != "." && $file != "..")

              srand((double)microtime()*100000);
              $rand_keys = array_rand($file, count($file)-1);
              for($i=0;count($rand_keys)>$i;$i++) {
              $endarray.=$file[$rand_keys[$i]];
               }

      {
              if (eregi('.jpg',$file)) {

                 echo "<img src=\"$endarray\">";
              }
          }


      } // *** hatte gefehlt ***

      closedir($handle);

      ?>
      parse error: Warning: Argument to array_rand() has to be an array in d:\homepages\webs\project\mc\entwicklung\random2.php on line 9

      das gibt es mir ein paar dutzend mal aus und versucht zwischendrin die fotos auszugeben (schlägt fehlt: kein input).


      cu,
      HANSI

      Comment


      • #4
        checke nochmals deine { und }

        habe auch was in deinen code gemalt.
        PHP Code:
        $handle=opendir ('.');

        while (
        $file readdir ($handle)) { // WO GEHT DER ZU ?
            
        if ($file != "." && $file != "..")

                
        srand((double)microtime()*100000);
                
        $rand_keys array_rand($filecount($file)-1);
                for(
        $i=0;count($rand_keys)>$i;$i++) { // FOR BEGINN
                
        $endarray.=$file[$rand_keys[$i]];
                 } 
        // FOR ENDE

        // WO GEHOERT DER ZU ?
                
        if (eregi('.jpg',$file)) { // IF START

                   
        echo "<img src=\"$endarray\">";
                } 
        // IF END
            
        // WHILE ENDE ????


        // *** hatte gefehlt *** // ODER IST WHILE ENDE HIER???? 
        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


        Comment


        • #5
          die klammern stimmen schon, sind bloß ein paar zuviel

          probier's aber trotzdem mal so:
          PHP Code:
          $handle=opendir ('.');
          $files=array();
          while (
          $file readdir ($handle))
            if (
          eregi('.jpg',$file))
               
          $files[]=$file;
          if (
          count($files)>0)
          {
            
          srand((double)microtime()*100000);
            
          $files=array_rand($filescount($files)-1);
            echo 
          '<img src="'.$files[0].'" />';

          ungetestet
          Ich denke, also bin ich. - Einige sind trotzdem...

          Comment


          • #6
            Original geschrieben von mrhappiness
            die klammern stimmen schon, sind bloß ein paar zuviel
            aber wozu gehört die dann?
            PHP Code:
            // WO GEHOERT DER ZU ? 
            INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


            Comment


            • #7
              Original geschrieben von Abraxax
              aber wozu gehört die dann?
              PHP Code:
              // WO GEHOERT DER ZU ? 
              der gehört zu dem alleinstehenden }
              } // WHILE ENDE ????
              Ich denke, also bin ich. - Einige sind trotzdem...

              Comment


              • #8
                Original geschrieben von mrhappiness
                der gehört zu dem alleinstehenden }
                macht das sinn? geht das überhaupt? irgendwo was mit {} klammern?

                naja. wenn dein codebsp funktioniert, sollte er es nehmen...
                INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                Comment


                • #9
                  Original geschrieben von Abraxax
                  macht das sinn? geht das überhaupt? irgendwo was mit {} klammern?

                  naja. wenn dein codebsp funktioniert, sollte er es nehmen...
                  1. ansichtssache, ich tendiere extremst stark zu nein
                  2. ja
                  3. ja
                  4. hoff ich doch, auf jeden fall isses hübsch (imho) und es hat weniger { und }
                  Ich denke, also bin ich. - Einige sind trotzdem...

                  Comment


                  • #10
                    Original geschrieben von mrhappiness
                    4. hoff ich doch, auf jeden fall isses hübsch (imho) und es hat weniger { und }
                    *zustimmungdujetzterntest*
                    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                    Comment


                    • #11
                      leider nicht ...

                      es kommen zwar keine fehlermeldungen mehr aber es wird nichts ausgegeben:

                      <img src="" />

                      cu,
                      HANSI

                      Comment


                      • #12
                        was macht das eignetlich?
                        PHP Code:
                        $files=array_rand($filescount($files)-1); 
                        bin zu faul zum suchen...

                        - ist es klug ein array durch ein array zu überschreiben?
                        - steht in $files was drin?
                        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                        Comment


                        • #13
                          hab den ganzen kram net gelesen aber der code hier macht eigentlich was Du willst.
                          PHP Code:
                          $handle=opendir ('./');

                          while (
                          $file readdir ($handle)) {
                                  if (
                          eregi('.jpg',$file)) {
                                      
                          $pics[]= $file;
                                  }
                          }
                          closedir($handle);
                          srand ((float) microtime() * 10000000);
                          $rand_pic $pics[array_rand ($pics)];
                          echo 
                          '<img src="'.$rand_pic.'">'
                          EDIT:
                          jetzt hab ichs gelesen is ja wie happies antwort
                          Ich sollte heimgehen...

                          Last edited by MelloPie; 25-04-2003, 15:14.
                          Beantworte nie Threads mit mehr als 15 followups...
                          Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

                          Comment


                          • #14
                            is fast wie meiner

                            du hast mehr geschweifte klammern, dafür setzt du array_rand richtig ein *g*
                            Ich denke, also bin ich. - Einige sind trotzdem...

                            Comment


                            • #15
                              [advice]
                              geschweifte Klammern gehören auch zu singleline ifs, etc.
                              [/advice]
                              Beantworte nie Threads mit mehr als 15 followups...
                              Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

                              Comment

                              Working...
                              X