random :(

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

  • random :(

    Mein Code:
    PHP-Code:
    function moment() {
        
    $first mysql_fetch_array(mysql_query("SELECT * FROM ac_linkdb ORDER BY id DESC"));
        
    $count mysql_fetch_array(mysql_query("SELECT COUNT(*) FROM ac_linkdb"));
        
    $cn $count[0]-1;
        
    $random rand($cn$first[0]);
       
    $ab mysql_fetch_array(mysql_query("SELECT id FROM ac_linkdb WHERE id='$random'"));
        
    #DEBUG echo "<br>".$first[0].", ".$cn.", ".$random;
        
    if(!$ab[0]) {
             
    moment();
        }
        else {
            return 
    $random;
        }

    Mein Problem:

    Er soll einen zufallswert machen. Wenn der zufallswert keine ID
    in der Datenbank ist, soll er die Funktion nochmal ausführen, wenn der zufallswert eine ID ist, soll er den Zufallswert zurückgeben.

    Das macht er auch, aber er gibt immer nur den ersten Wert (der ja keine ID ist) zurück.

    Kann mir da einer Helfen ?
    Danke im Vorraus

  • #2
    Ich weiß ja nicht warum Du das so kompliziert machst aber wenn Du eine zufällige ID, die in der DB vorhanden sein soll als Ergebnismenge haben willst, dann mach das doch so:

    SELECT id FROM ac_linkdb ORDER BY rand()
    Beantworte nie Threads mit mehr als 15 followups...
    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

    Kommentar


    • #3
      Danke, funktioniert perfekt

      Kommentar


      • #4
        MySQL Stell dir zwar eine RAND() Function zuer verfügung, aber diese geht erst mit der Version 3.23.xx also beachte bitte dies fals du deine Soft auf einem älteren MYSQL Server laufen lassen solltest.

        mit PHP Löst du das problem so:

        srand ((double)microtime()*1000000);
        $randval = rand();

        http://de.php.net/manual/de/function.srand.php

        Zuerst den Zufallsgenerator initialisieren und dann gehts los
        -- Bat[e] / pixelcore.com

        Kommentar


        • #5
          Bei welchem Gurkenhoster gibt's denn noch 'ne MySQL 3.22.xx ??
          carpe noctem

          [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
          [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

          Kommentar


          • #6
            Original geschrieben von Bat[e]
            MySQL Stell dir zwar eine RAND() Function zuer verfügung, aber diese geht erst mit der Version 3.23.xx also beachte bitte dies fals du deine Soft auf einem älteren MYSQL Server laufen lassen solltest.

            mit PHP Löst du das problem so:

            srand ((double)microtime()*1000000);
            $randval = rand();

            http://de.php.net/manual/de/function.srand.php

            Zuerst den Zufallsgenerator initialisieren und dann gehts los
            Ich hab den Zufallsgenerator eingeleitet, aber das habe ich nich gepostet ...

            Kommentar

            Lädt...
            X