kostenloser Webspace werbefrei: lima-city


Wer baut mir den Script zusammen?

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    k*********2

    ...und zwar will ich eine zuf?llige Tabellenzeile auslesen.
    Dies soll folgenderma?en laufen
    1. Die Gesamtanzahl der Zeilen in der Tabelle sollen ermittelt werden (Soll was mit dem Befehl COUNT(*) zu tun haben)
    2. Die Zahl soll in die Variable $tabgesamtzeilen abgelegt werden.
    3. Aus der Zahl $tabgesamtzeilen soll eine Zuf?llige Zahl ohne Komma erzeugt werden.

    Den Rest des Scriptes habe ich schon fertig, nur diesen einen Schritt bekomme ich irgendwie nicht hin! Wer kann mir da helfen?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Also ich w?rds so machen:
    (...)
    $query = "SELECT * FROM tabelle";
    $result = mysql_query($query);
    $tabgesamtzeilen = mysql_num_rows($result);
    srand ((double)microtime()*1000000);
    $tabzeile = rand(1,$tabgesamtzeilen);

    (...)
  4. t**********e

    also kenny ich find du hast das ein bisschen schlecht erkl?rt. ich konnte nicht genau erfassen was du mir sagen willst:
    also nochma ganz von vorne:
    - erstma meinste ne DB richtig? gut
    - was willst du z?hlen? ich denk mir das du mit INSERT arbeitest oder? wenn du einen prim?ry key hast (z.b. id), kannste den einfach auslesen. das was sense gesacht hat erzeugt leider einen syntaxerror. so gehtz allerdings:

    $tabgesamtzeilen = mysql_num_rows(mysql_query("SELECT * FROM tabelle"));

    allerdings is mir immernoch nicht klar warum du aus dieser zahl eine zufallszahl machen willst... nimm doch time() oder sowas. das is schneller und im prinzip kommt das selbe bei raus. viel gl?ck :thumb:
    EDIT: ach mist. jetz check ich erst was du willst... die ausgelesene zahl soll die obere grenze sein. na dann ergibt das auch sinn ^^
  5. ...und zwar will ich eine zuf?llige Tabellenzeile auslesen.
    Dies soll folgenderma?en laufen
    1. Die Gesamtanzahl der Zeilen in der Tabelle sollen ermittelt werden (Soll was mit dem Befehl COUNT(*) zu tun haben)


    Du hast recht:
    $tabgesamtzeilen = mysql_fetch_array(mysql_query("SELECT COUNT(*) FROM $table"))[0];


    2. Die Zahl soll in die Variable $tabgesamtzeilen abgelegt werden.

    s.o.

    3. Aus der Zahl $tabgesamtzeilen soll eine Zuf?llige Zahl ohne Komma erzeugt werden.


    siehe rand
    srand ((double)microtime()*1000000); // n?tig f?r PHP < 4.2.0
    $zufall = rand(0, $tabgesamtzahl-1);



    Den Rest des Scriptes habe ich schon fertig, nur diesen einen Schritt bekomme ich irgendwie nicht hin! Wer kann mir da helfen?



    Ich habe aber eine noch sch?nere L?sung:
    // code snippet to get random row from a table
    $query = "SELECT * FROM $table";
    $result = mysql_query($query);
    $tabgesamtzeilen = mysql_num_rows($result);
    srand ((double)microtime()*1000000); // need for PHP < 4.2.0
    mysql_data_seek($result, rand(0, $tabgesamtzeilen -1));
    $daten = mysql_fetch_array($result);

  6. Warum so umst?ndlich? Die zuf?llige Zeile kann auch MySQL allein erzeugen:

    SELECT * FROM table SORT BY RAND() LIMIT 1

    (ich hoffe das stimmt alles so)

  7. Autor dieses Themas

    k*********2

    Dieses Thema wurde mit folgender Begr?ndung von kenny197902 geschlossen:

    uiuiui... direkt nen ?berfall mit Scripten :lol:

    Ich habe mir aus den Scripten was vern?nftiges zusammengebaut und es klappt.

    Danke!

    (Dies ist eine automatische Antwort durch das System).
  8. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!